diff --git a/tools/topology/topology2/cavs-benchmark-hda.conf b/tools/topology/topology2/cavs-benchmark-hda.conf index ca3a393c14ca..7d6f7f38a00a 100644 --- a/tools/topology/topology2/cavs-benchmark-hda.conf +++ b/tools/topology/topology2/cavs-benchmark-hda.conf @@ -9,6 +9,8 @@ Define { ANALOG_PLAYBACK_PCM 'Analog Playback' ANALOG_CAPTURE_PCM 'Analog Capture' HDA_ANALOG_DAI_NAME 'Analog' + HDA_ANALOG_CAPTURE_RATE 48000 + HDA_ANALOG_PLAYBACK_RATE 48000 } Object.Dai.HDA [ @@ -54,11 +56,45 @@ IncludeByKey.BENCH_CONFIG { { index 3 + Object.Widget.mixout.1 { + num_input_audio_formats 1 + num_output_audio_formats 1 + Object.Base.input_audio_format [ + { + in_rate $HDA_ANALOG_PLAYBACK_RATE + in_bit_depth 32 + in_valid_bit_depth 24 + } + ] + Object.Base.output_audio_format [ + { + out_rate $HDA_ANALOG_PLAYBACK_RATE + out_bit_depth 32 + out_valid_bit_depth 24 + } + ] + } Object.Widget.dai-copier.1 { node_type $HDA_LINK_OUTPUT_CLASS stream_name $HDA_ANALOG_DAI_NAME dai_type "HDA" copier_type "HDA" + num_input_audio_formats 1 + num_output_audio_formats 1 + Object.Base.input_audio_format [ + { + in_rate $HDA_ANALOG_PLAYBACK_RATE + in_bit_depth 32 + in_valid_bit_depth 24 + } + ] + Object.Base.output_audio_format [ + { + out_rate $HDA_ANALOG_PLAYBACK_RATE + out_bit_depth 32 + out_valid_bit_depth 32 + } + ] } } ] @@ -67,7 +103,41 @@ IncludeByKey.BENCH_CONFIG { { index 2 + Object.Widget.mixin.1 { + num_input_audio_formats 1 + num_output_audio_formats 1 + Object.Base.input_audio_format [ + { + in_rate $HDA_ANALOG_PLAYBACK_RATE + in_bit_depth 32 + in_valid_bit_depth 24 + } + ] + Object.Base.output_audio_format [ + { + out_rate $HDA_ANALOG_PLAYBACK_RATE + out_bit_depth 32 + out_valid_bit_depth 24 + } + ] + } Object.Widget.gain.1 { + num_input_audio_formats 1 + num_output_audio_formats 1 + Object.Base.input_audio_format [ + { + in_rate $HDA_ANALOG_PLAYBACK_RATE + in_bit_depth 32 + in_valid_bit_depth 24 + } + ] + Object.Base.output_audio_format [ + { + out_rate $HDA_ANALOG_PLAYBACK_RATE + out_bit_depth 32 + out_valid_bit_depth 24 + } + ] Object.Control.mixer.1 { name 'Post Mixer $ANALOG_PLAYBACK_PCM Volume' } @@ -75,23 +145,42 @@ IncludeByKey.BENCH_CONFIG { Object.Widget.aria.1 { num_input_audio_formats 1 num_output_audio_formats 1 - # 32-bit 48KHz 2ch Object.Base.input_audio_format [ { + in_rate $HDA_ANALOG_PLAYBACK_RATE in_bit_depth 32 - in_valid_bit_depth 32 + in_valid_bit_depth 24 } ] Object.Base.output_audio_format [ { + out_rate $HDA_ANALOG_PLAYBACK_RATE out_bit_depth 32 - out_valid_bit_depth 32 + out_valid_bit_depth 24 } ] Object.Control.bytes."1" { - name "SSP2 Aria Control" + name '$ANALOG_PLAYBACK_PCM ARIA bytes' } } + Object.Widget.mixout.1 { + num_input_audio_formats 1 + num_output_audio_formats 1 + Object.Base.input_audio_format [ + { + in_rate $HDA_ANALOG_PLAYBACK_RATE + in_bit_depth 32 + in_valid_bit_depth 24 + } + ] + Object.Base.output_audio_format [ + { + out_rate $HDA_ANALOG_PLAYBACK_RATE + out_bit_depth 32 + out_valid_bit_depth 24 + } + ] + } } ] @@ -102,29 +191,115 @@ IncludeByKey.BENCH_CONFIG { Object.Widget.host-copier.1 { stream_name $ANALOG_PLAYBACK_PCM pcm_id 0 + num_input_audio_formats 3 + num_output_audio_formats 1 + Object.Base.input_audio_format [ + { + in_rate $HDA_ANALOG_PLAYBACK_RATE + in_bit_depth 16 + in_valid_bit_depth 16 + } + { + in_rate $HDA_ANALOG_PLAYBACK_RATE + in_bit_depth 32 + in_valid_bit_depth 24 + } + { + in_rate $HDA_ANALOG_PLAYBACK_RATE + in_bit_depth 32 + in_valid_bit_depth 32 + } + ] + Object.Base.output_audio_format [ + { + out_rate $HDA_ANALOG_PLAYBACK_RATE + out_bit_depth 32 + out_valid_bit_depth 24 + } + ] } Object.Widget.gain.1 { + num_input_audio_formats 1 + num_output_audio_formats 1 + Object.Base.input_audio_format [ + { + in_rate $HDA_ANALOG_PLAYBACK_RATE + in_bit_depth 32 + in_valid_bit_depth 24 + } + ] + Object.Base.output_audio_format [ + { + out_rate $HDA_ANALOG_PLAYBACK_RATE + out_bit_depth 32 + out_valid_bit_depth 24 + } + ] Object.Control.mixer.1 { name 'Pre Mixer $ANALOG_PLAYBACK_PCM Volume' } } + Object.Widget.mixin.1 { + num_input_audio_formats 1 + num_output_audio_formats 1 + Object.Base.input_audio_format [ + { + in_rate $HDA_ANALOG_PLAYBACK_RATE + in_bit_depth 32 + in_valid_bit_depth 24 + } + ] + Object.Base.output_audio_format [ + { + out_rate $HDA_ANALOG_PLAYBACK_RATE + out_bit_depth 32 + out_valid_bit_depth 24 + } + ] + } } ] host-gateway-capture [ { - index 3 + index 4 Object.Widget.host-copier.1 { stream_name $ANALOG_CAPTURE_PCM pcm_id 0 + num_input_audio_formats 1 + num_output_audio_formats 3 + Object.Base.input_audio_format [ + { + in_rate $HDA_ANALOG_CAPTURE_RATE + in_bit_depth 32 + in_valid_bit_depth 32 + } + ] + Object.Base.output_audio_format [ + { + out_rate $HDA_ANALOG_CAPTURE_RATE + out_bit_depth 16 + out_valid_bit_depth 16 + } + { + out_rate $HDA_ANALOG_CAPTURE_RATE + out_bit_depth 32 + out_valid_bit_depth 24 + } + { + out_rate $HDA_ANALOG_CAPTURE_RATE + out_bit_depth 32 + out_valid_bit_depth 32 + } + ] } } ] highpass-capture-be [ { - index 4 + index 5 direction capture Object.Widget.dai-copier."1" { @@ -138,18 +313,36 @@ IncludeByKey.BENCH_CONFIG { num_output_audio_formats 1 Object.Base.input_audio_format [ { + in_rate $HDA_ANALOG_CAPTURE_RATE in_bit_depth 32 in_valid_bit_depth 32 } ] Object.Base.output_audio_format [ { + out_rate $HDA_ANALOG_CAPTURE_RATE out_bit_depth 32 out_valid_bit_depth 32 } ] } Object.Widget.eqiir.1 { + num_input_audio_formats 1 + num_output_audio_formats 1 + Object.Base.input_audio_format [ + { + in_rate $HDA_ANALOG_CAPTURE_RATE + in_bit_depth 32 + in_valid_bit_depth 32 + } + ] + Object.Base.output_audio_format [ + { + out_rate $HDA_ANALOG_CAPTURE_RATE + out_bit_depth 32 + out_valid_bit_depth 32 + } + ] Object.Control.bytes."1" { name '$ANALOG_CAPTURE_PCM IIR Eq' } @@ -174,10 +367,10 @@ IncludeByKey.BENCH_CONFIG { } { source 'dai-copier.HDA.$HDA_ANALOG_DAI_NAME.capture' - sink 'eqiir.4.1' + sink 'eqiir.5.1' } { - source 'eqiir.4.1' + source 'eqiir.5.1' sink 'host-copier.0.capture' } { @@ -191,8 +384,8 @@ IncludeByKey.BENCH_CONFIG { # Aria component # - "aria32" { - + "aria24" { + } # diff --git a/tools/topology/topology2/development/tplg-targets-bench.cmake b/tools/topology/topology2/development/tplg-targets-bench.cmake index 0f4c540bb846..e76aab343443 100644 --- a/tools/topology/topology2/development/tplg-targets-bench.cmake +++ b/tools/topology/topology2/development/tplg-targets-bench.cmake @@ -27,7 +27,7 @@ set(component_parameters "BENCH_DCBLOCK_PARAMS=default" "BENCH_DRC_PARAMS=enabled" "BENCH_DRC_MULTIBAND_PARAMS=default" - "BENCH_EQIIR_PARAMS=highpass_50hz_0db_48khz" + "BENCH_EQIIR_PARAMS=loudness" "BENCH_EQFIR_PARAMS=loudness" "BENCH_GAIN_PARAMS=default" "BENCH_IGO_NR_PARAMS=default" @@ -37,11 +37,11 @@ set(component_parameters "BENCH_TDFB_PARAMS=default" ) -set(components_s32 +set(components_s24 "aria" ) -set(component_parameters_s32 +set(component_parameters_s24 "BENCH_ARIA_PARAMS=default" ) @@ -55,8 +55,8 @@ foreach(sf ${sampleformats}) endforeach() # Add components with single format -set (sf "32") -foreach(comp bench_param IN ZIP_LISTS components_s32 component_parameters_s32) +set (sf "24") +foreach(comp bench_param IN ZIP_LISTS components_s24 component_parameters_s24) set(item "sof-hda-generic\;sof-hda-benchmark-${comp}${sf}\;HDA_CONFIG=benchmark,BENCH_CONFIG=${comp}${sf},${bench_param}") #message(STATUS "Item=" ${item}) list(APPEND TPLGS "${item}") diff --git a/tools/topology/topology2/include/bench/aria_s32.conf b/tools/topology/topology2/include/bench/aria_s24.conf similarity index 62% rename from tools/topology/topology2/include/bench/aria_s32.conf rename to tools/topology/topology2/include/bench/aria_s24.conf index 6cea0a9b0905..c8b0be21704c 100644 --- a/tools/topology/topology2/include/bench/aria_s32.conf +++ b/tools/topology/topology2/include/bench/aria_s24.conf @@ -1,13 +1,13 @@ # Created with script "./bench_comp_generate.sh aria" Object.Widget.aria.1 { index 1 - + } Object.Widget.aria.2 { index 3 - + } - + diff --git a/tools/topology/topology2/include/bench/eqfir_control_bytes_capture.conf b/tools/topology/topology2/include/bench/eqfir_control_bytes_capture.conf index a63e00c85ad9..ecde34e399e2 100644 --- a/tools/topology/topology2/include/bench/eqfir_control_bytes_capture.conf +++ b/tools/topology/topology2/include/bench/eqfir_control_bytes_capture.conf @@ -3,8 +3,10 @@ Object.Control.bytes."1" { name '$ANALOG_CAPTURE_PCM EQFIR bytes' IncludeByKey.BENCH_EQFIR_PARAMS { - "default" "include/components/eqfir/default.conf" - "loudness" "include/components/eqfir/loudness.conf" - "passthrough" "include/components/eqfir/passthrough.conf" + "default" "include/components/eqfir/passthrough.conf" + "flat" "include/components/eqfir/flat.conf" + "loudness" "include/components/eqfir/loudness.conf" + "midboost" "include/components/eqfir/midboost.conf" + "passthrough" "include/components/eqfir/passthrough.conf" } } diff --git a/tools/topology/topology2/include/bench/eqfir_control_bytes_playback.conf b/tools/topology/topology2/include/bench/eqfir_control_bytes_playback.conf index aa0c0c8da8ea..d65fd4606b7b 100644 --- a/tools/topology/topology2/include/bench/eqfir_control_bytes_playback.conf +++ b/tools/topology/topology2/include/bench/eqfir_control_bytes_playback.conf @@ -3,8 +3,10 @@ Object.Control.bytes."1" { name '$ANALOG_PLAYBACK_PCM EQFIR bytes' IncludeByKey.BENCH_EQFIR_PARAMS { - "default" "include/components/eqfir/default.conf" - "loudness" "include/components/eqfir/loudness.conf" - "passthrough" "include/components/eqfir/passthrough.conf" + "default" "include/components/eqfir/passthrough.conf" + "flat" "include/components/eqfir/flat.conf" + "loudness" "include/components/eqfir/loudness.conf" + "midboost" "include/components/eqfir/midboost.conf" + "passthrough" "include/components/eqfir/passthrough.conf" } } diff --git a/tools/topology/topology2/include/bench/eqiir_control_bytes_capture.conf b/tools/topology/topology2/include/bench/eqiir_control_bytes_capture.conf index a8b72846b969..f5f0b4ba968f 100644 --- a/tools/topology/topology2/include/bench/eqiir_control_bytes_capture.conf +++ b/tools/topology/topology2/include/bench/eqiir_control_bytes_capture.conf @@ -3,7 +3,14 @@ Object.Control.bytes."1" { name '$ANALOG_CAPTURE_PCM EQIIR bytes' IncludeByKey.BENCH_EQIIR_PARAMS { - "default" "include/components/eqiir/default.conf" - "highpass_50hz_0db_48khz" "include/components/eqiir/highpass_50hz_0db_48khz.conf" + "default" "include/components/eqiir/passthrough.conf" + "bandpass" "include/components/eqiir/bandpass.conf" + "bassboost" "include/components/eqiir/bassboost.conf" + "flat" "include/components/eqiir/flat.conf" + "loudness" "include/components/eqiir/loudness.conf" + "passthrough" "include/components/eqiir/passthrough.conf" + "highpass_20hz_0db_48khz" "include/components/eqiir/highpass_20hz_0db_48khz.conf" + "highpass_50hz_0db_48khz" "include/components/eqiir/highpass_50hz_0db_48khz.conf" + "highpass_100hz_0db_48khz" "include/components/eqiir/highpass_100hz_0db_48khz.conf" } } diff --git a/tools/topology/topology2/include/bench/eqiir_control_bytes_playback.conf b/tools/topology/topology2/include/bench/eqiir_control_bytes_playback.conf index 5ae6ad905ee4..8164586ae8aa 100644 --- a/tools/topology/topology2/include/bench/eqiir_control_bytes_playback.conf +++ b/tools/topology/topology2/include/bench/eqiir_control_bytes_playback.conf @@ -3,7 +3,14 @@ Object.Control.bytes."1" { name '$ANALOG_PLAYBACK_PCM EQIIR bytes' IncludeByKey.BENCH_EQIIR_PARAMS { - "default" "include/components/eqiir/default.conf" - "highpass_50hz_0db_48khz" "include/components/eqiir/highpass_50hz_0db_48khz.conf" + "default" "include/components/eqiir/passthrough.conf" + "bandpass" "include/components/eqiir/bandpass.conf" + "bassboost" "include/components/eqiir/bassboost.conf" + "flat" "include/components/eqiir/flat.conf" + "loudness" "include/components/eqiir/loudness.conf" + "passthrough" "include/components/eqiir/passthrough.conf" + "highpass_20hz_0db_48khz" "include/components/eqiir/highpass_20hz_0db_48khz.conf" + "highpass_50hz_0db_48khz" "include/components/eqiir/highpass_50hz_0db_48khz.conf" + "highpass_100hz_0db_48khz" "include/components/eqiir/highpass_100hz_0db_48khz.conf" } }