Skip to content

Commit c036f90

Browse files
committed
rimage: config: include microWakeWord (MWW) module in platform manifests
Include audio/microwakeword/mww.toml when CONFIG_COMP_MWW is enabled across platform rimage manifest headers (tgl, tgl-h, mtl, lnl, ptl, wcl) so the MWW module UUID and entry are registered in base firmware images and loadable on target devices. Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
1 parent 5a72832 commit c036f90

8 files changed

Lines changed: 64 additions & 3 deletions

File tree

app/boards/intel_adsp_ace30_ptl.conf

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,21 @@ CONFIG_FORMAT_CONVERT_HIFI3=n
1515
CONFIG_COMP_GOOGLE_RTC_AUDIO_PROCESSING=m
1616
CONFIG_GOOGLE_RTC_AUDIO_PROCESSING_MOCK=y
1717
CONFIG_COMP_STFT_PROCESS=y
18+
CONFIG_SOF_STAGING=y
19+
CONFIG_COMP_KPB=y
20+
CONFIG_CPP=y
21+
CONFIG_STD_CPP17=y
22+
# tflmcly (stock keyword model) is not yet GNU-toolchain-clean on aphid
23+
# (undefined sof_ut_log/__assert_no_args/abs); not required by mww, which
24+
# builds its own independent TFLM lib copy. Disabled here to unblock the
25+
# aphid mww LLEXT build.
26+
CONFIG_COMP_TENSORFLOW=n
27+
CONFIG_COMP_MFCC=y
28+
CONFIG_COMP_MWW=m
29+
CONFIG_AMS=y
30+
CONFIG_STACK_SIZE_EDF=32768
31+
CONFIG_COMP_VOLUME=y
32+
CONFIG_COMP_GAIN=y
1833

1934
# SOF / infrastructure
2035
CONFIG_KCPS_DYNAMIC_CLOCK_CONTROL=n
@@ -29,7 +44,7 @@ CONFIG_COLD_STORE_EXECUTE_DRAM=y
2944
CONFIG_INTEL_MODULES=y
3045
CONFIG_LIBRARY_AUTH_SUPPORT=y
3146
CONFIG_LIBRARY_MANAGER=y
32-
CONFIG_LIBRARY_BASE_ADDRESS=0xa0688000
47+
CONFIG_LIBRARY_BASE_ADDRESS=0xa0700000
3348
CONFIG_LIBRARY_BUILD_LIB=y
3449
CONFIG_LIBRARY_DEFAULT_MODULAR=y
3550

@@ -38,11 +53,19 @@ CONFIG_SOF_LOG_LEVEL_INF=y
3853

3954
# Zephyr / OS features
4055
CONFIG_COUNTER=y
41-
CONFIG_HEAP_MEM_POOL_SIZE=8192
56+
CONFIG_HEAP_MEM_POOL_SIZE=32768
57+
CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=32768
4258
CONFIG_LLEXT=y
4359
CONFIG_LLEXT_STORAGE_WRITABLE=y
4460
CONFIG_LLEXT_EXPERIMENTAL=y
4561
CONFIG_LLEXT_EDK=n
62+
63+
# Default LLEXT metadata heap (CONFIG_LLEXT_HEAP_SIZE, 8 KB) is sized for
64+
# small extensions with few STB_GLOBAL-only exported symbols. mww.llext
65+
# links in TFLM, whose template-instantiated vtables/typeinfo are emitted
66+
# STB_WEAK -- now included in ext->sym_tab after the llext_load.c fix -- and
67+
# blows past 8 KB (Failed to allocate extension symbol table, ret -12).
68+
CONFIG_LLEXT_HEAP_SIZE=256
4669
CONFIG_MODULES=y
4770

4871
# Zephyr / device drivers
@@ -78,3 +101,8 @@ CONFIG_SOF_USERSPACE_PROXY=y
78101
CONFIG_MAX_THREAD_BYTES=3
79102

80103
CONFIG_MAX_DOMAIN_PARTITIONS=32
104+
105+
# Debug: get faulting virtual address for openmodules-load panic
106+
# CONFIG_XTENSA_ADSP_FATAL_BREADCRUMB_DATA_VADDR=y
107+
CONFIG_SYS_HEAP_RUNTIME_STATS=y
108+
CONFIG_SOF_ZEPHYR_HEAP_SIZE=0x80000

app/boards/intel_adsp_cavs25.conf

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,14 @@ CONFIG_COMP_MFCC=y
1212
CONFIG_COMP_MULTIBAND_DRC=y
1313
CONFIG_COMP_VOLUME_WINDOWS_FADE=y
1414
CONFIG_FORMAT_CONVERT_HIFI3=n
15+
CONFIG_SOF_STAGING=y
16+
CONFIG_CPP=y
17+
CONFIG_STD_CPP17=y
18+
# cavs2.5 has no LLEXT/module-manager support (see CONFIG_LIBRARY_MANAGER=n
19+
# below), so build mww in statically rather than as an LLEXT module.
20+
CONFIG_COMP_MWW=y
21+
CONFIG_COMP_MWW_DEBUG_TRACE=y
22+
CONFIG_STACK_SIZE_EDF=32768
1523
CONFIG_PCM_CONVERTER_FORMAT_S16LE=y
1624
CONFIG_PCM_CONVERTER_FORMAT_S24LE=y
1725
CONFIG_PCM_CONVERTER_FORMAT_S32LE=y
@@ -35,7 +43,8 @@ CONFIG_SOF_LOG_LEVEL_INF=y
3543
CONFIG_DEBUG_COREDUMP=y
3644
CONFIG_DEBUG_COREDUMP_BACKEND_INTEL_ADSP_MEM_WINDOW=y
3745
CONFIG_DEBUG_COREDUMP_MEMORY_DUMP_MIN=y
38-
CONFIG_HEAP_MEM_POOL_SIZE=8192
46+
CONFIG_HEAP_MEM_POOL_SIZE=32768
47+
CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=32768
3948

4049
# Zephyr / device drivers
4150
CONFIG_DAI_INIT_PRIORITY=70

tools/rimage/config/lnl.toml.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,5 +166,9 @@
166166
#include <audio/phase_vocoder/phase_vocoder.toml>
167167
#endif
168168

169+
#if defined(CONFIG_COMP_MWW) || defined(LLEXT_FORCE_ALL_MODULAR)
170+
#include <audio/microwakeword/mww.toml>
171+
#endif
172+
169173
[module]
170174
count = __COUNTER__

tools/rimage/config/mtl.toml.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,10 @@
162162
#include <audio/template/template.toml>
163163
#endif
164164

165+
#if defined(CONFIG_COMP_MWW) || defined(LLEXT_FORCE_ALL_MODULAR)
166+
#include <audio/microwakeword/mww.toml>
167+
#endif
168+
165169
#if defined(CONFIG_COMP_TENSORFLOW) || defined(LLEXT_FORCE_ALL_MODULAR)
166170
#include <audio/tensorflow/tflmcly.toml>
167171
#endif

tools/rimage/config/ptl.toml.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,5 +178,9 @@ index = __COUNTER__
178178
#include <audio/phase_vocoder/phase_vocoder.toml>
179179
#endif
180180

181+
182+
#if defined(CONFIG_COMP_MWW) || defined(LLEXT_FORCE_ALL_MODULAR)
183+
#include <audio/microwakeword/mww.toml>
184+
#endif
181185
[module]
182186
count = __COUNTER__

tools/rimage/config/tgl-h.toml.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,10 @@
120120
#include <audio/template/template.toml>
121121
#endif
122122

123+
#if defined(CONFIG_COMP_MWW) || defined(LLEXT_FORCE_ALL_MODULAR)
124+
#include <audio/microwakeword/mww.toml>
125+
#endif
126+
123127
#if defined(CONFIG_COMP_LEVEL_MULTIPLIER) || defined(LLEXT_FORCE_ALL_MODULAR)
124128
#include <audio/level_multiplier/level_multiplier.toml>
125129
#endif

tools/rimage/config/tgl.toml.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,10 @@
120120
#include <audio/template/template.toml>
121121
#endif
122122

123+
#if defined(CONFIG_COMP_MWW) || defined(LLEXT_FORCE_ALL_MODULAR)
124+
#include <audio/microwakeword/mww.toml>
125+
#endif
126+
123127
#if defined(CONFIG_COMP_LEVEL_MULTIPLIER) || defined(LLEXT_FORCE_ALL_MODULAR)
124128
#include <audio/level_multiplier/level_multiplier.toml>
125129
#endif

tools/rimage/config/wcl.toml.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,5 +162,9 @@ index = __COUNTER__
162162
#include <audio/phase_vocoder/phase_vocoder.toml>
163163
#endif
164164

165+
#if defined(CONFIG_COMP_MWW) || defined(LLEXT_FORCE_ALL_MODULAR)
166+
#include <audio/microwakeword/mww.toml>
167+
#endif
168+
165169
[module]
166170
count = __COUNTER__

0 commit comments

Comments
 (0)