@@ -40,6 +40,36 @@ ifdef(`MIC_LINK',`',
4040# HDMI ID calculated based on the configuraiton
4141define ( HDMI_BE_ID_BASE , `0' )
4242
43+ # SDW Pin as DAIs index starts from 2 on each SDW link
44+ define ( `ALH_JACK_OUT_PIN' , `2' )
45+ define ( `ALH_JACK_IN_PIN' , `3' )
46+ define ( `ALH_AMP_OUT_PIN' , `2' )
47+ define ( `ALH_DMIC_IN_PIN' , `2' )
48+
49+ define ( `ALH_JACK_OUT_NAME' , `SDW'eval ( UAJ_LINK ) `-Playback' )
50+ define ( `ALH_JACK_IN_NAME' , `SDW'eval ( UAJ_LINK ) `-Capture' )
51+ define ( `ALH_AMP_OUT_NAME' , `SDW'eval ( AMP_1_LINK ) `-Playback' )
52+ define ( `ALH_DMIC_IN_NAME' , `SDW'eval ( MIC_LINK ) `-Capture' )
53+
54+ ifdef ( `MFC' , `
55+ undefine ( `ALH_JACK_IN_PIN' )
56+ undefine ( `ALH_AMP_OUT_PIN' )
57+ undefine ( `ALH_DMIC_IN_PIN' )
58+ define ( `ALH_JACK_IN_PIN' , `4' )
59+ define ( `ALH_AMP_OUT_PIN' , `5' )
60+ define ( `ALH_DMIC_IN_PIN' , `3' )
61+
62+ # align the partial string match of full dai link name
63+ undefine ( `ALH_JACK_OUT_NAME' )
64+ undefine ( `ALH_JACK_IN_NAME' )
65+ undefine ( `ALH_AMP_OUT_NAME' )
66+ undefine ( `ALH_DMIC_IN_NAME' )
67+ define ( `ALH_JACK_OUT_NAME' , `Playback-SimpleJack' )
68+ define ( `ALH_JACK_IN_NAME' , `Capture-SimpleJack' )
69+ define ( `ALH_AMP_OUT_NAME' , `Playback-SmartAmp' )
70+ define ( `ALH_DMIC_IN_NAME' , `Capture-SmartMic' ) '
71+ )
72+
4373ifdef ( `NO_JACK' , `' ,
4474 `undefine ( `HDMI_BE_ID_BASE' )
4575 define ( HDMI_BE_ID_BASE , `2' ) '
@@ -106,16 +136,16 @@ ifdef(`NOJACK', `',
106136`
107137# PCM0 ---> volume ----> mixer --->ALH 2 BE UAJ_LINK
108138# PCM31 ---> volume ------^
109- # PCM1 <--- volume <---- ALH 3 BE UAJ_LINK
139+ # PCM1 <--- volume <---- ALH 3/4 BE UAJ_LINK
110140' )
111141ifdef ( `NOAMP' , `' ,
112142`
113- # PCM2 ---> volume ----> ALH 2 BE AMP_1_LINK
143+ # PCM2 ---> volume ----> ALH 2/5 BE AMP_1_LINK
114144ifdef ( `MONO' , `' ,
115- `# PCM40 --- > volume ---- > ALH 2 BE AMP_2_LINK' )
145+ `# PCM40 --- > volume ---- > ALH 2/5 BE AMP_2_LINK' )
116146' )
117147ifdef ( `NO_LOCAL_MIC' , `' ,
118- `# PCM4 <--- volume <---- ALH 2 BE MIC_LINK' )
148+ `# PCM4 <--- volume <---- ALH 2/3 BE MIC_LINK' )
119149
120150ifdef ( `NOHDMI' , `' ,
121151`
@@ -215,14 +245,14 @@ ifdef(`NOJACK', `',
215245# The NOT_USED_IGNORED is due to dependencies and is adjusted later with an explicit dapm line.
216246
217247DAI_ADD ( sof/pipe-mixer-volume-dai-playback.m4 ,
218- 1 , ALH , eval ( UAJ_LINK * 256 + 2 ) , `SDW'eval ( UAJ_LINK ) `-Playback' ,
248+ 1 , ALH , eval ( UAJ_LINK * 256 + ALH_JACK_OUT_PIN ) , ALH_JACK_OUT_NAME ,
219249 NOT_USE_IGNORED , 2 , s24le ,
220250 1000 , 0 , 0 , SCHEDULE_TIME_DOMAIN_TIMER , 2 , 48000 )
221251
222252# capture DAI is ALH(UAJ_LINK PIN3) using 2 periods
223253# Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0
224254DAI_ADD ( sof/pipe-dai-capture.m4 ,
225- 2 , ALH , eval ( UAJ_LINK * 256 + 3 ) , `SDW'eval ( UAJ_LINK ) `-Capture' ,
255+ 2 , ALH , eval ( UAJ_LINK * 256 + ALH_JACK_IN_PIN ) , ALH_JACK_IN_NAME ,
226256 PIPELINE_SINK_2 , 2 , s24le ,
227257 1000 , 0 , 0 , SCHEDULE_TIME_DOMAIN_TIMER )
228258
@@ -271,13 +301,13 @@ ifdef(`NOAMP', `',
271301# playback DAI is ALH(AMP_1_LINK PIN2/AMP_2_LINK PIN2) using 2 periods
272302# Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0
273303DAI_ADD ( sof/pipe-dai-playback.m4 ,
274- 3 , ALH , eval ( AMP_1_LINK * 256 + 2 ) , `SDW'eval ( AMP_1_LINK ) `-Playback' ,
304+ 3 , ALH , eval ( AMP_1_LINK * 256 + ALH_AMP_OUT_PIN ) , ALH_AMP_OUT_NAME ,
275305 PIPELINE_SOURCE_3 , 2 , s24le ,
276306 1000 , 0 , 0 , SCHEDULE_TIME_DOMAIN_TIMER )
277307
278308ifdef ( `MONO' , `' ,
279309`DAI_ADD_SCHED ( sof/pipe-dai-sched-playback.m4 ,
280- 4 , ALH , eval ( AMP_2_LINK * 256 + 2 ) , `SDW'eval ( AMP_1_LINK ) `-Playback' ,
310+ 4 , ALH , eval ( AMP_2_LINK * 256 + ALH_AMP_OUT_PIN ) , ALH_AMP_OUT_NAME ,
281311 PIPELINE_SOURCE_4 , 2 , s24le ,
282312 1000 , 0 , 0 , SCHEDULE_TIME_DOMAIN_TIMER ,
283313 PIPELINE_PLAYBACK_SCHED_COMP_3 )
@@ -299,7 +329,7 @@ ifdef(`NO_LOCAL_MIC', `',
299329# capture DAI is ALH(MIC_LINK PIN2) using 2 periods
300330# Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0
301331DAI_ADD ( sof/pipe-dai-capture.m4 ,
302- 5 , ALH , eval ( MIC_LINK * 256 + 2 ) , `SDW'eval ( MIC_LINK ) `-Capture' ,
332+ 5 , ALH , eval ( MIC_LINK * 256 + ALH_DMIC_IN_PIN ) , ALH_DMIC_IN_NAME ,
303333 PIPELINE_SINK_5 , 2 , s24le ,
304334 1000 , 0 , 0 , SCHEDULE_TIME_DOMAIN_TIMER )
305335' )
@@ -362,26 +392,26 @@ ifdef(`NOJACK', `',
362392`
363393# ALH dai index = ((link_id << 8) | PDI id)
364394# ALH UAJ_LINK Pin2 (ID: 0)
365- DAI_CONFIG ( ALH , eval ( UAJ_LINK * 256 + 2 ) , 0 , `SDW'eval ( UAJ_LINK ) `-Playback' ,
366- ALH_CONFIG ( ALH_CONFIG_DATA ( ALH , eval ( UAJ_LINK * 256 + 2 ) , 48000 , 2 )))
395+ DAI_CONFIG ( ALH , eval ( UAJ_LINK * 256 + ALH_JACK_OUT_PIN ) , 0 , ALH_JACK_OUT_NAME ,
396+ ALH_CONFIG ( ALH_CONFIG_DATA ( ALH , eval ( UAJ_LINK * 256 + ALH_JACK_OUT_PIN ) , 48000 , 2 )))
367397
368- # ALH UAJ_LINK Pin3 (ID: 1)
369- DAI_CONFIG ( ALH , eval ( UAJ_LINK * 256 + 3 ) , 1 , `SDW'eval ( UAJ_LINK ) `-Capture' ,
370- ALH_CONFIG ( ALH_CONFIG_DATA ( ALH , eval ( UAJ_LINK * 256 + 3 ) , 48000 , 2 )))
398+ # ALH UAJ_LINK Pin3/4 (ID: 1)
399+ DAI_CONFIG ( ALH , eval ( UAJ_LINK * 256 + ALH_JACK_IN_PIN ) , 1 , ALH_JACK_IN_NAME ,
400+ ALH_CONFIG ( ALH_CONFIG_DATA ( ALH , eval ( UAJ_LINK * 256 + ALH_JACK_IN_PIN ) , 48000 , 2 )))
371401' )
372402
373403ifdef ( `NOAMP' , `' ,
374404`
375- # ALH AMP_1_LINK Pin2 (ID: 2)
376- DAI_CONFIG ( ALH , eval ( AMP_1_LINK * 256 + 2 ) , 2 , `SDW'eval ( AMP_1_LINK ) `-Playback' ,
377- ALH_CONFIG ( ALH_CONFIG_DATA ( ALH , eval ( AMP_1_LINK * 256 + 2 ) , 48000 , 2 )))
405+ # ALH AMP_1_LINK Pin2/5 (ID: 2)
406+ DAI_CONFIG ( ALH , eval ( AMP_1_LINK * 256 + ALH_AMP_OUT_PIN ) , 2 , ALH_AMP_OUT_NAME ,
407+ ALH_CONFIG ( ALH_CONFIG_DATA ( ALH , eval ( AMP_1_LINK * 256 + ALH_AMP_OUT_PIN ) , 48000 , 2 )))
378408' )
379409
380410ifdef ( `NO_LOCAL_MIC' , `' ,
381411`
382- # ALH MIC_LINK Pin2 (ID: 4)
383- DAI_CONFIG ( ALH , eval ( MIC_LINK * 256 + 2 ) , 4 , `SDW'eval ( MIC_LINK ) `-Capture' ,
384- ALH_CONFIG ( ALH_CONFIG_DATA ( ALH , eval ( MIC_LINK * 256 + 2 ) , 48000 , 2 )))
412+ # ALH MIC_LINK Pin2/3 (ID: 4)
413+ DAI_CONFIG ( ALH , eval ( MIC_LINK * 256 + ALH_DMIC_IN_PIN ) , 4 , ALH_DMIC_IN_NAME ,
414+ ALH_CONFIG ( ALH_CONFIG_DATA ( ALH , eval ( MIC_LINK * 256 + ALH_DMIC_IN_PIN ) , 48000 , 2 )))
385415' )
386416
387417ifdef ( `NOHDMI' , `' ,
0 commit comments