Skip to content

Conversation

@tmleman
Copy link
Contributor

@tmleman tmleman commented Dec 17, 2024

This pull request updates the configuration for the Google RTC Audio Processing component in the MTL firmware. The component's configuration has been changed from being statically included (y) to a loadable module (m). This adjustment enhances the flexibility and modularity of the firmware, allowing dynamic loading and unloading of the component as needed. It aligns with the project's goals of improving resource management and adaptability in various deployment environments.

Changes:

  • Updated CONFIG_COMP_GOOGLE_RTC_AUDIO_PROCESSING from y to m in intel_adsp_ace15_mtpm.conf.

Impact:

  • Enables dynamic management of the Google RTC Audio Processing component.
  • Facilitates better resource allocation and customization in runtime scenarios.

Please review the changes and provide feedback or approval for merging.

Copy link
Member

@lgirdwood lgirdwood left a comment

Choose a reason for hiding this comment

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

@lyakh could we make all the mocks into modules and then load then into CI via UUID ?

@lyakh
Copy link
Collaborator

lyakh commented Dec 19, 2024

@lyakh could we make all the mocks into modules and then load then into CI via UUID ?

@lgirdwood sure, but we'd need topologies that include those stub components to load and test them

@marcinszkudlinski
Copy link
Contributor

marcinszkudlinski commented Dec 19, 2024

@tmleman please compile AEC as a LLEXT loadable module, we don't need it in production.
@lyakh @lgirdwood MOCK is an integral part of AEC in case of testing and will be loaded together with AEC

EDIT: it may also require changes in testing, a module has to be loaded

@lyakh
Copy link
Collaborator

lyakh commented Dec 20, 2024

@tmleman please compile AEC as a LLEXT loadable module, we don't need it in production. @lyakh @lgirdwood MOCK is an integral part of AEC in case of testing and will be loaded together with AEC

EDIT: it may also require changes in testing, a module has to be loaded

@marcinszkudlinski so it is run-time tested in QB?

@marcinszkudlinski
Copy link
Contributor

@tmleman please compile AEC as a LLEXT loadable module, we don't need it in production. @lyakh @lgirdwood MOCK is an integral part of AEC in case of testing and will be loaded together with AEC
EDIT: it may also require changes in testing, a module has to be loaded

@marcinszkudlinski so it is run-time tested in QB?

test for AEC + Mock is included in internal CI tests

@tmleman tmleman force-pushed the topic/upstream/pr/intel/adsp/ace30/google_rtc branch from 9965610 to 4f70175 Compare January 7, 2025 11:01
@tmleman tmleman marked this pull request as ready for review January 7, 2025 15:25
Copy link
Collaborator

@lyakh lyakh left a comment

Choose a reason for hiding this comment

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

I'd swap the commits - first convert to "m" where already enabled, and then add directly as "m" where not enabled yet, but the result is the same

@lgirdwood
Copy link
Member

@tmleman can you check Internal CI thanks !

@tmleman
Copy link
Contributor Author

tmleman commented Jan 9, 2025

@lgirdwood PR must wait until the required changes in the tests are implemented. Validation is working on it.

@tmleman tmleman force-pushed the topic/upstream/pr/intel/adsp/ace30/google_rtc branch 2 times, most recently from 727d836 to 8a77adf Compare January 22, 2025 12:03
@lgirdwood
Copy link
Member

@lgirdwood PR must wait until the required changes in the tests are implemented. Validation is working on it

@tmleman I assume we have a valid test implemented now and its being run in CI ?

@softwarecki
Copy link
Collaborator

softwarecki commented Jan 30, 2025

This module had an incorrect byte order in uuid, this was fixed by #9793. For me its good to merge.

@kv2019i
Copy link
Collaborator

kv2019i commented Feb 3, 2025

@tmleman This has one quickbuild failing. Otherwise looks good for merge.

@lgirdwood
Copy link
Member

@tmleman This has one quickbuild failing. Otherwise looks good for merge.

@tmleman ping

@tmleman tmleman force-pushed the topic/upstream/pr/intel/adsp/ace30/google_rtc branch from 24dbb6b to 8048e70 Compare February 17, 2025 08:57
@tmleman
Copy link
Contributor Author

tmleman commented Feb 17, 2025

@lgirdwood Previously, MTL CI failed in the RTC test due to an incorrect UUID. The problem was fixed by @softwarecki recent changes. Currently, the same test fails during module initialization:

[    0.692421] <inf> ipc: ipc_cmd: rx	: 0x40005000|0x12010026
[    0.692775] <wrn> ipc: ipc4_get_drv: get_drv(): the provided UUID (b780a0a6-269f-466f-b477-23dfa05af758) can't be found!
[    0.695606] <wrn> llext: llext_link_plt: PLT: cannot find idx 53 name ipc4_update_source_format
[    0.697148] <wrn> llext: llext_link_plt: PLT: cannot find idx 39 name comp_is_current_data_blob_valid
[    0.701273] <wrn> llext: llext_link_plt: PLT: cannot find idx 53 name ipc4_update_source_format
[    0.710821] <wrn> llext: llext_link_plt: PLT: cannot find idx 39 name comp_is_current_data_blob_valid
[    0.719726] <inf> llext: llext_load: Loaded extension RTC_AEC
[    0.721906] <err> lib_manager: lib_manager_module_create: lib_manager_allocate_module() failed!
[    0.721948] <err> ipc: ipc4_init_module_instance: error: failed to init module 5000 : 0
[    0.721991] <err> ipc: ipc_cmd: ipc4: MODULE_MSG failed with err 104
[    0.956415] <inf> ipc: ipc_cmd: rx	: 0x12010000|0x0

@lgirdwood
Copy link
Member

@lgirdwood Previously, MTL CI failed in the RTC test due to an incorrect UUID. The problem was fixed by @softwarecki recent changes. Currently, the same test fails during module initialization:

[    0.692421] <inf> ipc: ipc_cmd: rx	: 0x40005000|0x12010026
[    0.692775] <wrn> ipc: ipc4_get_drv: get_drv(): the provided UUID (b780a0a6-269f-466f-b477-23dfa05af758) can't be found!
[    0.695606] <wrn> llext: llext_link_plt: PLT: cannot find idx 53 name ipc4_update_source_format
[    0.697148] <wrn> llext: llext_link_plt: PLT: cannot find idx 39 name comp_is_current_data_blob_valid
[    0.701273] <wrn> llext: llext_link_plt: PLT: cannot find idx 53 name ipc4_update_source_format
[    0.710821] <wrn> llext: llext_link_plt: PLT: cannot find idx 39 name comp_is_current_data_blob_valid
[    0.719726] <inf> llext: llext_load: Loaded extension RTC_AEC
[    0.721906] <err> lib_manager: lib_manager_module_create: lib_manager_allocate_module() failed!
[    0.721948] <err> ipc: ipc4_init_module_instance: error: failed to init module 5000 : 0
[    0.721991] <err> ipc: ipc_cmd: ipc4: MODULE_MSG failed with err 104
[    0.956415] <inf> ipc: ipc_cmd: rx	: 0x12010000|0x0

@lyakh do we need a west update ?

lyakh
lyakh previously requested changes Feb 18, 2025
@lyakh
Copy link
Collaborator

lyakh commented Feb 18, 2025

@lgirdwood Previously, MTL CI failed in the RTC test due to an incorrect UUID. The problem was fixed by @softwarecki recent changes. Currently, the same test fails during module initialization:

[    0.692421] <inf> ipc: ipc_cmd: rx	: 0x40005000|0x12010026
[    0.692775] <wrn> ipc: ipc4_get_drv: get_drv(): the provided UUID (b780a0a6-269f-466f-b477-23dfa05af758) can't be found!
[    0.695606] <wrn> llext: llext_link_plt: PLT: cannot find idx 53 name ipc4_update_source_format
[    0.697148] <wrn> llext: llext_link_plt: PLT: cannot find idx 39 name comp_is_current_data_blob_valid
[    0.701273] <wrn> llext: llext_link_plt: PLT: cannot find idx 53 name ipc4_update_source_format
[    0.710821] <wrn> llext: llext_link_plt: PLT: cannot find idx 39 name comp_is_current_data_blob_valid
[    0.719726] <inf> llext: llext_load: Loaded extension RTC_AEC
[    0.721906] <err> lib_manager: lib_manager_module_create: lib_manager_allocate_module() failed!
[    0.721948] <err> ipc: ipc4_init_module_instance: error: failed to init module 5000 : 0
[    0.721991] <err> ipc: ipc_cmd: ipc4: MODULE_MSG failed with err 104
[    0.956415] <inf> ipc: ipc_cmd: rx	: 0x12010000|0x0

@lyakh do we need a west update ?

@lgirdwood I suppose this is an excerpt from an Internal CI log? I don't think there's anything relevant in recent Zephyr changes, that would fix this, and we don't have a topology with this module, so I cannot test, sorry. But since it's a proper reproducible error with a full log, it should be rather easy to debug

@tmleman tmleman force-pushed the topic/upstream/pr/intel/adsp/ace30/google_rtc branch from 8048e70 to 77b1587 Compare February 19, 2025 11:39
@lyakh lyakh dismissed their stale review February 20, 2025 08:40

offending hunk removed

@lgirdwood
Copy link
Member

@wszypelt good to merge ?

@wszypelt
Copy link

wszypelt commented Mar 14, 2025

@lgirdwood Unfortunately, we still have an issue with RTC_AEC (exception)

@lgirdwood
Copy link
Member

@lgirdwood Unfortunately, we still have an issue with RTC_AEC (exception)

@tmleman @wszypelt is this with the stub or with the real module ? Can we share here to help debug ? Thanks

@tmleman
Copy link
Contributor Author

tmleman commented Mar 18, 2025

is this with the stub or with the real module ? Can we share here to help debug ? Thanks

@lgirdwood @lyakh In the tests, we use a mock.
The problem occurring in CI has already been described earlier in this thread. The exception that appears disappears when I rebase this PR:

[    1.681920] <inf> ipc: ipc_cmd: rx	: 0x40008000|0x12010026
[    1.682308] <wrn> ipc: ipc4_get_drv: get_drv(): the provided UUID (b780a0a6-269f-466f-b477-23dfa05af758) can't be found!
[    1.686383] <wrn> llext: llext_link_plt: PLT: cannot find idx 22 name comp
[    1.700713] <wrn> llext: llext_link_plt: PLT: cannot find idx 22 name comp
[    1.705181] <wrn> llext: llext_link_plt: PLT: cannot find idx 22 name comp
[    1.714426] <wrn> llext: llext_link_plt: PLT: cannot find idx 37 name module_ada
[    1.716853] <inf> llext: llext_load: Loaded extension RTC_AEC
[    1.721130] <inf> google_rtc_audio_processing_init: comp:1 0x8000 google_rtc_audio_processing_init()
[    1.721228] <err> os: print_fatal_exception:  ** FATAL EXCEPTION
[    1.721283] <err> os: print_fatal_exception:  ** CPU 2 EXCCAUSE 12 (instr PIF data error)
[    1.721356] <err> os: print_fatal_exception:  **  PC (nil) VADDR (nil)
[    1.721385] <err> os: print_fatal_exception:  **  PS 0x60d20
[    1.721413] <err> os: print_fatal_exception:  **    (INTLEVEL:0 EXCM: 0 UM:1 RING:0 WOE:1 OWB:13 CALLINC:2)
[    1.721445] <err> os: xtensa_dump_stack:  **  A0 0xa068b220  SP 0xa00c74e0  A2 (nil)  A3 0x2
[    1.721473] <err> os: xtensa_dump_stack:  **  A4 0x2  A5 0xbb80  A6 0x2  A7 (nil)
[    1.721501] <err> os: xtensa_dump_stack:  **  A8 0xa068c0d6  A9 0xa006fbf0 A10 (nil) A11 0x1
[    1.721530] <err> os: xtensa_dump_stack:  ** A12 0x14 A13 0x40 A14 (nil) A15 (nil)
[    1.721558] <err> os: xtensa_dump_stack:  ** LBEG 0xa00854d8 LEND 0xa00854de LCOUNT (nil)
[    1.721585] <err> os: xtensa_dump_stack:  ** SAR 0x12
[    1.721611] <err> os: xtensa_dump_stack:  **  THREADPTR 0x34000
[    0.392040] <inf> ipc: ipc_cmd: rx	: 0x13000004|0x1
[    0.392473] <inf> copier: copier_prepare: comp:1 0x30005 copier_prepare()
[    0.392615] <inf> copier: copier_prepare: comp:1 0x20005 copier_prepare()
[    0.393160] <inf> copier: copier_prepare: comp:0 0x5 copier_prepare()
[    0.393246] <inf> google_rtc_audio_processing_prepare: comp:0 0x8000 google_rtc_audio_processing_prepare()
[    0.393291] <wrn> google_rtc_audio_processing_prepare: comp:0 0x8000 Too many mic channels: 4, truncating to 2
[    0.393443] <inf> module_adapter: module_adapter_prepare: comp:0 0x8000 DP Module period set to 10000
[    0.393665] <inf> copier: copier_prepare: comp:0 0x10005 copier_prepare()
[    0.393758] <inf> pipe: pipeline_trigger: pipe:1 0x0 pipe trigger cmd 7
[    0.393895] <inf> ll_schedule: zephyr_ll_task_schedule_common: task add 0xa00db6c0 0xa00ab394U priority 0 flags 0x0
[    0.394031] <inf> ll_schedule: zephyr_domain_register: zephyr_domain_register domain->type 1 domain->clk 0 domain->ticks_per_ms 38400 period 1000
[    0.394395] <inf> copier: copier_comp_trigger: comp:1 0x30005 No dai copier found, start/end offset is not calculated
[    0.394685] <inf> copier: copier_comp_trigger: comp:1 0x30005 No dai copier found, start/end offset is not calculated
[    0.394940] <inf> pipe: pipeline_trigger: pipe:0 0x0 pipe trigger cmd 7
[    0.395001] <inf> clock: clock_set_freq: clock 0 set freq 393216000Hz freq_idx 1 old 0
[    0.395006] <inf> clock: clock_set_freq: clock 1 set freq 393216000Hz freq_idx 1 old 0
[    0.395011] <inf> clock: clock_set_freq: clock 2 set freq 393216000Hz freq_idx 1 old 0
[    0.395021] <inf> ll_schedule: zephyr_ll_task_schedule_common: task add 0xa00dbd40 0xa00ab394U priority 0 flags 0x0
[    0.395066] <inf> copier: copier_comp_trigger: comp:0 0x5 No dai copier found, start/end offset is not calculated
[    0.395086] <inf> copier: copier_comp_trigger: comp:0 0x5 No dai copier found, start/end offset is not calculated
[    0.395100] <inf> ll_schedule: zephyr_ll_task_schedule_common: task add 0xa00d38c8 0xa00aaf44U priority 0 flags 0x0
[    0.395136] <inf> host_comp: host_get_copy_bytes_normal: comp:0 0x10005 no bytes to copy, available samples: 0, free_samples: 768
[    0.396061] <inf> host_comp: host_get_copy_bytes_normal: comp:1 0x30005 no bytes to copy, available samples: 384, free_samples: 0
[    0.396070] <err> os: print_fatal_exception:  ** FATAL EXCEPTION
[    0.396076] <err> os: print_fatal_exception:  ** CPU 0 EXCCAUSE 12 (instr PIF data error)
[    0.396081] <err> os: print_fatal_exception:  **  PC (nil) VADDR (nil)
[    0.396085] <err> os: print_fatal_exception:  **  PS 0x60720
[    0.396088] <err> os: print_fatal_exception:  **    (INTLEVEL:0 EXCM: 0 UM:1 RING:0 WOE:1 OWB:7 CALLINC:2)
[    0.396091] <err> os: xtensa_dump_stack:  **  A0 0xa0078faf  SP 0xa00c04c0  A2 (nil)  A3 0xa00dba00
[    0.396096] <err> os: xtensa_dump_stack:  **  A4 (nil)  A5 0xa00dba80  A6 0x1  A7 0xa00daf00
[    0.396100] <err> os: xtensa_dump_stack:  **  A8 0xa007ceba  A9 0x2 A10 0xa00db244 A11 (nil)
[    0.396103] <err> os: xtensa_dump_stack:  ** A12 0xa00db384 A13 (nil) A14 0xc0 A15 0x76543210
[    0.396106] <err> os: xtensa_dump_stack:  ** LBEG 0xa0036cd5 LEND 0xa0036ce4 LCOUNT 0xa0062b5f
[    0.396110] <err> os: xtensa_dump_stack:  ** SAR 0x2
[    0.396115] <err> os: xtensa_dump_stack:  **  THREADPTR 0x5

@tmleman tmleman added the DNM Do Not Merge tag label Mar 18, 2025
@lgirdwood
Copy link
Member

@tmleman this looks like an assert in user mode ??

  PC (nil) VADDR (nil)

OR is our user mode stack big enough for each of these modules ?

@lgirdwood
Copy link
Member

@tmleman can you rebase and push - there has been a llext fixed merged that may fix here.

@lyakh
Copy link
Collaborator

lyakh commented Apr 3, 2025

@lgirdwood @lyakh In the tests, we use a mock.
The problem occurring in CI has already been described earlier in this thread. The exception that appears disappears when I rebase this PR:

@tmleman sorry, don't understand: is the problem still there or is it gone with a rebase? If it's still there, I understand, that you reproduce it manually ATM, since PR CI results don't have that failure. Can we add that test to the PR QB test?

@tmleman tmleman force-pushed the topic/upstream/pr/intel/adsp/ace30/google_rtc branch 2 times, most recently from 0707dfc to db8da91 Compare April 9, 2025 09:46
@tmleman
Copy link
Contributor Author

tmleman commented Apr 9, 2025

@lgirdwood @lyakh I performed a rebase, twice. The first time, the FW passed through CI but not seeing fixes that could affect the problem I'm experiencing with this PR, I decided to hold off on removing the DNM label. After the second rebase, the problem appeared again:

[    0.901898] <inf> copier: copier_prepare: comp:3 0x50005 copier_prepare()
[    0.902938] <inf> copier: copier_prepare: comp:1 0x30005 copier_prepare()
[    0.903273] <inf> google_rtc_audio_processing_prepare: comp:1 0x5000 google_rtc_audio_processing_prepare()
[    0.903326] <wrn> google_rtc_audio_processing_prepare: comp:1 0x5000 Too many mic channels: 4, truncating to 2
[    0.903483] <err> os: print_fatal_exception:  ** FATAL EXCEPTION
[    0.903538] <err> os: print_fatal_exception:  ** CPU 2 EXCCAUSE 12 (instr PIF data error)
[    0.903568] <err> os: print_fatal_exception:  **  PC (nil) VADDR (nil)
[    0.903593] <err> os: print_fatal_exception:  **  PS 0x60d20
[    0.903621] <err> os: print_fatal_exception:  **    (INTLEVEL:0 EXCM: 0 UM:1 RING:0 WOE:1 OWB:13 CALLINC:2)
[    0.903653] <err> os: xtensa_dump_stack:  **  A0 0xa0688770  SP 0xa00bdbb0  A2 0x400d8200  A3 0x2
[    0.903680] <err> os: xtensa_dump_stack:  **  A4 0x400d8140  A5 0x2  A6 0xa00d83c0  A7 0xa00bdbb0
[    0.903706] <err> os: xtensa_dump_stack:  **  A8 0xa0688cf2  A9 0xa00bdbe0 A10 0xa00d8480 A11 0x1fffffff
[    0.903733] <err> os: xtensa_dump_stack:  ** A12 0x1 A13 0x40 A14 (nil) A15 0x400cd400
[    0.903760] <err> os: xtensa_dump_stack:  ** LBEG 0xa003a2da LEND 0xa003a2e7 LCOUNT 0xa00800bc
[    0.903786] <err> os: xtensa_dump_stack:  ** SAR 0x14
[    0.903813] <err> os: xtensa_dump_stack:  **  THREADPTR 0x400cd408


Backtrace:0xfffffffd:0xa00bdbb0  |<-CORRUPTED

[    0.904111] <err> os: z_fatal_error: >>> ZEPHYR FATAL ERROR 0: CPU exception on CPU 2
[    0.904160] <err> os: z_fatal_error: Current thread: 0x400cd080 (unknown)
[    0.913080] <err> coredump: coredump_mem_window_backend_start: #CD:BEGIN#
[    0.913315] <err> pipe: pipeline_prepare: pipe:1 0x0 pipeline_prepare(): ret = -11, dev->comp.id = 0x30005
[    0.914028] <err> coredump: coredump_mem_window_backend_end: #CD:END#
[    0.914396] <err> ipc: ipc4_pcm_params: ipc: pipe 1 comp 0 prepare failed -11
[    0.914673] <err> zephyr: k_sys_fatal_error_handler: Halting system
[    0.915315] <wrn> p4wq: k_p4wq_submit: Out of worker threads, priority guarantee violated
[    0.926428] <err> pipe: pipeline_reset: pipe:1 0x0 pipeline_reset(): ret = -11, host->comp.id = 0x30005
[    0.927103] <err> ipc: ipc4_pcm_params: ipc: pipe 1 comp 0 reset failed -11
[    0.927598] <err> ipc: ipc_cmd: ipc4: FW_GEN_MSG failed with err 7

is the problem still there or is it gone with a rebase? If it's still there, I understand, that you reproduce it manually ATM, since PR CI results don't have that failure. Can we add that test to the PR QB test?

The test on RTC is in CI and the above log comes from it. The exception thrown by the DSP I'm debugging appears and disappears when I perform a rebase.

@lgirdwood
Copy link
Member

The test on RTC is in CI and the above log comes from it. The exception thrown by the DSP I'm debugging appears and disappears when I perform a rebase.

Interesting, does a pristine build fix the issue ? or even delete the build directory and build from scratch ?

@tmleman tmleman force-pushed the topic/upstream/pr/intel/adsp/ace30/google_rtc branch from db8da91 to 84851b5 Compare April 11, 2025 12:49
@tmleman tmleman force-pushed the topic/upstream/pr/intel/adsp/ace30/google_rtc branch from 84851b5 to eaf6dbd Compare July 21, 2025 11:17
# This mock is part of official sof-bin releases because the CI that
# tests it can't use extra CONFIGs. See #9410, #8722 and #9386
CONFIG_COMP_GOOGLE_RTC_AUDIO_PROCESSING=y
CONFIG_COMP_GOOGLE_RTC_AUDIO_PROCESSING=m
Copy link
Collaborator

Choose a reason for hiding this comment

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

just to make sure this is intended - we currently don't package loadable modules on MTL, so this will exclude this module from the binary distribution

Copy link
Member

Choose a reason for hiding this comment

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

This is fine as this module only used for Chrome configs.

# This mock is part of official sof-bin releases because the CI that
# tests it can't use extra CONFIGs. See #9410, #8722 and #9386
CONFIG_COMP_GOOGLE_RTC_AUDIO_PROCESSING=y
CONFIG_COMP_GOOGLE_RTC_AUDIO_PROCESSING=m
Copy link
Collaborator

Choose a reason for hiding this comment

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

on LNL we so far only enable DTC as a loadable modules, so this may remove this module from the binary distribution

Copy link
Member

Choose a reason for hiding this comment

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

ditto re chrome configs.

@lgirdwood
Copy link
Member

looks like the CI stalled or DUTs were in use. rerun.

@lgirdwood
Copy link
Member

SOFCI TEST

@tmleman tmleman force-pushed the topic/upstream/pr/intel/adsp/ace30/google_rtc branch from eaf6dbd to 1d83b07 Compare July 22, 2025 12:14
@tmleman
Copy link
Contributor Author

tmleman commented Jul 22, 2025

Update: enabled RTC_AEC on WCL.

@tmleman tmleman force-pushed the topic/upstream/pr/intel/adsp/ace30/google_rtc branch from 1d83b07 to a07f205 Compare July 23, 2025 08:48
tmleman added 2 commits July 24, 2025 11:56
This patch exports the symbols `comp_is_current_data_blob_valid` and
`ipc4_update_source_format` to resolve issues encountered when the
Google RTC module was converted into an LLEXT module. The lack of
exported symbols was causing warnings and subsequent firmware exceptions
when these functions were called from within the module.

Changes include:
- Adding `EXPORT_SYMBOL` for `comp_is_current_data_blob_valid` in
  src/audio/data_blob.c.
- Adding `EXPORT_SYMBOL` for `ipc4_update_source_format` in
  src/ipc/ipc4/helper.c.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
This patch modifies the configuration of the Google RTC Audio Processing
component from being built-in (`y`) to a loadable module (`m`). This
change allows for more flexibility in managing the component, as it can
now be loaded or unloaded dynamically. The adjustment aligns with the
need for modularity and adaptability in the SOF firmware, especially in
environments where resource management and configuration customization
are critical.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
@tmleman tmleman force-pushed the topic/upstream/pr/intel/adsp/ace30/google_rtc branch from a07f205 to 5c83b22 Compare July 24, 2025 10:08
@tmleman
Copy link
Contributor Author

tmleman commented Jul 24, 2025

Dropping the enabling of the module on ACE20 and ACE30 platforms. Debugging everything at once slows down work. Switching RTC AEC on MTL to a loadable module does not lead to any visible regression. In the next step, the module will be enabled for PTL in a separate PR.

@tmleman tmleman removed the DNM Do Not Merge tag label Jul 24, 2025
@tmleman tmleman changed the title config: enable RTC_AEC module for LNL and PTL platforms config: mtpm: Change Google RTC Audio Processing to Module Configuration Jul 24, 2025
@kv2019i kv2019i merged commit 51c0270 into thesofproject:main Jul 28, 2025
40 of 45 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants