topology2: enable WoV function targets and graph - #11114
Conversation
There was a problem hiding this comment.
Pull request overview
Enables Wake-on-Voice (WoV) building blocks in the topology2 “cavs-sdw” function topology and adds new Panther Lake (ace3) topology2 production targets that turn on WoV split-capture for specific RT721/RT722/WCL-DMIC configurations. It also introduces a rimage TOML module entry for Google hotword detection and wires it into the WCL rimage config.
Changes:
- Add new topology2 production targets in
tplg-targets-ace3.cmaketo generate WoV-enabled split-capture topologies for RT721, RT722, and WCL DMIC ID5. - Extend
cavs-sdw.confincludes to bring in KPB/WoV classes and WoV/KPB pipeline definitions needed by the new targets. - Add
google_hotword_detect.tomland include it fromwcl.toml.hwhen the component is enabled.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| tools/topology/topology2/production/tplg-targets-ace3.cmake | Adds WoV-enabled cavs-sdw topology2 build targets for RT721/RT722/WCL DMIC ID5. |
| tools/topology/topology2/cavs-sdw.conf | Includes KPB/WoV and related pipeline definitions so cavs-sdw function topologies can instantiate WoV graphs. |
| tools/rimage/config/wcl.toml.h | Wires the new Google hotword module TOML into the WCL rimage module list. |
| src/audio/google/google_hotword_detect.toml | Introduces rimage module entry metadata for Google hotword detection. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| #if defined(CONFIG_COMP_GOOGLE_HOTWORD_DETECT) | ||
| #include <audio/google/google_hotword_detect.toml> | ||
| #endif |
886306f to
43d4d1c
Compare
Let me clear the +1 until the func topology issue is clarified.
43d4d1c to
b49ca6d
Compare
Add a standalone feature manifest (dmic-wov-feature.conf) for WoV/KPB pipeline loaded on top of the function topology via feature_topologies. Add feature topology targets for RT721, RT722 and WCL DMIC ID5 in tplg-targets-ace3.cmake. Signed-off-by: Naveen Manohar <naveen.m@intel.com>
Add Google hotword module manifest for WCL and include it when CONFIG_COMP_GOOGLE_HOTWORD_DETECT is enabled or all modular components are forced. Signed-off-by: Naveen Manohar <naveen.m@intel.com>
Patch moves WoV DMIC-to-KPB route to dmic-wov.conf enabling to use DMIC_WOV_DAI_PIPELINE_SRC instead of the generated dai-copier.DMIC.$index.1 name. Signed-off-by: Naveen Manohar <naveen.m@intel.com>
b49ca6d to
f66ad03
Compare
| source $DMIC_WOV_DAI_PIPELINE_SRC | ||
| sink $DMIC_WOV_DAI_PIPELINE_KPB |
There was a problem hiding this comment.
so I have HW that has not PCH DMIC, but SSP - could we drop the DMIC part in the name or is it already in use ?
There was a problem hiding this comment.
Thanks for the review @lgirdwood
DMIC_WOV_DAI_PIPELINE_SRC and DMIC_WOV_DAI_PIPELINE_KPB are already defined in platform/intel/dmic-default.conf on origin/main (lines 29–30) and used in dmic-wov.conf.
https://github.com/thesofproject/sof/blob/main/tools/topology/topology2/platform/intel/dmic-wov.conf#L114
The new route block in line 114–115 follows that existing naming.
There was a problem hiding this comment.
Definitions are at dmic-default.conf#L29 in origin/main
Implement WoV as feature topology loaded via feature_topologies
module parameter instead of a standalone function topology variant.
Add dmic-wov-feature.conf manifest and build targets for RT721, RT722
and WCL DMIC ID5. Enable WoV at runtime with:
'options snd_sof feature_topologies=sof---wov.tplg'
Verified on top of PR:https://github.com/thesofproject/sof/pull/11022/commits
V3: For now Posted removing wov-kpb-be.conf and wov-arbiter.conf