Skip to content

Merge DTS support for PTL#10678

Open
joechengxperi wants to merge 4 commits intothesofproject:mainfrom
joechengxperi:main-dts-ptl-merge
Open

Merge DTS support for PTL#10678
joechengxperi wants to merge 4 commits intothesofproject:mainfrom
joechengxperi:main-dts-ptl-merge

Conversation

@joechengxperi
Copy link
Copy Markdown
Contributor

No description provided.

This patch adds DTS_CODEC for Intel PTL platform builds.

Signed-off-by: Joe Cheng <[email protected]>
Update CMakefile and toml to support building DTS to llext module

Signed-off-by: Joe Cheng <[email protected]>
Increase the max parameter size to 2048

Signed-off-by: Joe Cheng <[email protected]>
Copy link
Copy Markdown
Contributor

Copilot AI left a 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 DTS-based pipeline configurations for the PTL SoundWire (SDW) topology, wiring DTS processing into speaker and jack playback paths and enabling DTS module packaging/build support.

Changes:

  • Add new DTS-specific SDW amp/jack topology configuration files and select them via SDW_*_PIPELINE_SRC=dts.
  • Introduce a new reusable mixout-gain-eqiir-dts-alh-dai-copier-playback pipeline class and register it in cavs-sdw.conf.
  • Enable DTS module inclusion for PTL rimage config and extend DTS llext build rules.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
tools/topology/topology2/production/tplg-targets-ace3.cmake Adds a PTL RT721+RT1320 DTS topology target preset.
tools/topology/topology2/platform/intel/sdw-jack-dts.conf New DTS-enhanced SDW jack pipelines and routing.
tools/topology/topology2/platform/intel/sdw-amp-dts.conf New DTS-enhanced SDW amp (speaker) pipelines and routing.
tools/topology/topology2/include/pipelines/cavs/mixout-gain-eqiir-dts-alh-dai-copier-playback.conf New pipeline class combining mixout/gain/eqiir/DTS/alh-copier.
tools/topology/topology2/cavs-sdw.conf Registers the new pipeline include and selects DTS-specific configs.
tools/rimage/config/ptl.toml.h Includes DTS toml when DTS codec is enabled/modular.
src/audio/codec/dts/llext/CMakeLists.txt Adds linking for modular DTS llext builds.
src/audio/codec/dts/dts.toml Increases DTS module IBS to 2048.
src/audio/codec/CMakeLists.txt Fixes conditional structure for DTS codec selection.
app/overlays/ptl/dts_overlay.conf Adds PTL overlay options to enable DTS and required components.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

{
source eqiir.$index.1
sink dts.$index.1
}
Copy link

Copilot AI Apr 3, 2026

Choose a reason for hiding this comment

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

The pipeline routing stops at dts.$index.1 and never connects to alh-copier, so audio won’t reach the DAI stage. Add the missing route entry connecting the DTS widget output to the ALH copier input (consistent with how other playback pipelines terminate at alh-copier).

Suggested change
}
}
{
source dts.$index.1
sink alh-copier.$index.1
}

Copilot uses AI. Check for mistakes.
Comment on lines +1 to +7
#
# BE playback pipeline: mixout-gain-alh-dai-copier.
#
# All attributes defined herein are namespaced
# by alsatplg to "Object.Pipeline.mixout-gain-alh-dai-copier-playback.N.attribute_name"
#
# Usage: mixout-gain-alh-dai-copier-playback pipeline object can be instantiated as:
Copy link

Copilot AI Apr 3, 2026

Choose a reason for hiding this comment

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

The header comment and namespacing/usage examples reference mixout-gain-alh-dai-copier-playback, but this file defines mixout-gain-eqiir-dts-alh-dai-copier-playback. Update the comment block to match the actual class name and emitted object namespace to avoid misleading consumers.

Copilot uses AI. Check for mistakes.
Comment on lines +250 to +259
Object.Widget {
alh-copier [
{
index $ALH_2ND_SPK_ID
type dai_in
stream_name $SDW_SPK_STREAM
dai_index 1
type "dai_in"
direction "playback"
node_type $ALH_LINK_OUTPUT_CLASS
Copy link

Copilot AI Apr 3, 2026

Choose a reason for hiding this comment

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

This object defines the type key twice (type dai_in and type \"dai_in\"). Duplicate keys can cause parse errors or unintended overrides depending on the config parser. Remove the duplicate type assignment (and apply the same fix to other duplicated type fields in this file, e.g., the dai_out blocks).

Copilot uses AI. Check for mistakes.
Object.Widget.dts.1 {
Object.Control {
bytes."1" {
name 'Post Mixer $AMP_PLAYBACK_NAME DTS bytes'
Copy link

Copilot AI Apr 3, 2026

Choose a reason for hiding this comment

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

The DTS bytes control here doesn’t specify a max value, while the jack DTS config sets max 2048 and dts.toml increases the module IBS to 2048. For consistency (and to avoid an implicit default limit that may be too small), set an explicit max matching the expected payload size.

Suggested change
name 'Post Mixer $AMP_PLAYBACK_NAME DTS bytes'
name 'Post Mixer $AMP_PLAYBACK_NAME DTS bytes'
max 2048

Copilot uses AI. Check for mistakes.
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.

2 participants