Skip to content

Commit 57c8c85

Browse files
committed
Tools: Topology2: Add build of 96 kHz DMIC nocodec topologies for PTL
This patch adds build of topologies where DMIC0 related pipelines and PCMs are set to operate with 96 kHz rate. - sof-ptl-nocodec-dmic-4ch-96k.tplg - sof-ptl-nocodec-fpga-dmic-4ch-96k.tplg Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
1 parent 8d370a8 commit 57c8c85

File tree

3 files changed

+66
-2
lines changed

3 files changed

+66
-2
lines changed

tools/topology/topology2/cavs-nocodec.conf

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -330,10 +330,12 @@ IncludeByKey.PASSTHROUGH {
330330
num_input_audio_formats 2
331331
Object.Base.input_audio_format [
332332
{
333+
in_rate $DMIC0_RATE
333334
in_bit_depth 32
334335
in_valid_bit_depth 32
335336
}
336337
{
338+
in_rate $DMIC0_RATE
337339
in_channels 4
338340
in_bit_depth 32
339341
in_valid_bit_depth 32
@@ -345,10 +347,12 @@ IncludeByKey.PASSTHROUGH {
345347
num_output_audio_formats 2
346348
Object.Base.output_audio_format [
347349
{
350+
out_rate $DMIC0_RATE
348351
out_bit_depth 32
349352
out_valid_bit_depth 32
350353
}
351354
{
355+
out_rate $DMIC0_RATE
352356
out_channels 4
353357
out_bit_depth 32
354358
out_valid_bit_depth 32
@@ -362,10 +366,12 @@ IncludeByKey.PASSTHROUGH {
362366
num_input_audio_formats 2
363367
Object.Base.input_audio_format [
364368
{
369+
in_rate $DMIC0_RATE
365370
in_bit_depth 32
366371
in_valid_bit_depth 32
367372
}
368373
{
374+
in_rate $DMIC0_RATE
369375
in_channels 4
370376
in_bit_depth 32
371377
in_valid_bit_depth 32
@@ -377,10 +383,12 @@ IncludeByKey.PASSTHROUGH {
377383
num_output_audio_formats 2
378384
Object.Base.output_audio_format [
379385
{
386+
out_rate $DMIC0_RATE
380387
out_bit_depth 32
381388
out_valid_bit_depth 32
382389
}
383390
{
391+
out_rate $DMIC0_RATE
384392
out_channels 4
385393
out_bit_depth 32
386394
out_valid_bit_depth 32
@@ -766,10 +774,12 @@ IncludeByKey.PASSTHROUGH {
766774
num_input_audio_formats 2
767775
Object.Base.input_audio_format [
768776
{
777+
in_rate $DMIC0_RATE
769778
in_bit_depth 32
770779
in_valid_bit_depth 32
771780
}
772781
{
782+
in_rate $DMIC0_RATE
773783
in_channels 4
774784
in_bit_depth 32
775785
in_valid_bit_depth 32
@@ -781,10 +791,12 @@ IncludeByKey.PASSTHROUGH {
781791
num_output_audio_formats 2
782792
Object.Base.output_audio_format [
783793
{
794+
out_rate $DMIC0_RATE
784795
out_bit_depth 32
785796
out_valid_bit_depth 32
786797
}
787798
{
799+
out_rate $DMIC0_RATE
788800
out_channels 4
789801
out_bit_depth 32
790802
out_valid_bit_depth 32
@@ -798,10 +810,12 @@ IncludeByKey.PASSTHROUGH {
798810
num_input_audio_formats 2
799811
Object.Base.input_audio_format [
800812
{
813+
in_rate $DMIC0_RATE
801814
in_bit_depth 32
802815
in_valid_bit_depth 32
803816
}
804817
{
818+
in_rate $DMIC0_RATE
805819
in_channels 4
806820
in_bit_depth 32
807821
in_valid_bit_depth 32
@@ -813,10 +827,12 @@ IncludeByKey.PASSTHROUGH {
813827
num_output_audio_formats 2
814828
Object.Base.output_audio_format [
815829
{
830+
out_rate $DMIC0_RATE
816831
out_bit_depth 32
817832
out_valid_bit_depth 32
818833
}
819834
{
835+
out_rate $DMIC0_RATE
820836
out_channels 4
821837
out_bit_depth 32
822838
out_valid_bit_depth 32
@@ -842,10 +858,12 @@ IncludeByKey.PASSTHROUGH {
842858
num_input_audio_formats 2
843859
Object.Base.input_audio_format [
844860
{
861+
in_rate $DMIC0_RATE
845862
in_bit_depth 32
846863
in_valid_bit_depth 32
847864
}
848865
{
866+
in_rate $DMIC0_RATE
849867
in_channels 4
850868
in_bit_depth 32
851869
in_valid_bit_depth 32
@@ -857,10 +875,12 @@ IncludeByKey.PASSTHROUGH {
857875
num_output_audio_formats 2
858876
Object.Base.output_audio_format [
859877
{
878+
out_rate $DMIC0_RATE
860879
out_bit_depth 32
861880
out_valid_bit_depth 32
862881
}
863882
{
883+
out_rate $DMIC0_RATE
864884
out_channels 4
865885
out_bit_depth 32
866886
out_valid_bit_depth 32
@@ -874,10 +894,12 @@ IncludeByKey.PASSTHROUGH {
874894
num_input_audio_formats 2
875895
Object.Base.input_audio_format [
876896
{
897+
in_rate $DMIC0_RATE
877898
in_bit_depth 32
878899
in_valid_bit_depth 32
879900
}
880901
{
902+
in_rate $DMIC0_RATE
881903
in_channels 4
882904
in_bit_depth 32
883905
in_valid_bit_depth 32
@@ -889,10 +911,12 @@ IncludeByKey.PASSTHROUGH {
889911
num_output_audio_formats 2
890912
Object.Base.output_audio_format [
891913
{
914+
out_rate $DMIC0_RATE
892915
out_bit_depth 32
893916
out_valid_bit_depth 32
894917
}
895918
{
919+
out_rate $DMIC0_RATE
896920
out_channels 4
897921
out_bit_depth 32
898922
out_valid_bit_depth 32
@@ -962,6 +986,17 @@ IncludeByKey.PASSTHROUGH {
962986
formats 'S32_LE'
963987
channels_min $NUM_DMICS
964988
channels_max $NUM_DMICS
989+
IncludeByKey.DMIC0_RATE {
990+
"16000" {
991+
rates '48000'
992+
}
993+
"48000" {
994+
rates '48000'
995+
}
996+
"96000" {
997+
rates '96000'
998+
}
999+
}
9651000
}
9661001
}
9671002
{
@@ -976,6 +1011,17 @@ IncludeByKey.PASSTHROUGH {
9761011
formats 'S32_LE'
9771012
channels_min $NUM_DMICS
9781013
channels_max $NUM_DMICS
1014+
IncludeByKey.DMIC0_RATE {
1015+
"16000" {
1016+
rates '48000'
1017+
}
1018+
"48000" {
1019+
rates '48000'
1020+
}
1021+
"96000" {
1022+
rates '96000'
1023+
}
1024+
}
9791025
}
9801026
}
9811027
{

tools/topology/topology2/development/tplg-targets.cmake

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,10 @@ NHLT_BIN=nhlt-sof-lnl-nocodec-fpga-4ch.bin,PASSTHROUGH=true,DMIC_IO_CLK=19200000
5959
"cavs-nocodec\;sof-ptl-nocodec\;PLATFORM=ptl,NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,PDM1_MIC_B_ENABLE=1,\
6060
PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-ptl-nocodec.bin"
6161

62+
# SSP topology for PTL with 96 kHz DMIC
63+
"cavs-nocodec\;sof-ptl-nocodec-dmic-4ch-96k\;PLATFORM=ptl,NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,PDM1_MIC_B_ENABLE=1,\
64+
DMIC0_RATE=96000,PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-ptl-nocodec-dmic-4ch-96k.bin"
65+
6266
# SSP topology for PTL FPGA with lower DMIC IO clock of 19.2MHz, 2ch PDM0 enabled
6367
"cavs-nocodec\;sof-ptl-nocodec-fpga-2ch-pdm0\;PLATFORM=ptl,NUM_DMICS=2,PREPROCESS_PLUGINS=nhlt,\
6468
NHLT_BIN=nhlt-sof-ptl-nocodec-fpga-2ch-pdm0.bin,PASSTHROUGH=true,DMIC_IO_CLK=19200000"
@@ -68,6 +72,11 @@ NHLT_BIN=nhlt-sof-ptl-nocodec-fpga-2ch-pdm0.bin,PASSTHROUGH=true,DMIC_IO_CLK=192
6872
PDM1_MIC_B_ENABLE=1,PREPROCESS_PLUGINS=nhlt,\
6973
NHLT_BIN=nhlt-sof-ptl-nocodec-fpga-4ch.bin,PASSTHROUGH=true,DMIC_IO_CLK=19200000"
7074

75+
# SSP topology for PTL FPGA with lower DMIC IO clock of 19.2MHz, 4ch both PDM0 and PDM1 enabled, with 96 kHz DMIC
76+
"cavs-nocodec\;sof-ptl-nocodec-fpga-dmic-4ch-96k\;PLATFORM=ptl,NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,\
77+
PDM1_MIC_B_ENABLE=1,DMIC0_RATE=96000,PREPROCESS_PLUGINS=nhlt,\
78+
NHLT_BIN=nhlt-sof-ptl-nocodec-fpga-dmic-4ch-96k.bin,PASSTHROUGH=true,DMIC_IO_CLK=19200000"
79+
7180
# Topology for PTL with max98357a and rt5682
7281
"cavs-rt5682\;sof-ptl-max98357a-rt5682-ssp2-ssp0\;PLATFORM=ptl,NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,\
7382
PDM1_MIC_B_ENABLE=1,DMIC0_PCM_ID=99,PREPROCESS_PLUGINS=nhlt,\

tools/topology/topology2/platform/intel/dmic-generic.conf

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -518,8 +518,17 @@ Object.PCM.pcm [
518518
formats 'S32_LE'
519519
channels_min $NUM_DMICS
520520
channels_max $NUM_DMICS
521-
rate_min $DMIC0_RATE
522-
rate_max $DMIC0_RATE
521+
IncludeByKey.DMIC0_RATE {
522+
"16000" {
523+
rates '48000'
524+
}
525+
"48000" {
526+
rates '48000'
527+
}
528+
"96000" {
529+
rates '96000'
530+
}
531+
}
523532
}
524533
}
525534
]

0 commit comments

Comments
 (0)