Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LNL: all LLEXT-capable modules as "m" #9322

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion app/boards/intel_adsp_ace20_lnl.conf
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ CONFIG_MEMORY_WIN_2_SIZE=12288
CONFIG_LLEXT=y
CONFIG_LLEXT_STORAGE_WRITABLE=y
CONFIG_MODULES=y

CONFIG_LIBRARY_DEFAULT_MODULAR=y

# Temporary disabled options
CONFIG_TRACE=n
Expand Down
1 change: 1 addition & 0 deletions src/audio/eq_iir/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
config COMP_IIR
tristate "IIR component"
select COMP_BLOB
default m if LIBRARY_DEFAULT_MODULAR
default y
depends on COMP_MODULE_ADAPTER
select MATH_IIR_DF1
Expand Down
1 change: 1 addition & 0 deletions src/audio/mixin_mixout/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
config COMP_MIXIN_MIXOUT
tristate "Mixin_mixout component"
depends on IPC_MAJOR_4
default m if LIBRARY_DEFAULT_MODULAR
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Regardless of loadable modules method) I see no reason in switching such frequently used module if we will load it always anyway.
I checked "reference firmware" and they are not using loadable option for typical modules, only for rarely used or external modules so I think we could optimize our settings similarly

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@abonislawski Today we are quite monolithic once FW and library has been loaded into SRAM, this works today, but is not fully optimal if we want to be more aggressive for PnP and offload more to DSP. Long term we need to optimize our hot code more to run on SRAM and cold code on IMR/DRAM, being able to unload (delete from SRAM and keep in IMR/DRAM) is needed if we want to maximize offload capability with limited SRAM. i.e. we can unload to swap media decoder modules (or other modules), power off SRAM banks when not used, change processing coefficients (e.g. switching SRC rates), unload init code (only used once), etc.

default y
help
Select for Mixin_mixout component
Expand Down
8 changes: 8 additions & 0 deletions src/library_manager/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,12 @@ config LIBRARY_AUTH_SUPPORT
could be used if enabled.
If unsure say N.

config LIBRARY_DEFAULT_MODULAR
bool "Build LLEXT modules by default"
depends on LLEXT
help
Build code, that can be built as LLEXT modules as such. Usually such
code has tristate Kconfig entries, they will default to "m" if this
option is selected.

endmenu
1 change: 1 addition & 0 deletions src/samples/audio/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ menu "Audio component samples"

config SAMPLE_SMART_AMP
tristate "Smart amplifier test component"
default m if LIBRARY_DEFAULT_MODULAR
default y
help
Select for test smart amplifier component
Expand Down
Loading