Skip to content

Commit

Permalink
Tools: Topology2: Add build of 96 kHz DMIC nocodec topologies for PTL
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
singalsu committed Sep 12, 2024
1 parent 65f77ab commit dae98ff
Show file tree
Hide file tree
Showing 3 changed files with 66 additions and 2 deletions.
46 changes: 46 additions & 0 deletions tools/topology/topology2/cavs-nocodec.conf
Original file line number Diff line number Diff line change
Expand Up @@ -329,10 +329,12 @@ IncludeByKey.PASSTHROUGH {
num_input_audio_formats 2
Object.Base.input_audio_format [
{
in_rate $DMIC0_RATE
in_bit_depth 32
in_valid_bit_depth 32
}
{
in_rate $DMIC0_RATE
in_channels 4
in_bit_depth 32
in_valid_bit_depth 32
Expand All @@ -344,10 +346,12 @@ IncludeByKey.PASSTHROUGH {
num_output_audio_formats 2
Object.Base.output_audio_format [
{
out_rate $DMIC0_RATE
out_bit_depth 32
out_valid_bit_depth 32
}
{
out_rate $DMIC0_RATE
out_channels 4
out_bit_depth 32
out_valid_bit_depth 32
Expand All @@ -361,10 +365,12 @@ IncludeByKey.PASSTHROUGH {
num_input_audio_formats 2
Object.Base.input_audio_format [
{
in_rate $DMIC0_RATE
in_bit_depth 32
in_valid_bit_depth 32
}
{
in_rate $DMIC0_RATE
in_channels 4
in_bit_depth 32
in_valid_bit_depth 32
Expand All @@ -376,10 +382,12 @@ IncludeByKey.PASSTHROUGH {
num_output_audio_formats 2
Object.Base.output_audio_format [
{
out_rate $DMIC0_RATE
out_bit_depth 32
out_valid_bit_depth 32
}
{
out_rate $DMIC0_RATE
out_channels 4
out_bit_depth 32
out_valid_bit_depth 32
Expand Down Expand Up @@ -765,10 +773,12 @@ IncludeByKey.PASSTHROUGH {
num_input_audio_formats 2
Object.Base.input_audio_format [
{
in_rate $DMIC0_RATE
in_bit_depth 32
in_valid_bit_depth 32
}
{
in_rate $DMIC0_RATE
in_channels 4
in_bit_depth 32
in_valid_bit_depth 32
Expand All @@ -780,10 +790,12 @@ IncludeByKey.PASSTHROUGH {
num_output_audio_formats 2
Object.Base.output_audio_format [
{
out_rate $DMIC0_RATE
out_bit_depth 32
out_valid_bit_depth 32
}
{
out_rate $DMIC0_RATE
out_channels 4
out_bit_depth 32
out_valid_bit_depth 32
Expand All @@ -797,10 +809,12 @@ IncludeByKey.PASSTHROUGH {
num_input_audio_formats 2
Object.Base.input_audio_format [
{
in_rate $DMIC0_RATE
in_bit_depth 32
in_valid_bit_depth 32
}
{
in_rate $DMIC0_RATE
in_channels 4
in_bit_depth 32
in_valid_bit_depth 32
Expand All @@ -812,10 +826,12 @@ IncludeByKey.PASSTHROUGH {
num_output_audio_formats 2
Object.Base.output_audio_format [
{
out_rate $DMIC0_RATE
out_bit_depth 32
out_valid_bit_depth 32
}
{
out_rate $DMIC0_RATE
out_channels 4
out_bit_depth 32
out_valid_bit_depth 32
Expand All @@ -841,10 +857,12 @@ IncludeByKey.PASSTHROUGH {
num_input_audio_formats 2
Object.Base.input_audio_format [
{
in_rate $DMIC0_RATE
in_bit_depth 32
in_valid_bit_depth 32
}
{
in_rate $DMIC0_RATE
in_channels 4
in_bit_depth 32
in_valid_bit_depth 32
Expand All @@ -856,10 +874,12 @@ IncludeByKey.PASSTHROUGH {
num_output_audio_formats 2
Object.Base.output_audio_format [
{
out_rate $DMIC0_RATE
out_bit_depth 32
out_valid_bit_depth 32
}
{
out_rate $DMIC0_RATE
out_channels 4
out_bit_depth 32
out_valid_bit_depth 32
Expand All @@ -873,10 +893,12 @@ IncludeByKey.PASSTHROUGH {
num_input_audio_formats 2
Object.Base.input_audio_format [
{
in_rate $DMIC0_RATE
in_bit_depth 32
in_valid_bit_depth 32
}
{
in_rate $DMIC0_RATE
in_channels 4
in_bit_depth 32
in_valid_bit_depth 32
Expand All @@ -888,10 +910,12 @@ IncludeByKey.PASSTHROUGH {
num_output_audio_formats 2
Object.Base.output_audio_format [
{
out_rate $DMIC0_RATE
out_bit_depth 32
out_valid_bit_depth 32
}
{
out_rate $DMIC0_RATE
out_channels 4
out_bit_depth 32
out_valid_bit_depth 32
Expand Down Expand Up @@ -961,6 +985,17 @@ IncludeByKey.PASSTHROUGH {
formats 'S32_LE'
channels_min $NUM_DMICS
channels_max $NUM_DMICS
IncludeByKey.DMIC0_RATE {
"16000" {
rates '16000'
}
"48000" {
rates '48000'
}
"96000" {
rates '96000'
}
}
}
}
{
Expand All @@ -975,6 +1010,17 @@ IncludeByKey.PASSTHROUGH {
formats 'S32_LE'
channels_min $NUM_DMICS
channels_max $NUM_DMICS
IncludeByKey.DMIC0_RATE {
"16000" {
rates '16000'
}
"48000" {
rates '48000'
}
"96000" {
rates '96000'
}
}
}
}
{
Expand Down
9 changes: 9 additions & 0 deletions tools/topology/topology2/development/tplg-targets.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,10 @@ NHLT_BIN=nhlt-sof-lnl-nocodec-fpga-4ch.bin,PASSTHROUGH=true,DMIC_IO_CLK=19200000
"cavs-nocodec\;sof-ptl-nocodec\;PLATFORM=ptl,NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,PDM1_MIC_B_ENABLE=1,\
PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-ptl-nocodec.bin"

# SSP topology for PTL with 96 kHz DMIC
"cavs-nocodec\;sof-ptl-nocodec-dmic-4ch-96k\;PLATFORM=ptl,NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,PDM1_MIC_B_ENABLE=1,\
DMIC0_RATE=96000,PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-ptl-nocodec-dmic-4ch-96k.bin"

# SSP topology for PTL FPGA with lower DMIC IO clock of 19.2MHz, 2ch PDM0 enabled
"cavs-nocodec\;sof-ptl-nocodec-fpga-2ch-pdm0\;PLATFORM=ptl,NUM_DMICS=2,PREPROCESS_PLUGINS=nhlt,\
NHLT_BIN=nhlt-sof-ptl-nocodec-fpga-2ch-pdm0.bin,PASSTHROUGH=true,DMIC_IO_CLK=19200000"
Expand All @@ -73,6 +77,11 @@ NHLT_BIN=nhlt-sof-ptl-nocodec-fpga-2ch-pdm0.bin,PASSTHROUGH=true,DMIC_IO_CLK=192
PDM1_MIC_B_ENABLE=1,PREPROCESS_PLUGINS=nhlt,\
NHLT_BIN=nhlt-sof-ptl-nocodec-fpga-4ch.bin,PASSTHROUGH=true,DMIC_IO_CLK=19200000"

# SSP topology for PTL FPGA with lower DMIC IO clock of 19.2MHz, 4ch both PDM0 and PDM1 enabled, with 96 kHz DMIC
"cavs-nocodec\;sof-ptl-nocodec-fpga-dmic-4ch-96k\;PLATFORM=ptl,NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,\
PDM1_MIC_B_ENABLE=1,DMIC0_RATE=96000,PREPROCESS_PLUGINS=nhlt,\
NHLT_BIN=nhlt-sof-ptl-nocodec-fpga-dmic-4ch-96k.bin,PASSTHROUGH=true,DMIC_IO_CLK=19200000"

# Topology for PTL with max98357a and rt5682
"cavs-rt5682\;sof-ptl-max98357a-rt5682-ssp2-ssp0\;PLATFORM=ptl,NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,\
PDM1_MIC_B_ENABLE=1,DMIC0_PCM_ID=99,PREPROCESS_PLUGINS=nhlt,\
Expand Down
13 changes: 11 additions & 2 deletions tools/topology/topology2/platform/intel/dmic-generic.conf
Original file line number Diff line number Diff line change
Expand Up @@ -721,8 +721,17 @@ Object.PCM.pcm [
formats 'S32_LE'
channels_min $DMIC0_PCM_CHANNELS
channels_max $DMIC0_PCM_CHANNELS
rate_min $DMIC0_RATE
rate_max $DMIC0_RATE
IncludeByKey.DMIC0_RATE {
"16000" {
rates '16000'
}
"48000" {
rates '48000'
}
"96000" {
rates '96000'
}
}
}
}
]
Expand Down

0 comments on commit dae98ff

Please sign in to comment.