diff --git a/tools/topology/topology2/CMakeLists.txt b/tools/topology/topology2/CMakeLists.txt index 6abb55262170..53eafe4ca548 100644 --- a/tools/topology/topology2/CMakeLists.txt +++ b/tools/topology/topology2/CMakeLists.txt @@ -26,7 +26,6 @@ add_custom_target(abi_target DEPENDS abi.conf ) -add_dependencies(topologies2 topology2_cavs topology2_ace topology2_dev) +add_dependencies(topologies2 topology2_cavs topology2_ace) add_subdirectory(avs-tplg) -add_subdirectory(development) add_subdirectory(sof-ace-tplg) diff --git a/tools/topology/topology2/avs-tplg/CMakeLists.txt b/tools/topology/topology2/avs-tplg/CMakeLists.txt index 2351c3b226f7..8ac648fd2a12 100644 --- a/tools/topology/topology2/avs-tplg/CMakeLists.txt +++ b/tools/topology/topology2/avs-tplg/CMakeLists.txt @@ -29,9 +29,17 @@ SDW_SPK_STREAM=SDW2-Playback,SDW_DMIC_STREAM=SDW0-Capture" "cavs-sdw\;sof-tgl-rt711-rt1308-4ch\;NUM_SDW_AMPS=1,NUM_DMICS=4,DMIC0_ID=3,\ DMIC1_ID=4,PDM1_MIC_A_ENABLE=1,PDM1_MIC_B_ENABLE=1" -"cavs-sdw\;sof-adl-rt711-4ch\;DEEPBUFFER_FW_DMA_MS=100,NUM_DMICS=4,DMIC0_ID=2,\ -DMIC1_ID=3,PDM1_MIC_A_ENABLE=1,PDM1_MIC_B_ENABLE=1,HDMI1_ID=4,HDMI2_ID=5,\ -HDMI3_ID=6" +# CAVS SDW with SRC gain and mixer support +"cavs-sdw-src-gain-mixin\;cavs-sdw-src-gain-mixin" + +# SDW + HDMI topology with passthrough pipelines +"cavs-sdw\;cavs-sdw-hdmi\;NUM_HDMIS=4,DEEPBUFFER_FW_DMA_MS=100" + +# CAVS SSP topology for TGL +"cavs-nocodec\;sof-tgl-nocodec\;NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,PDM1_MIC_B_ENABLE=1,\ +PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-tgl-nocodec.bin,DEEPBUFFER_FW_DMA_MS=100" +"cavs-nocodec\;sof-adl-nocodec\;NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,PDM1_MIC_B_ENABLE=1,\ +PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-adl-nocodec.bin,DEEPBUFFER_FW_DMA_MS=100" ) add_custom_target(topology2_cavs) diff --git a/tools/topology/topology2/cavs-rt5682.conf b/tools/topology/topology2/cavs-rt5682.conf index 48341f75eb84..4c2aa971d6cd 100644 --- a/tools/topology/topology2/cavs-rt5682.conf +++ b/tools/topology/topology2/cavs-rt5682.conf @@ -49,7 +49,7 @@ Define { DMIC0_PCM_CAPS 'Passthrough Capture 13' DMIC0_PIPELINE_STREAM_NAME 'copier.DMIC.14.1' # override BE link ids - NUM_HDMIS 3 + NUM_HDMIS 0 HDMI1_ID 3 HDMI2_ID 4 HDMI3_ID 5 diff --git a/tools/topology/topology2/cavs-sdw.conf b/tools/topology/topology2/cavs-sdw.conf index c5efbbca317a..086441f7358c 100644 --- a/tools/topology/topology2/cavs-sdw.conf +++ b/tools/topology/topology2/cavs-sdw.conf @@ -69,7 +69,7 @@ IncludeByKey.NUM_DMICS { } Define { - NUM_HDMIS 3 + NUM_HDMIS 0 } # include HDMI config if needed. diff --git a/tools/topology/topology2/development/CMakeLists.txt b/tools/topology/topology2/development/CMakeLists.txt deleted file mode 100644 index 6d251095544f..000000000000 --- a/tools/topology/topology2/development/CMakeLists.txt +++ /dev/null @@ -1,49 +0,0 @@ -# SPDX-License-Identifier: BSD-3-Clause - -# Array of "input-file-name;output-file-name;comma separated pre-processor variables" -set(TPLGS -# CAVS SDW topology with passthrough pipelines -"cavs-sdw\;cavs-sdw\;DEEPBUFFER_FW_DMA_MS=100" - -# CAVS SDW with SRC gain and mixer support -"cavs-sdw-src-gain-mixin\;cavs-sdw-src-gain-mixin" - -# SDW + HDMI topology with passthrough pipelines -"cavs-sdw\;cavs-sdw-hdmi\;DEEPBUFFER_FW_DMA_MS=100" - -# CAVS SSP topology for TGL -"cavs-nocodec\;sof-tgl-nocodec\;NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,PDM1_MIC_B_ENABLE=1,\ -PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-tgl-nocodec.bin,DEEPBUFFER_FW_DMA_MS=100" -"cavs-nocodec\;sof-adl-nocodec\;NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,PDM1_MIC_B_ENABLE=1,\ -PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-adl-nocodec.bin,DEEPBUFFER_FW_DMA_MS=100" - -# SDW + HDMI topology for MTL -"cavs-sdw\;mtl-sdw-hdmi\;" - -# SSP topology for MTL -"cavs-nocodec\;sof-mtl-nocodec\;PLATFORM=mtl,NUM_DMICS=2,\ -PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-mtl-nocodec.bin,DEEPBUFFER_FW_DMA_MS=100" -) -add_custom_target(topology2_dev) - -foreach(tplg ${TPLGS}) - set(defines "") - list(LENGTH tplg length) - list(GET tplg 0 input) - list(GET tplg 1 output) - - math(EXPR last_index "${length}-1") - - # Get the pre-processor definitions from the 3rd item in the list for each topology - # ex: "hda-generic\;hda-generic-2ch\;HDA_CONFIG=gain,DMIC_CH=2", "defines" would contain "HDA_CONFIG=gain,DMIC_CH=2" - if (${last_index} EQUAL 2) - list(GET tplg ${last_index} defines) - endif() - - add_alsatplg2_command("${CMAKE_CURRENT_BINARY_DIR}/../abi.conf" abi_target - "${CMAKE_CURRENT_SOURCE_DIR}/../${input}" "${output}" - "${CMAKE_CURRENT_SOURCE_DIR}/../" "${defines}") - - add_custom_target(topology2_dev_${output} DEPENDS ${output}.tplg) - add_dependencies(topology2_dev topology2_dev_${output}) -endforeach() diff --git a/tools/topology/topology2/platform/intel/hdmi-4th.conf b/tools/topology/topology2/platform/intel/hdmi-4th.conf index a6614b81cf1e..b7c87c0d6587 100644 --- a/tools/topology/topology2/platform/intel/hdmi-4th.conf +++ b/tools/topology/topology2/platform/intel/hdmi-4th.conf @@ -8,7 +8,7 @@ Object.Dai { } } Object.Pipeline { - passthrough-playback.80 { + passthrough-playback.23 { Object.Widget.pipeline.1 { stream_name $HDMI4_PIPELINE_STREAM_NAME } @@ -19,7 +19,7 @@ Object.Pipeline { index $HDMI4_HOST_PIPELINE_ID use_chain_dma $USE_CHAIN_DMA } - passthrough-be.81 { + passthrough-be.23 { direction "playback" index $HDMI4_DAI_PIPELINE_ID Object.Widget.pipeline.1 { @@ -37,7 +37,7 @@ Object.Pipeline { Object.PCM { pcm.8 { name HDMI4 - id $HDMI4_PCM_ID + id 8 Object.Base.fe_dai.HDMI4 {} Object.PCM.pcm_caps.playback { name $HDMI4_PCM_CAPS @@ -48,7 +48,7 @@ Object.PCM { } # top-level pipeline connections -Object.Base.route.80 { +Object.Base.route.13 { source $HDMI4_HOST_PIPELINE_SINK sink $HDMI4_DAI_PIPELINE_SRC } diff --git a/tools/topology/topology2/platform/intel/hdmi-default.conf b/tools/topology/topology2/platform/intel/hdmi-default.conf index dae45bb6e45f..11c604634f66 100644 --- a/tools/topology/topology2/platform/intel/hdmi-default.conf +++ b/tools/topology/topology2/platform/intel/hdmi-default.conf @@ -4,32 +4,28 @@ Define { HDMI2_ID 6 HDMI3_ID 7 HDMI4_ID 8 - HDMI1_PCM_ID 5 - HDMI2_PCM_ID 6 - HDMI3_PCM_ID 7 - HDMI4_PCM_ID 8 - HDMI1_HOST_PIPELINE_ID 50 - HDMI1_DAI_PIPELINE_ID 51 - HDMI2_HOST_PIPELINE_ID 60 - HDMI2_DAI_PIPELINE_ID 61 - HDMI3_HOST_PIPELINE_ID 70 - HDMI3_DAI_PIPELINE_ID 71 - HDMI4_HOST_PIPELINE_ID 80 - HDMI4_DAI_PIPELINE_ID 81 - HDMI1_PCM_CAPS "HDMI1 Playback" - HDMI1_PIPELINE_STREAM_NAME "HDMI1 stream" - HDMI2_PCM_CAPS "HDMI2 Playback" - HDMI2_PIPELINE_STREAM_NAME "HDMI2 stream" - HDMI3_PCM_CAPS "HDMI3 Playback" - HDMI3_PIPELINE_STREAM_NAME "HDMI3 stream" - HDMI4_PCM_CAPS "HDMI4 Playback" - HDMI4_PIPELINE_STREAM_NAME "HDMI4 stream" - HDMI1_HOST_PIPELINE_SINK "copier.host.50.1" - HDMI1_DAI_PIPELINE_SRC "copier.HDA.51.1" - HDMI2_HOST_PIPELINE_SINK "copier.host.60.1" - HDMI2_DAI_PIPELINE_SRC "copier.HDA.61.1" - HDMI3_HOST_PIPELINE_SINK "copier.host.70.1" - HDMI3_DAI_PIPELINE_SRC "copier.HDA.71.1" - HDMI4_HOST_PIPELINE_SINK "copier.host.80.1" - HDMI4_DAI_PIPELINE_SRC "copier.HDA.81.1" + HDMI1_HOST_PIPELINE_ID 20 + HDMI1_DAI_PIPELINE_ID 21 + HDMI2_HOST_PIPELINE_ID 22 + HDMI2_DAI_PIPELINE_ID 23 + HDMI3_HOST_PIPELINE_ID 24 + HDMI3_DAI_PIPELINE_ID 25 + HDMI4_HOST_PIPELINE_ID 26 + HDMI4_DAI_PIPELINE_ID 27 + HDMI1_PCM_CAPS "Passthrough Playback 20" + HDMI1_PIPELINE_STREAM_NAME "copier.HDA.21.1" + HDMI2_PCM_CAPS "Passthrough Playback 22" + HDMI2_PIPELINE_STREAM_NAME "copier.HDA.23.1" + HDMI3_PCM_CAPS "Passthrough Playback 24" + HDMI3_PIPELINE_STREAM_NAME "copier.HDA.25.1" + HDMI4_PCM_CAPS "Passthrough Playback 26" + HDMI4_PIPELINE_STREAM_NAME "copier.HDA.27.1" + HDMI1_HOST_PIPELINE_SINK "copier.host.20.1" + HDMI1_DAI_PIPELINE_SRC "copier.HDA.21.1" + HDMI2_HOST_PIPELINE_SINK "copier.host.22.1" + HDMI2_DAI_PIPELINE_SRC "copier.HDA.23.1" + HDMI3_HOST_PIPELINE_SINK "copier.host.24.1" + HDMI3_DAI_PIPELINE_SRC "copier.HDA.25.1" + HDMI4_HOST_PIPELINE_SINK "copier.host.26.1" + HDMI4_DAI_PIPELINE_SRC "copier.HDA.27.1" } diff --git a/tools/topology/topology2/platform/intel/hdmi-generic.conf b/tools/topology/topology2/platform/intel/hdmi-generic.conf index 0eb84aa45758..c7ef0ba20994 100644 --- a/tools/topology/topology2/platform/intel/hdmi-generic.conf +++ b/tools/topology/topology2/platform/intel/hdmi-generic.conf @@ -22,7 +22,7 @@ Object.Dai { } } Object.Pipeline { - passthrough-playback.50 { + passthrough-playback.20 { Object.Widget.pipeline.1 { stream_name $HDMI1_PIPELINE_STREAM_NAME } @@ -33,7 +33,7 @@ Object.Pipeline { index $HDMI1_HOST_PIPELINE_ID use_chain_dma $USE_CHAIN_DMA } - passthrough-be.51 { + passthrough-be.20 { direction "playback" index $HDMI1_DAI_PIPELINE_ID Object.Widget.pipeline.1 { @@ -47,7 +47,7 @@ Object.Pipeline { } use_chain_dma $USE_CHAIN_DMA } - passthrough-playback.60 { + passthrough-playback.21 { Object.Widget.pipeline.1 { stream_name $HDMI2_PIPELINE_STREAM_NAME } @@ -58,7 +58,7 @@ Object.Pipeline { index $HDMI2_HOST_PIPELINE_ID use_chain_dma $USE_CHAIN_DMA } - passthrough-be.61 { + passthrough-be.21 { direction "playback" index $HDMI2_DAI_PIPELINE_ID Object.Widget.pipeline.1 { @@ -72,7 +72,7 @@ Object.Pipeline { } use_chain_dma $USE_CHAIN_DMA } - passthrough-playback.70 { + passthrough-playback.22 { Object.Widget.pipeline.1 { stream_name $HDMI3_PIPELINE_STREAM_NAME } @@ -83,7 +83,7 @@ Object.Pipeline { index $HDMI3_HOST_PIPELINE_ID use_chain_dma $USE_CHAIN_DMA } - passthrough-be.71 { + passthrough-be.22 { direction "playback" index $HDMI3_DAI_PIPELINE_ID Object.Widget.pipeline.1 { @@ -101,7 +101,7 @@ Object.Pipeline { Object.PCM { pcm.5 { name HDMI1 - id $HDMI1_PCM_ID + id 5 Object.Base.fe_dai.HDMI1 {} Object.PCM.pcm_caps.playback { name $HDMI1_PCM_CAPS @@ -111,7 +111,7 @@ Object.PCM { } pcm.6 { name HDMI2 - id $HDMI2_PCM_ID + id 6 Object.Base.fe_dai.HDMI2 {} Object.PCM.pcm_caps.playback { name $HDMI2_PCM_CAPS @@ -121,7 +121,7 @@ Object.PCM { } pcm.7 { name HDMI3 - id $HDMI3_PCM_ID + id 7 Object.Base.fe_dai.HDMI3 {} Object.PCM.pcm_caps.playback { name $HDMI3_PCM_CAPS @@ -132,15 +132,15 @@ Object.PCM { } # top-level pipeline connections -Object.Base.route.50 { +Object.Base.route.10 { source $HDMI1_HOST_PIPELINE_SINK sink $HDMI1_DAI_PIPELINE_SRC } -Object.Base.route.60 { +Object.Base.route.11 { source $HDMI2_HOST_PIPELINE_SINK sink $HDMI2_DAI_PIPELINE_SRC } -Object.Base.route.70 { +Object.Base.route.12 { source $HDMI3_HOST_PIPELINE_SINK sink $HDMI3_DAI_PIPELINE_SRC } diff --git a/tools/topology/topology2/sof-ace-tplg/CMakeLists.txt b/tools/topology/topology2/sof-ace-tplg/CMakeLists.txt index b265dafc2942..63faba3e5ae6 100644 --- a/tools/topology/topology2/sof-ace-tplg/CMakeLists.txt +++ b/tools/topology/topology2/sof-ace-tplg/CMakeLists.txt @@ -15,11 +15,21 @@ NHLT_BIN=nhlt-sof-hda-generic-4ch.bin,DEEPBUFFER_FW_DMA_MS=100" HDA_CONFIG=mix,NUM_DMICS=2,PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-hda-generic-2ch.bin,\ DEEPBUFFER_FW_DMA_MS=100" +# SDW topology with passthrough pipelines +"cavs-sdw\;mtl-sdw" + +# SDW + HDMI topology with passthrough pipelines +"cavs-sdw\;mtl-sdw-hdmi\;NUM_HDMIS=4" + # SDW + DMIC topology with passthrough pipelines "cavs-sdw\;sof-mtl-rt711-4ch\;NUM_DMICS=4,DMIC0_ID=2,DMIC1_ID=3,\ PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-mtl-rt711-4ch.bin,DEEPBUFFER_FW_DMA_MS=100" -"cavs-rt5682\;sof-mtl-max98357a-rt5682\;PLATFORM=mtl,NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,PDM1_MIC_B_ENABLE=1,\ +# SSP topology for MTL +"cavs-nocodec\;sof-mtl-nocodec\;PLATFORM=mtl,NUM_DMICS=2,\ +PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-mtl-nocodec.bin,DEEPBUFFER_FW_DMA_MS=100" + +"cavs-rt5682\;sof-mtl-max98357a-rt5682\;PLATFORM=mtl,NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,PDM1_MIC_B_ENABLE=1,NUM_HDMIS=4,\ PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-mtl-max98357a-rt5682.bin,DEEPBUFFER_FW_DMA_MS=10" ) diff --git a/tools/topology/topology2/sof-hda-generic.conf b/tools/topology/topology2/sof-hda-generic.conf index 6f80fd7427e2..4427c4d07f17 100644 --- a/tools/topology/topology2/sof-hda-generic.conf +++ b/tools/topology/topology2/sof-hda-generic.conf @@ -58,9 +58,6 @@ Define { HDMI1_ID 1 HDMI2_ID 2 HDMI3_ID 3 - HDMI1_PCM_ID 3 - HDMI2_PCM_ID 4 - HDMI3_PCM_ID 5 } # always include HDMI config