topology2: deep-buffer: Add second instance

Add 2nd deepbuff PCM as an option.

Signed-off-by: Yong Zhi <yong.zhi@intel.com>
This commit is contained in:
Yong Zhi 2023-11-01 16:50:43 -05:00 committed by Liam Girdwood
parent 8cdae1334e
commit 6a0e9b1eb4
1 changed files with 58 additions and 2 deletions

View File

@ -1,3 +1,7 @@
Define {
DEEP_BUF_SPK false
}
Object.Pipeline.deepbuffer-playback [ Object.Pipeline.deepbuffer-playback [
{ {
index $DEEP_BUFFER_PIPELINE_ID index $DEEP_BUFFER_PIPELINE_ID
@ -9,7 +13,7 @@ Object.Pipeline.deepbuffer-playback [
Object.Widget.gain.1 { Object.Widget.gain.1 {
Object.Control.mixer.1 { Object.Control.mixer.1 {
name 'Deepbuffer Volume' name 'Pre Mixer $DEEP_BUFFER_PCM_NAME Volume'
} }
} }
} }
@ -23,7 +27,7 @@ Object.PCM.pcm [
playback_compatible_d0i3 $DEEPBUFFER_D0I3_COMPATIBLE playback_compatible_d0i3 $DEEPBUFFER_D0I3_COMPATIBLE
Object.Base.fe_dai.1 { Object.Base.fe_dai.1 {
name "DeepBuffer" name "$DEEP_BUFFER_PCM_NAME"
} }
Object.PCM.pcm_caps.1 { Object.PCM.pcm_caps.1 {
@ -46,3 +50,55 @@ Object.Base.route [
sink gain.$DEEP_BUFFER_PIPELINE_ID.1 sink gain.$DEEP_BUFFER_PIPELINE_ID.1
} }
] ]
# Spawn another instance
IncludeByKey.DEEP_BUF_SPK {
"true" {
Object.Pipeline.deepbuffer-playback [
{
index $DEEP_BUFFER_PIPELINE_ID_2
Object.Widget.host-copier.1 {
stream_name $DEEP_BUFFER_PCM_NAME_2
pcm_id $DEEP_BUFFER_PCM_ID_2
}
Object.Widget.gain.1 {
Object.Control.mixer.1 {
name 'Pre Mixer $DEEP_BUFFER_PCM_NAME_2 Volume'
}
}
}
]
Object.PCM.pcm [
{
name $DEEP_BUFFER_PCM_NAME_2
id $DEEP_BUFFER_PCM_ID_2
direction playback
playback_compatible_d0i3 $DEEPBUFFER_D0I3_COMPATIBLE
Object.Base.fe_dai.1 {
name "$DEEP_BUFFER_PCM_NAME_2"
}
Object.PCM.pcm_caps.1 {
name $DEEP_BUFFER_PCM_NAME_2
formats 'S16_LE,S24_LE,S32_LE'
# align with $DEEPBUFFER_FW_DMA_MS
period_size_max 65535
buffer_size_max 262144
}
}
]
Object.Base.route [
{
source $DEEP_BUFFER_PIPELINE_SRC_2
sink $DEEP_BUFFER_PIPELINE_SINK_2
}
{
source host-copier.$DEEP_BUFFER_PCM_ID_2.playback
sink gain.$DEEP_BUFFER_PIPELINE_ID_2.1
}
]
}
}