@@ -21,6 +21,16 @@ static const struct snd_soc_acpi_codecs ptl_rt5682_rt5682s_hp = {
2121 .codecs = {RT5682_ACPI_HID , RT5682S_ACPI_HID },
2222};
2323
24+ static const struct snd_soc_acpi_codecs ptl_essx_83x6 = {
25+ .num_codecs = 3 ,
26+ .codecs = { "ESSX8316" , "ESSX8326" , "ESSX8336" },
27+ };
28+
29+ static const struct snd_soc_acpi_codecs ptl_lt6911_hdmi = {
30+ .num_codecs = 1 ,
31+ .codecs = {"INTC10B0" }
32+ };
33+
2434struct snd_soc_acpi_mach snd_soc_acpi_intel_ptl_machines [] = {
2535 {
2636 .comp_ids = & ptl_rt5682_rt5682s_hp ,
@@ -29,6 +39,21 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_ptl_machines[] = {
2939 .tplg_quirk_mask = SND_SOC_ACPI_TPLG_INTEL_AMP_NAME |
3040 SND_SOC_ACPI_TPLG_INTEL_CODEC_NAME ,
3141 },
42+ {
43+ .comp_ids = & ptl_essx_83x6 ,
44+ .drv_name = "ptl_es83x6_c1_h02" ,
45+ .machine_quirk = snd_soc_acpi_codec_list ,
46+ .quirk_data = & ptl_lt6911_hdmi ,
47+ .sof_tplg_filename = "sof-ptl-es83x6-ssp1-hdmi-ssp02.tplg" ,
48+ },
49+ {
50+ .comp_ids = & ptl_essx_83x6 ,
51+ .drv_name = "sof-essx8336" ,
52+ .sof_tplg_filename = "sof-ptl-es8336" , /* the tplg suffix is added at run time */
53+ .tplg_quirk_mask = SND_SOC_ACPI_TPLG_INTEL_SSP_NUMBER |
54+ SND_SOC_ACPI_TPLG_INTEL_SSP_MSB |
55+ SND_SOC_ACPI_TPLG_INTEL_DMIC_NUMBER ,
56+ },
3257 {},
3358};
3459EXPORT_SYMBOL_GPL (snd_soc_acpi_intel_ptl_machines );
@@ -330,6 +355,15 @@ static const struct snd_soc_acpi_adr_device rt1320_3_group1_adr[] = {
330355 }
331356};
332357
358+ static const struct snd_soc_acpi_adr_device rt721_0_single_adr [] = {
359+ {
360+ .adr = 0x000030025d072101ull ,
361+ .num_endpoints = ARRAY_SIZE (rt_mf_endpoints ),
362+ .endpoints = rt_mf_endpoints ,
363+ .name_prefix = "rt721"
364+ }
365+ };
366+
333367static const struct snd_soc_acpi_adr_device rt721_3_single_adr [] = {
334368 {
335369 .adr = 0x000330025d072101ull ,
@@ -448,6 +482,15 @@ static const struct snd_soc_acpi_link_adr ptl_cs42l43_l3[] = {
448482 {}
449483};
450484
485+ static const struct snd_soc_acpi_link_adr ptl_rt721_l0 [] = {
486+ {
487+ .mask = BIT (0 ),
488+ .num_adr = ARRAY_SIZE (rt721_0_single_adr ),
489+ .adr_d = rt721_0_single_adr ,
490+ },
491+ {}
492+ };
493+
451494static const struct snd_soc_acpi_link_adr ptl_rt722_only [] = {
452495 {
453496 .mask = BIT (0 ),
@@ -635,6 +678,13 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_ptl_sdw_machines[] = {
635678 .drv_name = "sof_sdw" ,
636679 .sof_tplg_filename = "sof-ptl-rt711.tplg" ,
637680 },
681+ {
682+ .link_mask = BIT (0 ),
683+ .links = ptl_rt721_l0 ,
684+ .drv_name = "sof_sdw" ,
685+ .sof_tplg_filename = "sof-ptl-rt721.tplg" ,
686+ .get_function_tplg_files = sof_sdw_get_tplg_files ,
687+ },
638688 {
639689 .link_mask = BIT (0 ),
640690 .links = ptl_rt722_only ,
0 commit comments