diff --git a/tools/topology/topology2/cavs-mixin-mixout-hda.conf b/tools/topology/topology2/cavs-mixin-mixout-hda.conf index 95662d468299..43d91d501a6c 100644 --- a/tools/topology/topology2/cavs-mixin-mixout-hda.conf +++ b/tools/topology/topology2/cavs-mixin-mixout-hda.conf @@ -63,7 +63,7 @@ Object.Pipeline { } } - passthrough-be.1 { + passthrough-capture-be.1 { index 4 direction capture diff --git a/tools/topology/topology2/cavs-nocodec-bt.conf b/tools/topology/topology2/cavs-nocodec-bt.conf index 2cce74f013f2..957f1594e6ae 100644 --- a/tools/topology/topology2/cavs-nocodec-bt.conf +++ b/tools/topology/topology2/cavs-nocodec-bt.conf @@ -13,6 +13,7 @@ + @@ -175,7 +176,7 @@ Object.Pipeline { } } - passthrough-be.4 { + passthrough-capture-be.4 { index 6 direction capture Object.Widget.pipeline.1 { @@ -209,7 +210,7 @@ Object.Pipeline { } } - passthrough-be.5 { + passthrough-capture-be.5 { index 10 direction capture Object.Widget.pipeline.1 { diff --git a/tools/topology/topology2/cavs-nocodec.conf b/tools/topology/topology2/cavs-nocodec.conf index e998073dcd05..f41ff785e532 100644 --- a/tools/topology/topology2/cavs-nocodec.conf +++ b/tools/topology/topology2/cavs-nocodec.conf @@ -11,7 +11,7 @@ - + @@ -375,7 +375,7 @@ Object.Pipeline { } } - passthrough-be.5 { + passthrough-capture-be.5 { index 10 direction capture @@ -404,7 +404,7 @@ Object.Pipeline { } } - passthrough-be.6 { + passthrough-capture-be.6 { index 12 direction capture diff --git a/tools/topology/topology2/cavs-rt5682.conf b/tools/topology/topology2/cavs-rt5682.conf index f26dc4fa7d1e..2a06867deecf 100644 --- a/tools/topology/topology2/cavs-rt5682.conf +++ b/tools/topology/topology2/cavs-rt5682.conf @@ -13,6 +13,7 @@ + @@ -248,7 +249,7 @@ Object.Pipeline { } } - passthrough-be.1 { + passthrough-capture-be.1 { index 6 direction capture diff --git a/tools/topology/topology2/cavs-sdw-src-gain-mixin.conf b/tools/topology/topology2/cavs-sdw-src-gain-mixin.conf index 0feaa3872aea..ed4c87136e81 100644 --- a/tools/topology/topology2/cavs-sdw-src-gain-mixin.conf +++ b/tools/topology/topology2/cavs-sdw-src-gain-mixin.conf @@ -12,7 +12,7 @@ - + @@ -114,7 +114,7 @@ Object.Pipeline { in_bit_depth 32 } } - passthrough-be.2 { + passthrough-capture-be.2 { direction "capture" index 3 copier_type "ALH" diff --git a/tools/topology/topology2/cavs-sdw.conf b/tools/topology/topology2/cavs-sdw.conf index cdb4f9f110a5..7c7c177ea81a 100644 --- a/tools/topology/topology2/cavs-sdw.conf +++ b/tools/topology/topology2/cavs-sdw.conf @@ -18,6 +18,7 @@ + @@ -179,7 +180,7 @@ Object.Pipeline { in_bit_depth 32 } } - passthrough-be.11 { + passthrough-capture-be.11 { direction "capture" index 11 copier_type "ALH" diff --git a/tools/topology/topology2/include/pipelines/cavs/passthrough-capture-be.conf b/tools/topology/topology2/include/pipelines/cavs/passthrough-capture-be.conf new file mode 100644 index 000000000000..167d49f77e79 --- /dev/null +++ b/tools/topology/topology2/include/pipelines/cavs/passthrough-capture-be.conf @@ -0,0 +1,68 @@ +# +# BE DAI passthrough pipeline for capture +# +# All attributes defined herein are namespaced by alsatplg to +# "Object.Pipeline.passthrough-be-capture.N.attribute_name" +# +# Usage: mixin-playback pipeline object can be instantiated as: +# +# Object.Pipeline.dai-pipeline."N" { +# direction "capture" +# period 1000 +# time_domain "timer" +# channels 2 +# rate 48000 +# } +# +# Where N is the unique pipeline ID within the same alsaconf node. +# + + + + + +Class.Pipeline."passthrough-capture-be" { + + DefineAttribute."index" {} + + + + attributes { + !constructor [ + "index" + ] + + unique "instance" + } + + Object.Widget { + copier."1" { + type dai_in + num_audio_formats 1 + num_input_audio_formats 1 + num_output_audio_formats 1 + + Object.Base.audio_format.1 { + in_bit_depth 32 + in_valid_bit_depth 32 + out_bit_depth 32 + out_valid_bit_depth 32 + dma_buffer_size "$[$obs * 2]" + } + } + + pipeline."1" { + priority 0 + lp_mode 0 + } + } + + time_domain "timer" + dynamic_pipeline 1 + channels 2 + channels_min 2 + channels_max 2 + rate 48000 + rate_min 48000 + rate_max 48000 +} diff --git a/tools/topology/topology2/platform/intel/bt-generic.conf b/tools/topology/topology2/platform/intel/bt-generic.conf index 57d6e1c99103..e65afb385ae0 100644 --- a/tools/topology/topology2/platform/intel/bt-generic.conf +++ b/tools/topology/topology2/platform/intel/bt-generic.conf @@ -147,7 +147,7 @@ Object.Pipeline { } } - passthrough-be.6 { + passthrough-capture-be.6 { index $BT_CP_DAI_PIPELINE_ID direction "capture" Object.Widget.pipeline.1 { diff --git a/tools/topology/topology2/platform/intel/sdw-amp-generic.conf b/tools/topology/topology2/platform/intel/sdw-amp-generic.conf index e8d4ea37ecc8..dfa3e06e992a 100644 --- a/tools/topology/topology2/platform/intel/sdw-amp-generic.conf +++ b/tools/topology/topology2/platform/intel/sdw-amp-generic.conf @@ -115,7 +115,7 @@ IncludeByKey.NUM_SDW_AMPS { node_type $ALH_LINK_OUTPUT_CLASS } } - passthrough-be.$ALH_2ND_SPK_IN_ID { + passthrough-capture-be.$ALH_2ND_SPK_IN_ID { direction "capture" index $ALH_2ND_SPK_IN_ID copier_type "ALH" diff --git a/tools/topology/topology2/platform/intel/sdw-dmic-generic.conf b/tools/topology/topology2/platform/intel/sdw-dmic-generic.conf index 444e78d61942..d80cff6bb021 100644 --- a/tools/topology/topology2/platform/intel/sdw-dmic-generic.conf +++ b/tools/topology/topology2/platform/intel/sdw-dmic-generic.conf @@ -33,7 +33,7 @@ Object.Pipeline { in_bit_depth 32 } } - passthrough-be.41 { + passthrough-capture-be.41 { direction "capture" index 41 copier_type "ALH" diff --git a/tools/topology/topology2/sof-hda-generic.conf b/tools/topology/topology2/sof-hda-generic.conf index f411801d3d27..853dbbc8cd6b 100644 --- a/tools/topology/topology2/sof-hda-generic.conf +++ b/tools/topology/topology2/sof-hda-generic.conf @@ -18,6 +18,7 @@ +