From 7be095f80596b514d5eccba7f4684e031d48781c Mon Sep 17 00:00:00 2001 From: Bard Liao Date: Tue, 14 Nov 2023 14:51:34 +0800 Subject: [PATCH 1/6] topology2: Use SAMPLE_TYPE_MSB_INTEGER for ALH copier MSB_INTEGER is required for ALH copier. Signed-off-by: Bard Liao --- .../topology2/cavs-sdw-src-gain-mixin.conf | 4 ++++ .../mixout-gain-alh-dai-copier-playback.conf | 4 ++++ .../platform/intel/sdw-amp-generic.conf | 24 +++++++++++++++++++ .../platform/intel/sdw-dmic-generic.conf | 4 ++++ .../platform/intel/sdw-jack-generic.conf | 16 +++++++++++++ 5 files changed, 52 insertions(+) diff --git a/tools/topology/topology2/cavs-sdw-src-gain-mixin.conf b/tools/topology/topology2/cavs-sdw-src-gain-mixin.conf index 17acf2ceac4f..014db844b8fe 100644 --- a/tools/topology/topology2/cavs-sdw-src-gain-mixin.conf +++ b/tools/topology/topology2/cavs-sdw-src-gain-mixin.conf @@ -142,12 +142,16 @@ Object.Widget { { in_bit_depth 32 in_valid_bit_depth 32 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } ] Object.Base.output_audio_format [ { out_bit_depth 32 out_valid_bit_depth 32 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } ] } diff --git a/tools/topology/topology2/include/pipelines/cavs/mixout-gain-alh-dai-copier-playback.conf b/tools/topology/topology2/include/pipelines/cavs/mixout-gain-alh-dai-copier-playback.conf index ab8ab712c929..c9d248c97527 100644 --- a/tools/topology/topology2/include/pipelines/cavs/mixout-gain-alh-dai-copier-playback.conf +++ b/tools/topology/topology2/include/pipelines/cavs/mixout-gain-alh-dai-copier-playback.conf @@ -54,12 +54,16 @@ Class.Pipeline."mixout-gain-alh-dai-copier-playback" { { in_bit_depth 32 in_valid_bit_depth 32 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } ] Object.Base.output_audio_format [ { out_bit_depth 32 out_valid_bit_depth 32 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } ] } diff --git a/tools/topology/topology2/platform/intel/sdw-amp-generic.conf b/tools/topology/topology2/platform/intel/sdw-amp-generic.conf index c19423d62f2f..8dc9e80db075 100644 --- a/tools/topology/topology2/platform/intel/sdw-amp-generic.conf +++ b/tools/topology/topology2/platform/intel/sdw-amp-generic.conf @@ -120,14 +120,20 @@ IncludeByKey.PASSTHROUGH { { in_bit_depth 16 in_valid_bit_depth 16 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } { in_bit_depth 32 in_valid_bit_depth 24 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } { in_bit_depth 32 in_valid_bit_depth 32 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } ] num_output_audio_formats 3 @@ -135,14 +141,20 @@ IncludeByKey.PASSTHROUGH { { out_bit_depth 16 out_valid_bit_depth 16 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } { out_bit_depth 32 out_valid_bit_depth 24 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } { out_bit_depth 32 out_valid_bit_depth 32 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } ] } @@ -184,12 +196,16 @@ IncludeByKey.NUM_SDW_AMP_LINKS { { in_bit_depth 32 in_valid_bit_depth 32 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } ] Object.Base.output_audio_format [ { out_bit_depth 32 out_valid_bit_depth 32 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } ] } @@ -214,12 +230,16 @@ IncludeByKey.NUM_SDW_AMP_LINKS { { in_bit_depth 32 in_valid_bit_depth 32 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } ] Object.Base.output_audio_format [ { out_bit_depth 32 out_valid_bit_depth 32 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } ] } @@ -394,12 +414,16 @@ IncludeByKey.SDW_AMP_FEEDBACK { { in_bit_depth 32 in_valid_bit_depth 32 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } ] Object.Base.output_audio_format [ { out_bit_depth 32 out_valid_bit_depth 32 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } ] } diff --git a/tools/topology/topology2/platform/intel/sdw-dmic-generic.conf b/tools/topology/topology2/platform/intel/sdw-dmic-generic.conf index e8b0ca2dbb31..6c4f36d193f2 100644 --- a/tools/topology/topology2/platform/intel/sdw-dmic-generic.conf +++ b/tools/topology/topology2/platform/intel/sdw-dmic-generic.conf @@ -53,12 +53,16 @@ Object.Widget { { in_bit_depth 32 in_valid_bit_depth 32 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } ] Object.Base.output_audio_format [ { out_bit_depth 32 out_valid_bit_depth 32 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } ] } diff --git a/tools/topology/topology2/platform/intel/sdw-jack-generic.conf b/tools/topology/topology2/platform/intel/sdw-jack-generic.conf index 1b7a4494728b..27b290eca929 100644 --- a/tools/topology/topology2/platform/intel/sdw-jack-generic.conf +++ b/tools/topology/topology2/platform/intel/sdw-jack-generic.conf @@ -140,14 +140,20 @@ IncludeByKey.PASSTHROUGH { { in_bit_depth 16 in_valid_bit_depth 16 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } { in_bit_depth 32 in_valid_bit_depth 24 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } { in_bit_depth 32 in_valid_bit_depth 32 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } ] num_output_audio_formats 3 @@ -155,14 +161,20 @@ IncludeByKey.PASSTHROUGH { { out_bit_depth 16 out_valid_bit_depth 16 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } { out_bit_depth 32 out_valid_bit_depth 24 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } { out_bit_depth 32 out_valid_bit_depth 32 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } ] } @@ -286,12 +298,16 @@ Object.Widget { { in_bit_depth 32 in_valid_bit_depth 32 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } ] Object.Base.output_audio_format [ { out_bit_depth 32 out_valid_bit_depth 32 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } ] } From d968bccd38eb53ff615c514f5444f39ccf6b98f9 Mon Sep 17 00:00:00 2001 From: Bard Liao Date: Wed, 11 Oct 2023 10:46:36 +0800 Subject: [PATCH 2/6] topology2: sdw-amp-generic: add SDW_AMP_FMT_24 flag To indicate the SoundWire amp need to use 24 bit format. I use a flag instead of a macro like $SDW_AMP_FMT to set valid_bit_depth because bit_depth and valid_bit_depth may not be the same. Signed-off-by: Bard Liao --- .../platform/intel/sdw-amp-generic.conf | 128 +++++++++++++----- 1 file changed, 92 insertions(+), 36 deletions(-) diff --git a/tools/topology/topology2/platform/intel/sdw-amp-generic.conf b/tools/topology/topology2/platform/intel/sdw-amp-generic.conf index 8dc9e80db075..dd294600f93c 100644 --- a/tools/topology/topology2/platform/intel/sdw-amp-generic.conf +++ b/tools/topology/topology2/platform/intel/sdw-amp-generic.conf @@ -9,6 +9,7 @@ Define { SDW_AMP_IN_BE_ID 3 AMP_FEEDBACK_CH 2 SDW_AMP_FEEDBACK true + SDW_AMP_FMT_24 false } Object.Dai.ALH [ @@ -54,6 +55,19 @@ IncludeByKey.PASSTHROUGH { Object.Widget.alh-copier.1 { stream_name $SDW_SPK_STREAM node_type $ALH_LINK_OUTPUT_CLASS + IncludeByKey.SDW_AMP_FMT_24 { + "true" { + num_output_audio_formats 1 + Object.Base.output_audio_format [ + { + out_bit_depth 32 + out_valid_bit_depth 24 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + } + ] + } + } } Object.Widget.gain.1 { Object.Control.mixer.1 { @@ -136,27 +150,44 @@ IncludeByKey.PASSTHROUGH { in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } ] - num_output_audio_formats 3 - Object.Base.output_audio_format [ - { - out_bit_depth 16 - out_valid_bit_depth 16 - out_sample_type $SAMPLE_TYPE_MSB_INTEGER - out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" - } - { - out_bit_depth 32 - out_valid_bit_depth 24 - out_sample_type $SAMPLE_TYPE_MSB_INTEGER - out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + IncludeByKey.SDW_AMP_FMT_24 { + "true" { + num_output_audio_formats 1 + Object.Base.output_audio_format [ + { + out_bit_depth 32 + out_valid_bit_depth 24 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + + } + ] } - { - out_bit_depth 32 - out_valid_bit_depth 32 - out_sample_type $SAMPLE_TYPE_MSB_INTEGER - out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + "false" { + num_output_audio_formats 3 + num_output_audio_formats 3 + Object.Base.output_audio_format [ + { + out_bit_depth 16 + out_valid_bit_depth 16 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + } + { + out_bit_depth 32 + out_valid_bit_depth 24 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + } + { + out_bit_depth 32 + out_valid_bit_depth 32 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + } + ] } - ] + } } ] pipeline [ @@ -190,8 +221,6 @@ IncludeByKey.NUM_SDW_AMP_LINKS { num_input_audio_formats 1 num_output_audio_formats 1 num_input_pins 1 - - # 32-bit 48KHz 2ch Object.Base.input_audio_format [ { in_bit_depth 32 @@ -200,14 +229,28 @@ IncludeByKey.NUM_SDW_AMP_LINKS { in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } ] - Object.Base.output_audio_format [ - { - out_bit_depth 32 - out_valid_bit_depth 32 - out_sample_type $SAMPLE_TYPE_MSB_INTEGER - out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + IncludeByKey.SDW_AMP_FMT_24 { + "true" { + Object.Base.output_audio_format [ + { + out_bit_depth 32 + out_valid_bit_depth 24 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + } + ] } - ] + "false" { + Object.Base.output_audio_format [ + { + out_bit_depth 32 + out_valid_bit_depth 32 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + } + ] + } + } } ] IncludeByKey.SDW_AMP_FEEDBACK { @@ -225,15 +268,28 @@ IncludeByKey.NUM_SDW_AMP_LINKS { num_output_audio_formats 1 num_output_pins 1 - # 32-bit 48KHz 2ch - Object.Base.input_audio_format [ - { - in_bit_depth 32 - in_valid_bit_depth 32 - in_sample_type $SAMPLE_TYPE_MSB_INTEGER - in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" + IncludeByKey.SDW_AMP_FMT_24 { + "true" { + Object.Base.input_audio_format [ + { + in_bit_depth 32 + in_valid_bit_depth 24 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" + } + ] } - ] + "false" { + Object.Base.input_audio_format [ + { + in_bit_depth 32 + in_valid_bit_depth 32 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" + } + ] + } + } Object.Base.output_audio_format [ { out_bit_depth 32 From 6bc44f3bc182d485427af385a6083d5719ca25df Mon Sep 17 00:00:00 2001 From: Bard Liao Date: Fri, 20 Oct 2023 09:17:50 +0800 Subject: [PATCH 3/6] topology2: sdw-jack-generic: cleanup: use tab instead of space Use tab instead of space. Signed-off-by: Bard Liao --- tools/topology/topology2/platform/intel/sdw-jack-generic.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/topology/topology2/platform/intel/sdw-jack-generic.conf b/tools/topology/topology2/platform/intel/sdw-jack-generic.conf index 27b290eca929..493e14603f43 100644 --- a/tools/topology/topology2/platform/intel/sdw-jack-generic.conf +++ b/tools/topology/topology2/platform/intel/sdw-jack-generic.conf @@ -8,8 +8,8 @@ IncludeByKey.PASSTHROUGH { } Define { - JACK_PLAYBACK_PCM_NAME "Jack Out" - JACK_CAPTURE_PCM_NAME "Jack In" + JACK_PLAYBACK_PCM_NAME "Jack Out" + JACK_CAPTURE_PCM_NAME "Jack In" } # From ab8354c72dd3c7935f5ad8e7c6716419efda716d Mon Sep 17 00:00:00 2001 From: Bard Liao Date: Fri, 20 Oct 2023 09:04:01 +0800 Subject: [PATCH 4/6] topology2: sdw-jack-generic: add SDW_JACK_FMT_24 flag To indicate the SoundWire jack need to use 24 bit format. Signed-off-by: Bard Liao --- .../platform/intel/sdw-jack-generic.conf | 95 ++++++++++++++----- 1 file changed, 69 insertions(+), 26 deletions(-) diff --git a/tools/topology/topology2/platform/intel/sdw-jack-generic.conf b/tools/topology/topology2/platform/intel/sdw-jack-generic.conf index 493e14603f43..8d71a19c1eb6 100644 --- a/tools/topology/topology2/platform/intel/sdw-jack-generic.conf +++ b/tools/topology/topology2/platform/intel/sdw-jack-generic.conf @@ -10,6 +10,7 @@ IncludeByKey.PASSTHROUGH { Define { JACK_PLAYBACK_PCM_NAME "Jack Out" JACK_CAPTURE_PCM_NAME "Jack In" + SDW_JACK_FMT_24 "false" } # @@ -75,6 +76,19 @@ IncludeByKey.PASSTHROUGH { Object.Widget.alh-copier.1 { stream_name $SDW_JACK_OUT_STREAM node_type $ALH_LINK_OUTPUT_CLASS + IncludeByKey.SDW_JACK_FMT_24 { + "true" { + num_output_audio_formats 1 + Object.Base.output_audio_format [ + { + out_bit_depth 32 + out_valid_bit_depth 24 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256)) | ($out_sample_type * 65536)]" + } + ] + } + } } Object.Widget.gain.1 { Object.Control.mixer.1 { @@ -156,27 +170,42 @@ IncludeByKey.PASSTHROUGH { in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" } ] - num_output_audio_formats 3 - Object.Base.output_audio_format [ - { - out_bit_depth 16 - out_valid_bit_depth 16 - out_sample_type $SAMPLE_TYPE_MSB_INTEGER - out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + IncludeByKey.SDW_JACK_FMT_24 { + "true" { + num_output_audio_formats 1 + Object.Base.output_audio_format [ + { + out_bit_depth 32 + out_valid_bit_depth 24 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + } + ] } - { - out_bit_depth 32 - out_valid_bit_depth 24 - out_sample_type $SAMPLE_TYPE_MSB_INTEGER - out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" - } - { - out_bit_depth 32 - out_valid_bit_depth 32 - out_sample_type $SAMPLE_TYPE_MSB_INTEGER - out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + "false" { + num_output_audio_formats 3 + Object.Base.output_audio_format [ + { + out_bit_depth 16 + out_valid_bit_depth 16 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + } + { + out_bit_depth 32 + out_valid_bit_depth 24 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + } + { + out_bit_depth 32 + out_valid_bit_depth 32 + out_sample_type $SAMPLE_TYPE_MSB_INTEGER + out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" + } + ] } - ] + } } ] pipeline [ @@ -294,14 +323,28 @@ Object.Widget { num_output_audio_formats 1 num_output_pins 1 - Object.Base.input_audio_format [ - { - in_bit_depth 32 - in_valid_bit_depth 32 - in_sample_type $SAMPLE_TYPE_MSB_INTEGER - in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" + IncludeByKey.SDW_JACK_FMT_24 { + "true" { + Object.Base.input_audio_format [ + { + in_bit_depth 32 + in_valid_bit_depth 24 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" + } + ] } - ] + "false" { + Object.Base.input_audio_format [ + { + in_bit_depth 32 + in_valid_bit_depth 32 + in_sample_type $SAMPLE_TYPE_MSB_INTEGER + in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]" + } + ] + } + } Object.Base.output_audio_format [ { out_bit_depth 32 From 1498de227fa43ab97b684cb02df48106d5d7397c Mon Sep 17 00:00:00 2001 From: Bard Liao Date: Thu, 19 Oct 2023 20:30:14 +0800 Subject: [PATCH 5/6] topology2: add sof-tgl-cs42l43-l3-cs35l56-l01 support Add topology2 support for cs42l43 + cs35l56. Signed-off-by: Bard Liao --- tools/topology/topology2/avs-tplg/tplg-targets.cmake | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tools/topology/topology2/avs-tplg/tplg-targets.cmake b/tools/topology/topology2/avs-tplg/tplg-targets.cmake index 5aeb446793ba..e8a4ee72e820 100644 --- a/tools/topology/topology2/avs-tplg/tplg-targets.cmake +++ b/tools/topology/topology2/avs-tplg/tplg-targets.cmake @@ -34,6 +34,11 @@ PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-tgl-rt715-rt711-rt1308-mono.bin" DMIC1_ID=4,PDM1_MIC_A_ENABLE=1,PDM1_MIC_B_ENABLE=1,SDW_AMP_FEEDBACK=false,\ PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-tgl-rt711-rt1308-4ch.bin" +"cavs-sdw\;sof-tgl-cs42l43-l3-cs35l56-l01\;PLATFORM=tgl,NUM_SDW_AMP_LINKS=2,SDW_DMIC=1,\ +NUM_HDMIS=0,SDW_SPK_STREAM=Playback-SmartAmp,SDW_SPK_IN_STREAM=Capture-SmartAmp,\ +SDW_DMIC_STREAM=Capture-SmartMic,SDW_JACK_OUT_STREAM=Playback-SimpleJack,\ +SDW_JACK_IN_STREAM=Capture-SimpleJack,SDW_AMP_FMT_24=true,SDW_JACK_FMT_24=true" + # IPC4 topology for TGL rt712 Headset, Amp and DMIC "cavs-sdw\;sof-tgl-rt712\;SDW_JACK_OUT_STREAM=SDW0-Playback-SimpleJack,\ SDW_JACK_IN_STREAM=SDW0-Capture-SimpleJack,SDW_SPK_STREAM=SDW0-Playback-SmartAmp,\ From a644197aa0c9aeb92b063a8d3b33417ee7bb9a10 Mon Sep 17 00:00:00 2001 From: Bard Liao Date: Wed, 11 Oct 2023 09:04:05 +0800 Subject: [PATCH 6/6] topology2: add sof-mtl-cs42l43-l0-cs35l56-l12.tplg Add cs42l43 + cs35l56 topology for MTL. Signed-off-by: Bard Liao --- tools/topology/topology2/sof-ace-tplg/tplg-targets.cmake | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tools/topology/topology2/sof-ace-tplg/tplg-targets.cmake b/tools/topology/topology2/sof-ace-tplg/tplg-targets.cmake index ffc97bffc8e4..0add2ee72fe7 100644 --- a/tools/topology/topology2/sof-ace-tplg/tplg-targets.cmake +++ b/tools/topology/topology2/sof-ace-tplg/tplg-targets.cmake @@ -40,6 +40,11 @@ SDW_DMIC_STREAM=SDW0-Capture" # Jack codec + SmartAmp topology. No SDW_DMIC connection "cavs-sdw\;sof-mtl-rt713-l0-rt1316-l12\;PLATFORM=mtl,NUM_SDW_AMP_LINKS=2" +"cavs-sdw\;sof-mtl-cs42l43-l0-cs35l56-l12\;PLATFORM=mtl,NUM_SDW_AMP_LINKS=2,SDW_DMIC=1,\ +NUM_HDMIS=0,SDW_SPK_STREAM=Playback-SmartAmp,SDW_SPK_IN_STREAM=Capture-SmartAmp,\ +SDW_DMIC_STREAM=Capture-SmartMic,SDW_JACK_OUT_STREAM=Playback-SimpleJack,\ +SDW_JACK_IN_STREAM=Capture-SimpleJack,SDW_AMP_FMT_24=true,SDW_JACK_FMT_24=true" + # Below topologies are used on Chromebooks "cavs-rt5682\;sof-mtl-max98357a-rt5682\;PLATFORM=mtl,NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,\