@@ -90,6 +90,30 @@ static const struct snd_soc_acpi_endpoint rt722_endpoints[] = {
9090 },
9191};
9292
93+ static const struct snd_soc_acpi_endpoint jack_amp_g1_dmic_endpoints_endpoints [] = {
94+ /* Jack Endpoint */
95+ {
96+ .num = 0 ,
97+ .aggregated = 0 ,
98+ .group_position = 0 ,
99+ .group_id = 0 ,
100+ },
101+ /* Amp Endpoint, work as spk_l_endpoint */
102+ {
103+ .num = 1 ,
104+ .aggregated = 1 ,
105+ .group_position = 0 ,
106+ .group_id = 1 ,
107+ },
108+ /* DMIC Endpoint */
109+ {
110+ .num = 2 ,
111+ .aggregated = 0 ,
112+ .group_position = 0 ,
113+ .group_id = 0 ,
114+ },
115+ };
116+
93117static const struct snd_soc_acpi_endpoint cs42l43_endpoints [] = {
94118 { /* Jack Playback Endpoint */
95119 .num = 0 ,
@@ -198,6 +222,15 @@ static const struct snd_soc_acpi_adr_device rt1712_3_single_adr[] = {
198222 }
199223};
200224
225+ static const struct snd_soc_acpi_adr_device rt712_vb_2_group1_adr [] = {
226+ {
227+ .adr = 0x000230025D071201ull ,
228+ .num_endpoints = ARRAY_SIZE (jack_amp_g1_dmic_endpoints_endpoints ),
229+ .endpoints = jack_amp_g1_dmic_endpoints_endpoints ,
230+ .name_prefix = "rt712"
231+ }
232+ };
233+
201234static const struct snd_soc_acpi_adr_device rt722_0_single_adr [] = {
202235 {
203236 .adr = 0x000030025d072201ull ,
@@ -252,6 +285,15 @@ static const struct snd_soc_acpi_adr_device rt1318_2_group1_adr[] = {
252285 }
253286};
254287
288+ static const struct snd_soc_acpi_adr_device rt1320_1_group1_adr [] = {
289+ {
290+ .adr = 0x000130025d132000ull ,
291+ .num_endpoints = 1 ,
292+ .endpoints = & spk_r_endpoint ,
293+ .name_prefix = "rt1320-1"
294+ }
295+ };
296+
255297static const struct snd_soc_acpi_adr_device rt713_0_adr [] = {
256298 {
257299 .adr = 0x000031025D071301ull ,
@@ -410,6 +452,21 @@ static const struct snd_soc_acpi_link_adr lnl_sdw_rt713_l0_rt1318_l1[] = {
410452 {}
411453};
412454
455+ static const struct snd_soc_acpi_link_adr lnl_sdw_rt712_vb_l2_rt1320_l1 [] = {
456+ {
457+ .mask = BIT (2 ),
458+ .num_adr = ARRAY_SIZE (rt712_vb_2_group1_adr ),
459+ .adr_d = rt712_vb_2_group1_adr ,
460+ },
461+ {
462+ .mask = BIT (1 ),
463+ .num_adr = ARRAY_SIZE (rt1320_1_group1_adr ),
464+ .adr_d = rt1320_1_group1_adr ,
465+ },
466+ {}
467+ };
468+
469+ /* this table is used when there is no I2S codec present */
413470/* this table is used when there is no I2S codec present */
414471struct snd_soc_acpi_mach snd_soc_acpi_intel_lnl_sdw_machines [] = {
415472 /* mockup tests need to be first */
@@ -485,6 +542,12 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_lnl_sdw_machines[] = {
485542 .drv_name = "sof_sdw" ,
486543 .sof_tplg_filename = "sof-lnl-rt713-l0-rt1318-l1.tplg"
487544 },
545+ {
546+ .link_mask = BIT (1 ) | BIT (2 ),
547+ .links = lnl_sdw_rt712_vb_l2_rt1320_l1 ,
548+ .drv_name = "sof_sdw" ,
549+ .sof_tplg_filename = "sof-lnl-rt712-l2-rt1320-l1.tplg"
550+ },
488551 {},
489552};
490553EXPORT_SYMBOL_GPL (snd_soc_acpi_intel_lnl_sdw_machines );
0 commit comments