Skip to content

Commit 7dfe578

Browse files
committed
topology: sof-jsl-rt5682: add sof-jsl-rt5682.tplg
This topology supports JSL boards which implement ALC5682I-VD/VS on SSP0 port without speaker amplifier. Signed-off-by: Brent Lu <brent.lu@intel.com> (cherry picked from commit 8a394bb)
1 parent dd08b24 commit 7dfe578

2 files changed

Lines changed: 11 additions & 5 deletions

File tree

tools/topology/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,7 @@ set(TPLGS
147147
"sof-jsl-rt5682\;sof-jsl-rt5682-rt1015-xperi\;-DHEADPHONE=rt5682\;-DPLATFORM=jsl-rt1015\;-DINCLUDE_IIR_EQ=1"
148148
"sof-jsl-rt5682\;sof-jsl-rt5682-mx98360a\;-DHEADPHONE=rt5682\;-DPLATFORM=jsl-dedede"
149149
"sof-jsl-rt5682\;sof-jsl-cs42l42-mx98360a\;-DHEADPHONE=cs42l42\;-DPLATFORM=jsl-dedede"
150+
"sof-jsl-rt5682\;sof-jsl-rt5682\;-DHEADPHONE=rt5682\;-DPLATFORM=icl\;-DNO_AMP"
150151
)
151152

152153
add_custom_target(topologies ALL)

tools/topology/sof-jsl-rt5682.m4

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,8 @@ DEBUG_START
2626
#
2727
# Define the pipelines
2828
#
29-
# PCM0 ----> volume -----> SSP1 (Speaker - ALC1015)
29+
ifdef(`NO_AMP',`',`
30+
# PCM0 ----> volume -----> SSP1 (Speaker - ALC1015)')
3031
`# PCM1 <---> volume <----> SSP0 (Headset - 'HEADPHONE`)'
3132
# PCM2 ----> volume -----> iDisp1
3233
# PCM3 ----> volume -----> iDisp2
@@ -58,6 +59,7 @@ dnl PIPELINE_PCM_ADD(pipeline,
5859
dnl pipe id, pcm, max channels, format,
5960
dnl frames, deadline, priority, core)
6061

62+
ifdef(`NO_AMP',`',`
6163
# Low Latency playback pipeline 1 on PCM 0 using max 2 channels of s32le.
6264
# Schedule 48 frames per 1000us deadline on core 0 with priority 0
6365
define(ENDPOINT_NAME, `Speakers')
@@ -66,7 +68,7 @@ PIPELINE_PCM_ADD(
6668
1, 0, 2, s32le,
6769
1000, 0, 0,
6870
48000, 48000, 48000)
69-
undefine(ENDPOINT_NAME)
71+
undefine(ENDPOINT_NAME)')
7072

7173
# Low Latency playback pipeline 2 on PCM 1 using max 2 channels of s32le.
7274
# Schedule 48 frames per 1000us deadline on core 0 with priority 0
@@ -116,12 +118,13 @@ dnl pipe id, dai type, dai_index, dai_be,
116118
dnl buffer, periods, format,
117119
dnl frames, deadline, priority, core)
118120

121+
ifdef(`NO_AMP',`',`
119122
# playback DAI is SSP1 using 2 periods
120123
# Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0
121124
DAI_ADD(sof/pipe-dai-playback.m4,
122125
1, SSP, SPK_INDEX, SPK_NAME,
123126
PIPELINE_SOURCE_1, 2, SPK_DATA_FORMAT,
124-
1000, 0, 0, SCHEDULE_TIME_DOMAIN_TIMER)
127+
1000, 0, 0, SCHEDULE_TIME_DOMAIN_TIMER)')
125128

126129
# playback DAI is SSP0 using 2 periods
127130
# Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0
@@ -160,7 +163,8 @@ DAI_ADD(sof/pipe-dai-playback.m4,
160163

161164
# PCM Low Latency, id 0
162165
dnl PCM_PLAYBACK_ADD(name, pcm_id, playback)
163-
PCM_PLAYBACK_ADD(Speakers, 0, PIPELINE_PCM_1)
166+
ifdef(`NO_AMP',`',`
167+
PCM_PLAYBACK_ADD(Speakers, 0, PIPELINE_PCM_1)')
164168
PCM_DUPLEX_ADD(Headset, 1, PIPELINE_PCM_2, PIPELINE_PCM_3)
165169
PCM_PLAYBACK_ADD(HDMI1, 2, PIPELINE_PCM_5)
166170
PCM_PLAYBACK_ADD(HDMI2, 3, PIPELINE_PCM_6)
@@ -193,9 +197,10 @@ DAI_CONFIG(SSP, 0, 0, SSP0-Codec,
193197
SSP_CONFIG_DATA(SSP, 0, 24, 0, 0, 0, SSP_CC_BCLK_ES)))
194198
', )
195199

200+
ifdef(`NO_AMP',`',`
196201
# SSP 1 (ID: 6)
197202
DAI_CONFIG(SSP, SPK_INDEX, 6, SPK_NAME,
198-
SET_SSP_CONFIG)
203+
SET_SSP_CONFIG)')
199204

200205
# 4 HDMI/DP outputs (ID: 3,4,5)
201206
DAI_CONFIG(HDA, 0, 3, iDisp1,

0 commit comments

Comments
 (0)