Skip to content

Commit 995b602

Browse files
committed
topology2: sof-mtl-rt5650: add USE_FMT_24 support
add 24 bits format due to some codecs not support S32_LE. Signed-off-by: Mac Chiang <mac.chiang@intel.com>
1 parent 37b36f7 commit 995b602

5 files changed

Lines changed: 106 additions & 19 deletions

File tree

tools/topology/topology2/cavs-mixin-mixout-eqiir-dts-ssp.conf

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,17 @@ Object.Pipeline {
4646
copier_type "SSP"
4747
stream_name "$HEADSET_CODEC_NAME"
4848
node_type $I2S_LINK_OUTPUT_CLASS
49+
IncludeByKey.USE_FMT_24 {
50+
"true" {
51+
Object.Base.output_audio_format [
52+
{
53+
out_bit_depth 32
54+
out_valid_bit_depth 24
55+
out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]"
56+
}
57+
]
58+
}
59+
}
4960
}
5061

5162
Object.Widget.gain.1 {
@@ -76,6 +87,17 @@ Object.Pipeline {
7687
copier_type "SSP"
7788
stream_name "$SPEAKER_CODEC_NAME"
7889
node_type $I2S_LINK_OUTPUT_CLASS
90+
IncludeByKey.USE_FMT_24 {
91+
"true" {
92+
Object.Base.output_audio_format [
93+
{
94+
out_bit_depth 32
95+
out_valid_bit_depth 24
96+
out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]"
97+
}
98+
]
99+
}
100+
}
79101
}
80102

81103
Object.Widget.gain.1 {

tools/topology/topology2/cavs-mixin-mixout-ssp.conf

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,17 @@ Object.Pipeline {
4747
copier_type "SSP"
4848
stream_name "$HEADSET_CODEC_NAME"
4949
node_type $I2S_LINK_OUTPUT_CLASS
50+
IncludeByKey.USE_FMT_24 {
51+
"true" {
52+
Object.Base.output_audio_format [
53+
{
54+
out_bit_depth 32
55+
out_valid_bit_depth 24
56+
out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]"
57+
}
58+
]
59+
}
60+
}
5061
}
5162

5263
Object.Widget.gain.1 {
@@ -64,6 +75,17 @@ Object.Pipeline {
6475
copier_type "SSP"
6576
stream_name "$SPEAKER_CODEC_NAME"
6677
node_type $I2S_LINK_OUTPUT_CLASS
78+
IncludeByKey.USE_FMT_24 {
79+
"true" {
80+
Object.Base.output_audio_format [
81+
{
82+
out_bit_depth 32
83+
out_valid_bit_depth 24
84+
out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]"
85+
}
86+
]
87+
}
88+
}
6789
}
6890

6991
Object.Widget.gain.1 {

tools/topology/topology2/cavs-rt5682.conf

Lines changed: 34 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,7 @@ Define {
118118
DMIC_PIPELINE_PRIORITY 1
119119
ECHO_REF_PIPELINE_PRIORITY 0
120120
PLAYBACK_PIPELINE_SRC "volume"
121+
USE_FMT_24 false
121122
}
122123

123124
# override defaults with platform-specific config
@@ -245,18 +246,39 @@ Object.Pipeline {
245246
copier_type "SSP"
246247
stream_name "$HEADSET_CODEC_NAME"
247248
node_type $I2S_LINK_INPUT_CLASS
248-
Object.Base.input_audio_format [
249-
{
250-
in_bit_depth 32
251-
in_valid_bit_depth 32
252-
}
253-
]
254-
Object.Base.output_audio_format [
255-
{
256-
out_bit_depth 32
257-
out_valid_bit_depth 32
258-
}
259-
]
249+
IncludeByKey.USE_FMT_24 {
250+
"true" {
251+
Object.Base.input_audio_format [
252+
{
253+
in_bit_depth 32
254+
in_valid_bit_depth 24
255+
in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]"
256+
}
257+
]
258+
Object.Base.output_audio_format [
259+
{
260+
out_bit_depth 32
261+
out_valid_bit_depth 24
262+
out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]"
263+
}
264+
]
265+
}
266+
"false" {
267+
Object.Base.input_audio_format [
268+
{
269+
in_bit_depth 32
270+
in_valid_bit_depth 32
271+
}
272+
273+
]
274+
Object.Base.output_audio_format [
275+
{
276+
out_bit_depth 32
277+
out_valid_bit_depth 32
278+
}
279+
]
280+
}
281+
}
260282
}
261283
}
262284
]

tools/topology/topology2/platform/intel/speaker-echo-ref.conf

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,26 @@ Object.Pipeline {
1414
stream_name $SPEAKER_CODEC_NAME
1515
node_type $I2S_LINK_INPUT_CLASS
1616
num_input_audio_formats 1
17-
Object.Base.input_audio_format [
18-
{
19-
in_bit_depth 32
20-
in_valid_bit_depth 32
17+
IncludeByKey.USE_FMT_24 {
18+
"true" {
19+
Object.Base.input_audio_format [
20+
{
21+
in_bit_depth 32
22+
in_valid_bit_depth 24
23+
in_fmt_cfg "$[($in_channels | ($in_valid_bit_depth * 256))]"
24+
25+
}
26+
]
2127
}
22-
]
28+
"false" {
29+
Object.Base.input_audio_format [
30+
{
31+
in_bit_depth 32
32+
in_valid_bit_depth 32
33+
}
34+
]
35+
}
36+
}
2337
num_output_audio_formats 1
2438
Object.Base.output_audio_format [
2539
{

tools/topology/topology2/production/tplg-targets-ace1.cmake

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,12 +64,19 @@ NHLT_BIN=nhlt-sof-max98357a-rt5682.bin,DEEPBUFFER_FW_DMA_MS=10,HEADSET_SSP_DAI_I
6464
SPEAKER_SSP_DAI_INDEX=0,HEADSET_CODEC_NAME=SSP2-Codec,SPEAKER_CODEC_NAME=SSP0-Codec,\
6565
INCLUDE_ECHO_REF=true,INCLUDE_BT_OFFLOAD=false"
6666

67+
"cavs-rt5682\;sof-mtl-rt5650\;PLATFORM=mtl,NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,\
68+
PDM1_MIC_B_ENABLE=1,DMIC0_PCM_ID=99,PREPROCESS_PLUGINS=nhlt,\
69+
NHLT_BIN=nhlt-sof-mtl-max98357a-rt5682.bin,DEEPBUFFER_FW_DMA_MS=10,HEADSET_SSP_DAI_INDEX=2,\
70+
SPK_ID=6,SPEAKER_SSP_DAI_INDEX=0,HEADSET_CODEC_NAME=SSP2-Codec,SPEAKER_CODEC_NAME=SSP0-Codec,\
71+
BT_NAME=SSP1-BT,BT_INDEX=1,BT_ID=7,BT_PCM_NAME=Bluetooth,INCLUDE_ECHO_REF=true,\
72+
DEEP_BUF_SPK=true,USE_FMT_24=true"
73+
6774
"cavs-rt5682\;sof-mtl-rt5650-dts\;PLATFORM=mtl,NUM_DMICS=4,PDM1_MIC_A_ENABLE=1,\
6875
PDM1_MIC_B_ENABLE=1,DMIC0_PCM_ID=99,PREPROCESS_PLUGINS=nhlt,\
6976
NHLT_BIN=nhlt-sof-mtl-max98357a-rt5682.bin,DEEPBUFFER_FW_DMA_MS=10,HEADSET_SSP_DAI_INDEX=2,\
7077
SPK_ID=6,SPEAKER_SSP_DAI_INDEX=0,HEADSET_CODEC_NAME=SSP2-Codec,SPEAKER_CODEC_NAME=SSP0-Codec,\
71-
BT_NAME=SSP1-BT,BT_INDEX=1,BT_ID=7,BT_PCM_NAME=Bluetooth,INCLUDE_ECHO_REF=true,USE_CHAIN_DMA=true,\
72-
GOOGLE_RTC_AEC_SUPPORT=1,DEEP_BUF_SPK=true,PLAYBACK_PIPELINE_SRC=dts"
78+
BT_NAME=SSP1-BT,BT_INDEX=1,BT_ID=7,BT_PCM_NAME=Bluetooth,INCLUDE_ECHO_REF=true,\
79+
DEEP_BUF_SPK=true,USE_FMT_24=true,PLAYBACK_PIPELINE_SRC=dts"
7380

7481
#ES83x6+HDMI-IN
7582
"cavs-es83x6\;sof-mtl-es83x6-ssp1-hdmi-ssp02\;PLATFORM=mtl,PREPROCESS_PLUGINS=nhlt,\

0 commit comments

Comments
 (0)