-
Notifications
You must be signed in to change notification settings - Fork 350
topology2: add deep buffer speaker support to amp function topologies #10538
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
base: main
Are you sure you want to change the base?
Conversation
The existing code assumes that deep buffer jack is always there if deep buffer is enabled. But amp function topology only needs deep buffer speaker. Split deep buffer speaker from the deep-buffer.conf will make us be easier to add deep buffer speaker into the amp function topology. Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Include deep-buffer-spk.conf if DEEP_BUF_SPK is true and SDW_JACK is false. deep-buffer-spk.conf is only included when SDW_JACK is false because deep-buffer-spk.conf is already included in deep-buffer.conf when SDW_JACK is true. Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Add deep buffer speaker support to amp function topologies Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Adds deep-buffer speaker support to SDCA amp function topologies by enabling deep-buffer flags in production targets and refactoring the speaker deep-buffer pipeline into a reusable include.
Changes:
- Enable deep-buffer speaker flags for
sof-sdca-{1..4}amp-id2production target strings. - Conditionally include a new
deep-buffer-spk.conffrom SDW amp generic config when deep-buffer speaker mode is enabled. - Refactor
deep-buffer.confto include speaker pipeline from the newdeep-buffer-spk.conffile.
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-sdca-generic.cmake | Enables deep-buffer speaker mode parameters for SDCA amp target variants. |
| tools/topology/topology2/platform/intel/sdw-amp-generic.conf | Adds conditional include logic to pull in deep-buffer speaker config for SDW amp topologies. |
| tools/topology/topology2/platform/intel/deep-buffer.conf | Replaces embedded speaker deep-buffer pipeline with an include of deep-buffer-spk.conf. |
| tools/topology/topology2/platform/intel/deep-buffer-spk.conf | Introduces a standalone deep-buffer speaker pipeline + PCM definition for reuse. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| IncludeByKey.PASSTHROUGH { | ||
| "false" { | ||
| IncludeByKey.DEEPBUFFER_FW_DMA_MS { | ||
| "([1-9]|[1-9][0-9]|[1-9][0-9][0-9]|1000)" { |
Copilot
AI
Feb 11, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The regex is intended to restrict DEEPBUFFER_FW_DMA_MS to 1–1000, but without anchors some regex engines will treat it as a partial match (e.g., 10000 matching 1000). Use an anchored pattern (e.g., ^(1000|[1-9][0-9]{0,2})$) so only valid full-string values enable the include.
| "([1-9]|[1-9][0-9]|[1-9][0-9][0-9]|1000)" { | |
| "^(1000|[1-9][0-9]{0,2})$" { |
| #deep-buffer-spk.conf is included in deep-buffer.conf | ||
| #and deep-buffer.conf is included if SDW_JACK is true |
Copilot
AI
Feb 11, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These comments are confusing in this context because this branch explicitly checks SDW_JACK is "false" and includes deep-buffer-spk.conf directly. Consider rewriting the comment to explain the actual behavior here (e.g., “deep-buffer-spk.conf is normally pulled via deep-buffer.conf when SDW_JACK=true; for SDW amp topologies with SDW_JACK=false we include it directly here”).
| #deep-buffer-spk.conf is included in deep-buffer.conf | |
| #and deep-buffer.conf is included if SDW_JACK is true | |
| # deep-buffer-spk.conf is normally pulled in via deep-buffer.conf | |
| # when SDW_JACK=true; for SDW amp topologies with SDW_JACK=false | |
| # we include deep-buffer-spk.conf directly here. |
Add deep buffer speaker support to amp function topologies