14c8a4cabSKai Vehmanen // SPDX-License-Identifier: GPL-2.0-only 24c8a4cabSKai Vehmanen /* 34c8a4cabSKai Vehmanen * soc-apci-intel-adl-match.c - tables and support for ADL ACPI enumeration. 44c8a4cabSKai Vehmanen * 54c8a4cabSKai Vehmanen * Copyright (c) 2020, Intel Corporation. 64c8a4cabSKai Vehmanen */ 74c8a4cabSKai Vehmanen 84c8a4cabSKai Vehmanen #include <sound/soc-acpi.h> 94c8a4cabSKai Vehmanen #include <sound/soc-acpi-intel-match.h> 104c8a4cabSKai Vehmanen 112ec8b081SMuralidhar Reddy static const struct snd_soc_acpi_codecs essx_83x6 = { 122ec8b081SMuralidhar Reddy .num_codecs = 3, 132ec8b081SMuralidhar Reddy .codecs = { "ESSX8316", "ESSX8326", "ESSX8336"}, 142ec8b081SMuralidhar Reddy }; 152ec8b081SMuralidhar Reddy 164c8a4cabSKai Vehmanen static const struct snd_soc_acpi_endpoint single_endpoint = { 174c8a4cabSKai Vehmanen .num = 0, 184c8a4cabSKai Vehmanen .aggregated = 0, 194c8a4cabSKai Vehmanen .group_position = 0, 204c8a4cabSKai Vehmanen .group_id = 0, 214c8a4cabSKai Vehmanen }; 224c8a4cabSKai Vehmanen 23093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_endpoint spk_l_endpoint = { 24093b9dcbSPierre-Louis Bossart .num = 0, 25093b9dcbSPierre-Louis Bossart .aggregated = 1, 26093b9dcbSPierre-Louis Bossart .group_position = 0, 27093b9dcbSPierre-Louis Bossart .group_id = 1, 28093b9dcbSPierre-Louis Bossart }; 29093b9dcbSPierre-Louis Bossart 30093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_endpoint spk_r_endpoint = { 31093b9dcbSPierre-Louis Bossart .num = 0, 32093b9dcbSPierre-Louis Bossart .aggregated = 1, 33093b9dcbSPierre-Louis Bossart .group_position = 1, 34093b9dcbSPierre-Louis Bossart .group_id = 1, 35093b9dcbSPierre-Louis Bossart }; 36093b9dcbSPierre-Louis Bossart 374c8a4cabSKai Vehmanen static const struct snd_soc_acpi_adr_device rt711_0_adr[] = { 384c8a4cabSKai Vehmanen { 390c52d3e2SPierre-Louis Bossart .adr = 0x000020025D071100ull, 404c8a4cabSKai Vehmanen .num_endpoints = 1, 414c8a4cabSKai Vehmanen .endpoints = &single_endpoint, 424c8a4cabSKai Vehmanen .name_prefix = "rt711" 434c8a4cabSKai Vehmanen } 444c8a4cabSKai Vehmanen }; 454c8a4cabSKai Vehmanen 46093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_adr_device rt1308_1_group1_adr[] = { 47093b9dcbSPierre-Louis Bossart { 480c52d3e2SPierre-Louis Bossart .adr = 0x000120025D130800ull, 49093b9dcbSPierre-Louis Bossart .num_endpoints = 1, 50093b9dcbSPierre-Louis Bossart .endpoints = &spk_l_endpoint, 51093b9dcbSPierre-Louis Bossart .name_prefix = "rt1308-1" 52093b9dcbSPierre-Louis Bossart } 53093b9dcbSPierre-Louis Bossart }; 54093b9dcbSPierre-Louis Bossart 55093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_adr_device rt1308_2_group1_adr[] = { 56093b9dcbSPierre-Louis Bossart { 570c52d3e2SPierre-Louis Bossart .adr = 0x000220025D130800ull, 58093b9dcbSPierre-Louis Bossart .num_endpoints = 1, 59093b9dcbSPierre-Louis Bossart .endpoints = &spk_r_endpoint, 60093b9dcbSPierre-Louis Bossart .name_prefix = "rt1308-2" 61093b9dcbSPierre-Louis Bossart } 62093b9dcbSPierre-Louis Bossart }; 63093b9dcbSPierre-Louis Bossart 64093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_adr_device rt715_3_adr[] = { 65093b9dcbSPierre-Louis Bossart { 660c52d3e2SPierre-Louis Bossart .adr = 0x000320025D071500ull, 67093b9dcbSPierre-Louis Bossart .num_endpoints = 1, 68093b9dcbSPierre-Louis Bossart .endpoints = &single_endpoint, 69093b9dcbSPierre-Louis Bossart .name_prefix = "rt715" 70093b9dcbSPierre-Louis Bossart } 71093b9dcbSPierre-Louis Bossart }; 72093b9dcbSPierre-Louis Bossart 73093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_adr_device rt711_sdca_0_adr[] = { 74093b9dcbSPierre-Louis Bossart { 750c52d3e2SPierre-Louis Bossart .adr = 0x000030025D071101ull, 76093b9dcbSPierre-Louis Bossart .num_endpoints = 1, 77093b9dcbSPierre-Louis Bossart .endpoints = &single_endpoint, 78093b9dcbSPierre-Louis Bossart .name_prefix = "rt711" 79093b9dcbSPierre-Louis Bossart } 80093b9dcbSPierre-Louis Bossart }; 81093b9dcbSPierre-Louis Bossart 82359ace2bSGongjun Song static const struct snd_soc_acpi_adr_device rt711_sdca_2_adr[] = { 83359ace2bSGongjun Song { 84359ace2bSGongjun Song .adr = 0x000230025D071101ull, 85359ace2bSGongjun Song .num_endpoints = 1, 86359ace2bSGongjun Song .endpoints = &single_endpoint, 87359ace2bSGongjun Song .name_prefix = "rt711" 88359ace2bSGongjun Song } 89359ace2bSGongjun Song }; 90359ace2bSGongjun Song 91093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_adr_device rt1316_1_group1_adr[] = { 92093b9dcbSPierre-Louis Bossart { 930c52d3e2SPierre-Louis Bossart .adr = 0x000131025D131601ull, /* unique ID is set for some reason */ 94093b9dcbSPierre-Louis Bossart .num_endpoints = 1, 95093b9dcbSPierre-Louis Bossart .endpoints = &spk_l_endpoint, 96093b9dcbSPierre-Louis Bossart .name_prefix = "rt1316-1" 97093b9dcbSPierre-Louis Bossart } 98093b9dcbSPierre-Louis Bossart }; 99093b9dcbSPierre-Louis Bossart 100093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_adr_device rt1316_2_group1_adr[] = { 101093b9dcbSPierre-Louis Bossart { 1020c52d3e2SPierre-Louis Bossart .adr = 0x000230025D131601ull, 103093b9dcbSPierre-Louis Bossart .num_endpoints = 1, 104093b9dcbSPierre-Louis Bossart .endpoints = &spk_r_endpoint, 105093b9dcbSPierre-Louis Bossart .name_prefix = "rt1316-2" 106093b9dcbSPierre-Louis Bossart } 107093b9dcbSPierre-Louis Bossart }; 108093b9dcbSPierre-Louis Bossart 109093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_adr_device rt1316_3_group1_adr[] = { 110093b9dcbSPierre-Louis Bossart { 1110c52d3e2SPierre-Louis Bossart .adr = 0x000330025D131601ull, 112093b9dcbSPierre-Louis Bossart .num_endpoints = 1, 113093b9dcbSPierre-Louis Bossart .endpoints = &spk_r_endpoint, 114093b9dcbSPierre-Louis Bossart .name_prefix = "rt1316-2" 115093b9dcbSPierre-Louis Bossart } 116093b9dcbSPierre-Louis Bossart }; 117093b9dcbSPierre-Louis Bossart 118359ace2bSGongjun Song static const struct snd_soc_acpi_adr_device rt1316_0_group2_adr[] = { 119359ace2bSGongjun Song { 120359ace2bSGongjun Song .adr = 0x000031025D131601ull, 121359ace2bSGongjun Song .num_endpoints = 1, 122359ace2bSGongjun Song .endpoints = &spk_l_endpoint, 123359ace2bSGongjun Song .name_prefix = "rt1316-1" 124359ace2bSGongjun Song } 125359ace2bSGongjun Song }; 126359ace2bSGongjun Song 127359ace2bSGongjun Song static const struct snd_soc_acpi_adr_device rt1316_1_group2_adr[] = { 128359ace2bSGongjun Song { 129359ace2bSGongjun Song .adr = 0x000130025D131601ull, 130359ace2bSGongjun Song .num_endpoints = 1, 131359ace2bSGongjun Song .endpoints = &spk_r_endpoint, 132359ace2bSGongjun Song .name_prefix = "rt1316-2" 133359ace2bSGongjun Song } 134359ace2bSGongjun Song }; 135359ace2bSGongjun Song 136b62a1a83SPierre-Louis Bossart static const struct snd_soc_acpi_adr_device rt1316_1_single_adr[] = { 137b62a1a83SPierre-Louis Bossart { 138b62a1a83SPierre-Louis Bossart .adr = 0x000130025D131601ull, 139b62a1a83SPierre-Louis Bossart .num_endpoints = 1, 140b62a1a83SPierre-Louis Bossart .endpoints = &single_endpoint, 141b62a1a83SPierre-Louis Bossart .name_prefix = "rt1316-1" 142b62a1a83SPierre-Louis Bossart } 143b62a1a83SPierre-Louis Bossart }; 144b62a1a83SPierre-Louis Bossart 145870dc42fSPierre-Louis Bossart static const struct snd_soc_acpi_adr_device rt1316_2_single_adr[] = { 146870dc42fSPierre-Louis Bossart { 1470c52d3e2SPierre-Louis Bossart .adr = 0x000230025D131601ull, 148870dc42fSPierre-Louis Bossart .num_endpoints = 1, 149870dc42fSPierre-Louis Bossart .endpoints = &single_endpoint, 150870dc42fSPierre-Louis Bossart .name_prefix = "rt1316-1" 151870dc42fSPierre-Louis Bossart } 152870dc42fSPierre-Louis Bossart }; 153870dc42fSPierre-Louis Bossart 1548d38cc29SPierre-Louis Bossart static const struct snd_soc_acpi_adr_device rt1316_3_single_adr[] = { 1558d38cc29SPierre-Louis Bossart { 1568d38cc29SPierre-Louis Bossart .adr = 0x000330025D131601ull, 1578d38cc29SPierre-Louis Bossart .num_endpoints = 1, 1588d38cc29SPierre-Louis Bossart .endpoints = &single_endpoint, 1598d38cc29SPierre-Louis Bossart .name_prefix = "rt1316-1" 1608d38cc29SPierre-Louis Bossart } 1618d38cc29SPierre-Louis Bossart }; 1628d38cc29SPierre-Louis Bossart 163870dc42fSPierre-Louis Bossart static const struct snd_soc_acpi_adr_device rt714_0_adr[] = { 164870dc42fSPierre-Louis Bossart { 1650c52d3e2SPierre-Louis Bossart .adr = 0x000030025D071401ull, 166870dc42fSPierre-Louis Bossart .num_endpoints = 1, 167870dc42fSPierre-Louis Bossart .endpoints = &single_endpoint, 168870dc42fSPierre-Louis Bossart .name_prefix = "rt714" 169870dc42fSPierre-Louis Bossart } 170870dc42fSPierre-Louis Bossart }; 171870dc42fSPierre-Louis Bossart 172093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_adr_device rt714_2_adr[] = { 173093b9dcbSPierre-Louis Bossart { 1740c52d3e2SPierre-Louis Bossart .adr = 0x000230025D071401ull, 175093b9dcbSPierre-Louis Bossart .num_endpoints = 1, 176093b9dcbSPierre-Louis Bossart .endpoints = &single_endpoint, 177093b9dcbSPierre-Louis Bossart .name_prefix = "rt714" 178093b9dcbSPierre-Louis Bossart } 179093b9dcbSPierre-Louis Bossart }; 180093b9dcbSPierre-Louis Bossart 181093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_adr_device rt714_3_adr[] = { 182093b9dcbSPierre-Louis Bossart { 1830c52d3e2SPierre-Louis Bossart .adr = 0x000330025D071401ull, 184093b9dcbSPierre-Louis Bossart .num_endpoints = 1, 185093b9dcbSPierre-Louis Bossart .endpoints = &single_endpoint, 186093b9dcbSPierre-Louis Bossart .name_prefix = "rt714" 187093b9dcbSPierre-Louis Bossart } 188093b9dcbSPierre-Louis Bossart }; 189093b9dcbSPierre-Louis Bossart 190093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_link_adr adl_default[] = { 191093b9dcbSPierre-Louis Bossart { 192093b9dcbSPierre-Louis Bossart .mask = BIT(0), 193093b9dcbSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt711_0_adr), 194093b9dcbSPierre-Louis Bossart .adr_d = rt711_0_adr, 195093b9dcbSPierre-Louis Bossart }, 196093b9dcbSPierre-Louis Bossart { 197093b9dcbSPierre-Louis Bossart .mask = BIT(1), 198093b9dcbSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt1308_1_group1_adr), 199093b9dcbSPierre-Louis Bossart .adr_d = rt1308_1_group1_adr, 200093b9dcbSPierre-Louis Bossart }, 201093b9dcbSPierre-Louis Bossart { 202093b9dcbSPierre-Louis Bossart .mask = BIT(2), 203093b9dcbSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt1308_2_group1_adr), 204093b9dcbSPierre-Louis Bossart .adr_d = rt1308_2_group1_adr, 205093b9dcbSPierre-Louis Bossart }, 206093b9dcbSPierre-Louis Bossart { 207093b9dcbSPierre-Louis Bossart .mask = BIT(3), 208093b9dcbSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt715_3_adr), 209093b9dcbSPierre-Louis Bossart .adr_d = rt715_3_adr, 210093b9dcbSPierre-Louis Bossart }, 211093b9dcbSPierre-Louis Bossart {} 212093b9dcbSPierre-Louis Bossart }; 213093b9dcbSPierre-Louis Bossart 214093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_link_adr adl_sdca_default[] = { 215093b9dcbSPierre-Louis Bossart { 216093b9dcbSPierre-Louis Bossart .mask = BIT(0), 217093b9dcbSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt711_sdca_0_adr), 218093b9dcbSPierre-Louis Bossart .adr_d = rt711_sdca_0_adr, 219093b9dcbSPierre-Louis Bossart }, 220093b9dcbSPierre-Louis Bossart { 221093b9dcbSPierre-Louis Bossart .mask = BIT(1), 222093b9dcbSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt1316_1_group1_adr), 223093b9dcbSPierre-Louis Bossart .adr_d = rt1316_1_group1_adr, 224093b9dcbSPierre-Louis Bossart }, 225093b9dcbSPierre-Louis Bossart { 226093b9dcbSPierre-Louis Bossart .mask = BIT(2), 227093b9dcbSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt1316_2_group1_adr), 228093b9dcbSPierre-Louis Bossart .adr_d = rt1316_2_group1_adr, 229093b9dcbSPierre-Louis Bossart }, 230093b9dcbSPierre-Louis Bossart { 231093b9dcbSPierre-Louis Bossart .mask = BIT(3), 232093b9dcbSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt714_3_adr), 233093b9dcbSPierre-Louis Bossart .adr_d = rt714_3_adr, 234093b9dcbSPierre-Louis Bossart }, 235093b9dcbSPierre-Louis Bossart {} 236093b9dcbSPierre-Louis Bossart }; 237093b9dcbSPierre-Louis Bossart 238093b9dcbSPierre-Louis Bossart static const struct snd_soc_acpi_link_adr adl_sdca_3_in_1[] = { 239093b9dcbSPierre-Louis Bossart { 240093b9dcbSPierre-Louis Bossart .mask = BIT(0), 241093b9dcbSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt711_sdca_0_adr), 242093b9dcbSPierre-Louis Bossart .adr_d = rt711_sdca_0_adr, 243093b9dcbSPierre-Louis Bossart }, 244093b9dcbSPierre-Louis Bossart { 245093b9dcbSPierre-Louis Bossart .mask = BIT(1), 246093b9dcbSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt1316_1_group1_adr), 247093b9dcbSPierre-Louis Bossart .adr_d = rt1316_1_group1_adr, 248093b9dcbSPierre-Louis Bossart }, 249093b9dcbSPierre-Louis Bossart { 250093b9dcbSPierre-Louis Bossart .mask = BIT(2), 251093b9dcbSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt714_2_adr), 252093b9dcbSPierre-Louis Bossart .adr_d = rt714_2_adr, 253093b9dcbSPierre-Louis Bossart }, 254093b9dcbSPierre-Louis Bossart { 255093b9dcbSPierre-Louis Bossart .mask = BIT(3), 256093b9dcbSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt1316_3_group1_adr), 257093b9dcbSPierre-Louis Bossart .adr_d = rt1316_3_group1_adr, 258093b9dcbSPierre-Louis Bossart }, 259093b9dcbSPierre-Louis Bossart {} 260093b9dcbSPierre-Louis Bossart }; 261093b9dcbSPierre-Louis Bossart 262359ace2bSGongjun Song static const struct snd_soc_acpi_link_adr adl_sdw_rt711_link2_rt1316_link01_rt714_link3[] = { 263359ace2bSGongjun Song { 264359ace2bSGongjun Song .mask = BIT(2), 265359ace2bSGongjun Song .num_adr = ARRAY_SIZE(rt711_sdca_2_adr), 266359ace2bSGongjun Song .adr_d = rt711_sdca_2_adr, 267359ace2bSGongjun Song }, 268359ace2bSGongjun Song { 269359ace2bSGongjun Song .mask = BIT(0), 270359ace2bSGongjun Song .num_adr = ARRAY_SIZE(rt1316_0_group2_adr), 271359ace2bSGongjun Song .adr_d = rt1316_0_group2_adr, 272359ace2bSGongjun Song }, 273359ace2bSGongjun Song { 274359ace2bSGongjun Song .mask = BIT(1), 275359ace2bSGongjun Song .num_adr = ARRAY_SIZE(rt1316_1_group2_adr), 276359ace2bSGongjun Song .adr_d = rt1316_1_group2_adr, 277359ace2bSGongjun Song }, 278359ace2bSGongjun Song { 279359ace2bSGongjun Song .mask = BIT(3), 280359ace2bSGongjun Song .num_adr = ARRAY_SIZE(rt714_3_adr), 281359ace2bSGongjun Song .adr_d = rt714_3_adr, 282359ace2bSGongjun Song }, 283359ace2bSGongjun Song {} 284359ace2bSGongjun Song }; 285359ace2bSGongjun Song 286c4dcd710SLibin Yang static const struct snd_soc_acpi_link_adr adl_sdw_rt711_link2_rt1316_link01[] = { 287c4dcd710SLibin Yang { 288c4dcd710SLibin Yang .mask = BIT(2), 289c4dcd710SLibin Yang .num_adr = ARRAY_SIZE(rt711_sdca_2_adr), 290c4dcd710SLibin Yang .adr_d = rt711_sdca_2_adr, 291c4dcd710SLibin Yang }, 292c4dcd710SLibin Yang { 293c4dcd710SLibin Yang .mask = BIT(0), 294c4dcd710SLibin Yang .num_adr = ARRAY_SIZE(rt1316_0_group2_adr), 295c4dcd710SLibin Yang .adr_d = rt1316_0_group2_adr, 296c4dcd710SLibin Yang }, 297c4dcd710SLibin Yang { 298c4dcd710SLibin Yang .mask = BIT(1), 299c4dcd710SLibin Yang .num_adr = ARRAY_SIZE(rt1316_1_group2_adr), 300c4dcd710SLibin Yang .adr_d = rt1316_1_group2_adr, 301c4dcd710SLibin Yang }, 302c4dcd710SLibin Yang {} 303c4dcd710SLibin Yang }; 304c4dcd710SLibin Yang 305a1797d61SGongjun Song static const struct snd_soc_acpi_link_adr adl_sdw_rt1316_link12_rt714_link0[] = { 306a1797d61SGongjun Song { 307a1797d61SGongjun Song .mask = BIT(1), 308a1797d61SGongjun Song .num_adr = ARRAY_SIZE(rt1316_1_group1_adr), 309a1797d61SGongjun Song .adr_d = rt1316_1_group1_adr, 310a1797d61SGongjun Song }, 311a1797d61SGongjun Song { 312a1797d61SGongjun Song .mask = BIT(2), 313a1797d61SGongjun Song .num_adr = ARRAY_SIZE(rt1316_2_group1_adr), 314a1797d61SGongjun Song .adr_d = rt1316_2_group1_adr, 315a1797d61SGongjun Song }, 316a1797d61SGongjun Song { 317a1797d61SGongjun Song .mask = BIT(0), 318a1797d61SGongjun Song .num_adr = ARRAY_SIZE(rt714_0_adr), 319a1797d61SGongjun Song .adr_d = rt714_0_adr, 320a1797d61SGongjun Song }, 321a1797d61SGongjun Song {} 322a1797d61SGongjun Song }; 323a1797d61SGongjun Song 324b62a1a83SPierre-Louis Bossart static const struct snd_soc_acpi_link_adr adl_sdw_rt1316_link1_rt714_link0[] = { 325b62a1a83SPierre-Louis Bossart { 326b62a1a83SPierre-Louis Bossart .mask = BIT(1), 327b62a1a83SPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt1316_1_single_adr), 328b62a1a83SPierre-Louis Bossart .adr_d = rt1316_1_single_adr, 329b62a1a83SPierre-Louis Bossart }, 330b62a1a83SPierre-Louis Bossart { 331b62a1a83SPierre-Louis Bossart .mask = BIT(0), 332b62a1a83SPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt714_0_adr), 333b62a1a83SPierre-Louis Bossart .adr_d = rt714_0_adr, 334b62a1a83SPierre-Louis Bossart }, 335b62a1a83SPierre-Louis Bossart {} 336b62a1a83SPierre-Louis Bossart }; 337b62a1a83SPierre-Louis Bossart 33811e18f58SGongjun Song static const struct snd_soc_acpi_link_adr adl_sdw_rt1316_link2_rt714_link3[] = { 33911e18f58SGongjun Song { 34011e18f58SGongjun Song .mask = BIT(2), 34111e18f58SGongjun Song .num_adr = ARRAY_SIZE(rt1316_2_single_adr), 34211e18f58SGongjun Song .adr_d = rt1316_2_single_adr, 34311e18f58SGongjun Song }, 34411e18f58SGongjun Song { 34511e18f58SGongjun Song .mask = BIT(3), 34611e18f58SGongjun Song .num_adr = ARRAY_SIZE(rt714_3_adr), 34711e18f58SGongjun Song .adr_d = rt714_3_adr, 34811e18f58SGongjun Song }, 34911e18f58SGongjun Song {} 35011e18f58SGongjun Song }; 35111e18f58SGongjun Song 352870dc42fSPierre-Louis Bossart static const struct snd_soc_acpi_link_adr adl_sdw_rt1316_link2_rt714_link0[] = { 353870dc42fSPierre-Louis Bossart { 354870dc42fSPierre-Louis Bossart .mask = BIT(2), 355870dc42fSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt1316_2_single_adr), 356870dc42fSPierre-Louis Bossart .adr_d = rt1316_2_single_adr, 357870dc42fSPierre-Louis Bossart }, 358870dc42fSPierre-Louis Bossart { 359870dc42fSPierre-Louis Bossart .mask = BIT(0), 360870dc42fSPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt714_0_adr), 361870dc42fSPierre-Louis Bossart .adr_d = rt714_0_adr, 362870dc42fSPierre-Louis Bossart }, 363870dc42fSPierre-Louis Bossart {} 364870dc42fSPierre-Louis Bossart }; 365870dc42fSPierre-Louis Bossart 3668d38cc29SPierre-Louis Bossart static const struct snd_soc_acpi_link_adr adl_sdw_rt711_link0_rt1316_link3[] = { 3678d38cc29SPierre-Louis Bossart { 3688d38cc29SPierre-Louis Bossart .mask = BIT(0), 3698d38cc29SPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt711_sdca_0_adr), 3708d38cc29SPierre-Louis Bossart .adr_d = rt711_sdca_0_adr, 3718d38cc29SPierre-Louis Bossart }, 3728d38cc29SPierre-Louis Bossart { 3738d38cc29SPierre-Louis Bossart .mask = BIT(3), 3748d38cc29SPierre-Louis Bossart .num_adr = ARRAY_SIZE(rt1316_3_single_adr), 3758d38cc29SPierre-Louis Bossart .adr_d = rt1316_3_single_adr, 3768d38cc29SPierre-Louis Bossart }, 3778d38cc29SPierre-Louis Bossart {} 3788d38cc29SPierre-Louis Bossart }; 3798d38cc29SPierre-Louis Bossart 3809c691a42SEugene Huang static const struct snd_soc_acpi_link_adr adl_sdw_rt711_link0_rt1316_link2[] = { 3819c691a42SEugene Huang { 3829c691a42SEugene Huang .mask = BIT(0), 3839c691a42SEugene Huang .num_adr = ARRAY_SIZE(rt711_sdca_0_adr), 3849c691a42SEugene Huang .adr_d = rt711_sdca_0_adr, 3859c691a42SEugene Huang }, 3869c691a42SEugene Huang { 3879c691a42SEugene Huang .mask = BIT(2), 3889c691a42SEugene Huang .num_adr = ARRAY_SIZE(rt1316_2_single_adr), 3899c691a42SEugene Huang .adr_d = rt1316_2_single_adr, 3909c691a42SEugene Huang }, 3919c691a42SEugene Huang {} 3929c691a42SEugene Huang }; 3939c691a42SEugene Huang 394c0fbe9fdSVamshi Krishna Gopal static const struct snd_soc_acpi_adr_device mx8373_2_adr[] = { 395c0fbe9fdSVamshi Krishna Gopal { 396c0fbe9fdSVamshi Krishna Gopal .adr = 0x000223019F837300ull, 397c0fbe9fdSVamshi Krishna Gopal .num_endpoints = 1, 398c0fbe9fdSVamshi Krishna Gopal .endpoints = &spk_l_endpoint, 399c0fbe9fdSVamshi Krishna Gopal .name_prefix = "Left" 400c0fbe9fdSVamshi Krishna Gopal }, 401c0fbe9fdSVamshi Krishna Gopal { 402c0fbe9fdSVamshi Krishna Gopal .adr = 0x000227019F837300ull, 403c0fbe9fdSVamshi Krishna Gopal .num_endpoints = 1, 404c0fbe9fdSVamshi Krishna Gopal .endpoints = &spk_r_endpoint, 405c0fbe9fdSVamshi Krishna Gopal .name_prefix = "Right" 406c0fbe9fdSVamshi Krishna Gopal } 407c0fbe9fdSVamshi Krishna Gopal }; 408c0fbe9fdSVamshi Krishna Gopal 409c0fbe9fdSVamshi Krishna Gopal static const struct snd_soc_acpi_adr_device rt5682_0_adr[] = { 410c0fbe9fdSVamshi Krishna Gopal { 411c0fbe9fdSVamshi Krishna Gopal .adr = 0x000021025D568200ull, 412c0fbe9fdSVamshi Krishna Gopal .num_endpoints = 1, 413c0fbe9fdSVamshi Krishna Gopal .endpoints = &single_endpoint, 414c0fbe9fdSVamshi Krishna Gopal .name_prefix = "rt5682" 415c0fbe9fdSVamshi Krishna Gopal } 416c0fbe9fdSVamshi Krishna Gopal }; 417c0fbe9fdSVamshi Krishna Gopal 4184c8a4cabSKai Vehmanen static const struct snd_soc_acpi_link_adr adl_rvp[] = { 4194c8a4cabSKai Vehmanen { 4204c8a4cabSKai Vehmanen .mask = BIT(0), 4214c8a4cabSKai Vehmanen .num_adr = ARRAY_SIZE(rt711_0_adr), 4224c8a4cabSKai Vehmanen .adr_d = rt711_0_adr, 4234c8a4cabSKai Vehmanen }, 4244c8a4cabSKai Vehmanen {} 4254c8a4cabSKai Vehmanen }; 4264c8a4cabSKai Vehmanen 427d7be9e33SMuralidhar Reddy static const struct snd_soc_acpi_link_adr adlps_rvp[] = { 428d7be9e33SMuralidhar Reddy { 429d7be9e33SMuralidhar Reddy .mask = BIT(0), 430d7be9e33SMuralidhar Reddy .num_adr = ARRAY_SIZE(rt711_sdca_0_adr), 431d7be9e33SMuralidhar Reddy .adr_d = rt711_sdca_0_adr, 432d7be9e33SMuralidhar Reddy }, 433d7be9e33SMuralidhar Reddy {} 434d7be9e33SMuralidhar Reddy }; 435d7be9e33SMuralidhar Reddy 436c0fbe9fdSVamshi Krishna Gopal static const struct snd_soc_acpi_link_adr adl_chromebook_base[] = { 437c0fbe9fdSVamshi Krishna Gopal { 438c0fbe9fdSVamshi Krishna Gopal .mask = BIT(0), 439c0fbe9fdSVamshi Krishna Gopal .num_adr = ARRAY_SIZE(rt5682_0_adr), 440c0fbe9fdSVamshi Krishna Gopal .adr_d = rt5682_0_adr, 441c0fbe9fdSVamshi Krishna Gopal }, 442c0fbe9fdSVamshi Krishna Gopal { 443c0fbe9fdSVamshi Krishna Gopal .mask = BIT(2), 444c0fbe9fdSVamshi Krishna Gopal .num_adr = ARRAY_SIZE(mx8373_2_adr), 445c0fbe9fdSVamshi Krishna Gopal .adr_d = mx8373_2_adr, 446c0fbe9fdSVamshi Krishna Gopal }, 447c0fbe9fdSVamshi Krishna Gopal {} 448c0fbe9fdSVamshi Krishna Gopal }; 449c0fbe9fdSVamshi Krishna Gopal 4502a29ff7aSVamshi Krishna Gopal static const struct snd_soc_acpi_codecs adl_max98373_amp = { 4512a29ff7aSVamshi Krishna Gopal .num_codecs = 1, 4522a29ff7aSVamshi Krishna Gopal .codecs = {"MX98373"} 4532a29ff7aSVamshi Krishna Gopal }; 4542a29ff7aSVamshi Krishna Gopal 4552a29ff7aSVamshi Krishna Gopal static const struct snd_soc_acpi_codecs adl_max98357a_amp = { 4562a29ff7aSVamshi Krishna Gopal .num_codecs = 1, 4572a29ff7aSVamshi Krishna Gopal .codecs = {"MX98357A"} 4582a29ff7aSVamshi Krishna Gopal }; 4592a29ff7aSVamshi Krishna Gopal 4609c892547SMalik_Hsu static const struct snd_soc_acpi_codecs adl_max98360a_amp = { 4619c892547SMalik_Hsu .num_codecs = 1, 4629c892547SMalik_Hsu .codecs = {"MX98360A"} 4639c892547SMalik_Hsu }; 4649c892547SMalik_Hsu 465d4f3fdc2SBrent Lu static const struct snd_soc_acpi_codecs adl_rt5682_rt5682s_hp = { 466d4f3fdc2SBrent Lu .num_codecs = 2, 467d4f3fdc2SBrent Lu .codecs = {"10EC5682", "RTL5682"}, 468d4f3fdc2SBrent Lu }; 469d4f3fdc2SBrent Lu 47013c459faSBrent Lu static const struct snd_soc_acpi_codecs adl_rt1015p_amp = { 47113c459faSBrent Lu .num_codecs = 1, 47213c459faSBrent Lu .codecs = {"RTL1015"} 47313c459faSBrent Lu }; 47413c459faSBrent Lu 4758d0872f6SMac Chiang static const struct snd_soc_acpi_codecs adl_rt1019p_amp = { 4768d0872f6SMac Chiang .num_codecs = 1, 4778d0872f6SMac Chiang .codecs = {"RTL1019"} 4788d0872f6SMac Chiang }; 4798d0872f6SMac Chiang 480f316c9d9SMac Chiang static const struct snd_soc_acpi_codecs adl_max98390_amp = { 481f316c9d9SMac Chiang .num_codecs = 1, 482f316c9d9SMac Chiang .codecs = {"MX98390"} 483f316c9d9SMac Chiang }; 484f316c9d9SMac Chiang 48586b1959aSMuralidhar Reddy static const struct snd_soc_acpi_codecs adl_lt6911_hdmi = { 48686b1959aSMuralidhar Reddy .num_codecs = 1, 48786b1959aSMuralidhar Reddy .codecs = {"INTC10B0"} 48886b1959aSMuralidhar Reddy }; 48986b1959aSMuralidhar Reddy 490ba7523bbSAjye Huang static const struct snd_soc_acpi_codecs adl_nau8318_amp = { 491ba7523bbSAjye Huang .num_codecs = 1, 492ba7523bbSAjye Huang .codecs = {"NVTN2012"} 493ba7523bbSAjye Huang }; 494ba7523bbSAjye Huang 4954c8a4cabSKai Vehmanen struct snd_soc_acpi_mach snd_soc_acpi_intel_adl_machines[] = { 4962a29ff7aSVamshi Krishna Gopal { 497d4f3fdc2SBrent Lu .comp_ids = &adl_rt5682_rt5682s_hp, 498590cfb08SPierre-Louis Bossart .drv_name = "adl_mx98373_rt5682", 4992a29ff7aSVamshi Krishna Gopal .machine_quirk = snd_soc_acpi_codec_list, 5002a29ff7aSVamshi Krishna Gopal .quirk_data = &adl_max98373_amp, 5012a29ff7aSVamshi Krishna Gopal .sof_tplg_filename = "sof-adl-max98373-rt5682.tplg", 5022a29ff7aSVamshi Krishna Gopal }, 5032a29ff7aSVamshi Krishna Gopal { 504d4f3fdc2SBrent Lu .comp_ids = &adl_rt5682_rt5682s_hp, 5053c561a09SBrent Lu .drv_name = "adl_mx98357_rt5682", 5062a29ff7aSVamshi Krishna Gopal .machine_quirk = snd_soc_acpi_codec_list, 5072a29ff7aSVamshi Krishna Gopal .quirk_data = &adl_max98357a_amp, 5082a29ff7aSVamshi Krishna Gopal .sof_tplg_filename = "sof-adl-max98357a-rt5682.tplg", 5092a29ff7aSVamshi Krishna Gopal }, 5109c892547SMalik_Hsu { 511d4f3fdc2SBrent Lu .comp_ids = &adl_rt5682_rt5682s_hp, 5129c892547SMalik_Hsu .drv_name = "adl_mx98360_rt5682", 5139c892547SMalik_Hsu .machine_quirk = snd_soc_acpi_codec_list, 5149c892547SMalik_Hsu .quirk_data = &adl_max98360a_amp, 5159c892547SMalik_Hsu .sof_tplg_filename = "sof-adl-max98360a-rt5682.tplg", 5169c892547SMalik_Hsu }, 5178d0872f6SMac Chiang { 5188d0872f6SMac Chiang .id = "10508825", 5193e78986aSArnd Bergmann .drv_name = "adl_rt1019p_8825", 5208d0872f6SMac Chiang .machine_quirk = snd_soc_acpi_codec_list, 5218d0872f6SMac Chiang .quirk_data = &adl_rt1019p_amp, 5228d0872f6SMac Chiang .sof_tplg_filename = "sof-adl-rt1019-nau8825.tplg", 5238d0872f6SMac Chiang }, 5248d0872f6SMac Chiang { 5258d0872f6SMac Chiang .id = "10508825", 5263e78986aSArnd Bergmann .drv_name = "adl_max98373_8825", 5278d0872f6SMac Chiang .machine_quirk = snd_soc_acpi_codec_list, 5288d0872f6SMac Chiang .quirk_data = &adl_max98373_amp, 5298d0872f6SMac Chiang .sof_tplg_filename = "sof-adl-max98373-nau8825.tplg", 5308d0872f6SMac Chiang }, 5318d0872f6SMac Chiang { 5328d0872f6SMac Chiang .id = "10508825", 5333e78986aSArnd Bergmann .drv_name = "adl_mx98360a_8825", 5348d0872f6SMac Chiang .machine_quirk = snd_soc_acpi_codec_list, 5358d0872f6SMac Chiang .quirk_data = &adl_max98360a_amp, 5365fa66f29SDavid Lin .sof_tplg_filename = "sof-adl-max98360a-nau8825.tplg", 5378d0872f6SMac Chiang }, 5388d0872f6SMac Chiang { 5391a9a5ebeSAjye Huang .comp_ids = &adl_rt5682_rt5682s_hp, 5401a9a5ebeSAjye Huang .drv_name = "adl_rt1019_rt5682", 5410b56ed19SVamshi Krishna .machine_quirk = snd_soc_acpi_codec_list, 5420b56ed19SVamshi Krishna .quirk_data = &adl_rt1019p_amp, 5430b56ed19SVamshi Krishna .sof_tplg_filename = "sof-adl-rt1019-rt5682.tplg", 5440b56ed19SVamshi Krishna }, 5450b56ed19SVamshi Krishna { 5468d0872f6SMac Chiang .id = "10508825", 5473e78986aSArnd Bergmann .drv_name = "adl_rt1015p_8825", 54813c459faSBrent Lu .machine_quirk = snd_soc_acpi_codec_list, 54913c459faSBrent Lu .quirk_data = &adl_rt1015p_amp, 55013c459faSBrent Lu .sof_tplg_filename = "sof-adl-rt1015-nau8825.tplg", 55113c459faSBrent Lu }, 55213c459faSBrent Lu { 55313c459faSBrent Lu .id = "10508825", 554ba7523bbSAjye Huang .drv_name = "adl_nau8318_8825", 555ba7523bbSAjye Huang .machine_quirk = snd_soc_acpi_codec_list, 556ba7523bbSAjye Huang .quirk_data = &adl_nau8318_amp, 557ba7523bbSAjye Huang .sof_tplg_filename = "sof-adl-nau8318-nau8825.tplg", 558ba7523bbSAjye Huang }, 559ba7523bbSAjye Huang { 560ba7523bbSAjye Huang .id = "10508825", 5618d0872f6SMac Chiang .drv_name = "sof_nau8825", 5628d0872f6SMac Chiang .sof_tplg_filename = "sof-adl-nau8825.tplg", 5638d0872f6SMac Chiang }, 564f316c9d9SMac Chiang { 565f316c9d9SMac Chiang .comp_ids = &adl_rt5682_rt5682s_hp, 566f316c9d9SMac Chiang .drv_name = "adl_max98390_rt5682", 567f316c9d9SMac Chiang .machine_quirk = snd_soc_acpi_codec_list, 568f316c9d9SMac Chiang .quirk_data = &adl_max98390_amp, 569f316c9d9SMac Chiang .sof_tplg_filename = "sof-adl-max98390-rt5682.tplg", 570f316c9d9SMac Chiang }, 571c8e98eafSAjye Huang { 572c8e98eafSAjye Huang .comp_ids = &adl_rt5682_rt5682s_hp, 573f3c37847Sapoorv .drv_name = "adl_rt5682_c1_h02", 574f3c37847Sapoorv .machine_quirk = snd_soc_acpi_codec_list, 575f3c37847Sapoorv .quirk_data = &adl_lt6911_hdmi, 576f3c37847Sapoorv .sof_tplg_filename = "sof-adl-rt5682-ssp1-hdmi-ssp02.tplg", 577f3c37847Sapoorv }, 578f3c37847Sapoorv { 579f3c37847Sapoorv .comp_ids = &adl_rt5682_rt5682s_hp, 580c8e98eafSAjye Huang .drv_name = "adl_rt5682", 581c8e98eafSAjye Huang .sof_tplg_filename = "sof-adl-rt5682.tplg", 582c8e98eafSAjye Huang }, 583cd486d37SBrent Lu { 584cd486d37SBrent Lu .id = "10134242", 585cd486d37SBrent Lu .drv_name = "adl_mx98360a_cs4242", 586cd486d37SBrent Lu .machine_quirk = snd_soc_acpi_codec_list, 587cd486d37SBrent Lu .quirk_data = &adl_max98360a_amp, 588cd486d37SBrent Lu .sof_tplg_filename = "sof-adl-max98360a-cs42l42.tplg", 589cd486d37SBrent Lu }, 5902ec8b081SMuralidhar Reddy { 5912ec8b081SMuralidhar Reddy .comp_ids = &essx_83x6, 59286b1959aSMuralidhar Reddy .drv_name = "adl_es83x6_c1_h02", 59386b1959aSMuralidhar Reddy .machine_quirk = snd_soc_acpi_codec_list, 59486b1959aSMuralidhar Reddy .quirk_data = &adl_lt6911_hdmi, 59586b1959aSMuralidhar Reddy .sof_tplg_filename = "sof-adl-es83x6-ssp1-hdmi-ssp02.tplg", 59686b1959aSMuralidhar Reddy }, 59786b1959aSMuralidhar Reddy { 59886b1959aSMuralidhar Reddy .comp_ids = &essx_83x6, 5992ec8b081SMuralidhar Reddy .drv_name = "sof-essx8336", 600858a438aSPierre-Louis Bossart .sof_tplg_filename = "sof-adl-es8336", /* the tplg suffix is added at run time */ 6012ec8b081SMuralidhar Reddy .tplg_quirk_mask = SND_SOC_ACPI_TPLG_INTEL_SSP_NUMBER | 6022ec8b081SMuralidhar Reddy SND_SOC_ACPI_TPLG_INTEL_SSP_MSB | 6032ec8b081SMuralidhar Reddy SND_SOC_ACPI_TPLG_INTEL_DMIC_NUMBER, 6042ec8b081SMuralidhar Reddy }, 605c3a3c06eSBalamurugan C /* place amp-only boards in the end of table */ 606c3a3c06eSBalamurugan C { 607c3a3c06eSBalamurugan C .id = "CSC3541", 608c3a3c06eSBalamurugan C .drv_name = "adl_cs35l41", 609c3a3c06eSBalamurugan C .sof_tplg_filename = "sof-adl-cs35l41.tplg", 610c3a3c06eSBalamurugan C }, 6115376d37bSBalamurugan C { 6125376d37bSBalamurugan C .id = "INTC10B0", 6135376d37bSBalamurugan C .drv_name = "adl_lt6911_hdmi_ssp", 6145376d37bSBalamurugan C .sof_tplg_filename = "sof-adl-nocodec-hdmi-ssp02.tplg" 6155376d37bSBalamurugan C }, 6164c8a4cabSKai Vehmanen {}, 6174c8a4cabSKai Vehmanen }; 6184c8a4cabSKai Vehmanen EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_adl_machines); 6194c8a4cabSKai Vehmanen 6204c8a4cabSKai Vehmanen /* this table is used when there is no I2S codec present */ 6214c8a4cabSKai Vehmanen struct snd_soc_acpi_mach snd_soc_acpi_intel_adl_sdw_machines[] = { 6224c8a4cabSKai Vehmanen { 623093b9dcbSPierre-Louis Bossart .link_mask = 0xF, /* 4 active links required */ 624093b9dcbSPierre-Louis Bossart .links = adl_default, 625093b9dcbSPierre-Louis Bossart .drv_name = "sof_sdw", 626093b9dcbSPierre-Louis Bossart .sof_tplg_filename = "sof-adl-rt711-l0-rt1308-l12-rt715-l3.tplg", 627093b9dcbSPierre-Louis Bossart }, 628093b9dcbSPierre-Louis Bossart { 629093b9dcbSPierre-Louis Bossart .link_mask = 0xF, /* 4 active links required */ 630093b9dcbSPierre-Louis Bossart .links = adl_sdca_default, 631093b9dcbSPierre-Louis Bossart .drv_name = "sof_sdw", 632093b9dcbSPierre-Louis Bossart .sof_tplg_filename = "sof-adl-rt711-l0-rt1316-l12-rt714-l3.tplg", 633093b9dcbSPierre-Louis Bossart }, 634093b9dcbSPierre-Louis Bossart { 635093b9dcbSPierre-Louis Bossart .link_mask = 0xF, /* 4 active links required */ 636093b9dcbSPierre-Louis Bossart .links = adl_sdca_3_in_1, 637093b9dcbSPierre-Louis Bossart .drv_name = "sof_sdw", 638093b9dcbSPierre-Louis Bossart .sof_tplg_filename = "sof-adl-rt711-l0-rt1316-l13-rt714-l2.tplg", 639093b9dcbSPierre-Louis Bossart }, 640093b9dcbSPierre-Louis Bossart { 641359ace2bSGongjun Song .link_mask = 0xF, /* 4 active links required */ 642359ace2bSGongjun Song .links = adl_sdw_rt711_link2_rt1316_link01_rt714_link3, 643359ace2bSGongjun Song .drv_name = "sof_sdw", 644359ace2bSGongjun Song .sof_tplg_filename = "sof-adl-rt711-l2-rt1316-l01-rt714-l3.tplg", 645359ace2bSGongjun Song }, 646359ace2bSGongjun Song { 647c4dcd710SLibin Yang .link_mask = 0x7, /* rt1316 on link0 and link1 & rt711 on link2*/ 648c4dcd710SLibin Yang .links = adl_sdw_rt711_link2_rt1316_link01, 649c4dcd710SLibin Yang .drv_name = "sof_sdw", 650c4dcd710SLibin Yang .sof_tplg_filename = "sof-adl-rt711-l2-rt1316-l01.tplg", 651c4dcd710SLibin Yang }, 652c4dcd710SLibin Yang { 65311e18f58SGongjun Song .link_mask = 0xC, /* rt1316 on link2 & rt714 on link3 */ 65411e18f58SGongjun Song .links = adl_sdw_rt1316_link2_rt714_link3, 65511e18f58SGongjun Song .drv_name = "sof_sdw", 65611e18f58SGongjun Song .sof_tplg_filename = "sof-adl-rt1316-l2-mono-rt714-l3.tplg", 65711e18f58SGongjun Song }, 65811e18f58SGongjun Song { 659a1797d61SGongjun Song .link_mask = 0x7, /* rt714 on link0 & two rt1316s on link1 and link2 */ 660a1797d61SGongjun Song .links = adl_sdw_rt1316_link12_rt714_link0, 661a1797d61SGongjun Song .drv_name = "sof_sdw", 662a1797d61SGongjun Song .sof_tplg_filename = "sof-adl-rt1316-l12-rt714-l0.tplg", 663a1797d61SGongjun Song }, 664a1797d61SGongjun Song { 665*b399f970SPierre-Louis Bossart .link_mask = 0x3, /* rt1316 on link1 & rt714 on link0 */ 666*b399f970SPierre-Louis Bossart .links = adl_sdw_rt1316_link1_rt714_link0, 667*b399f970SPierre-Louis Bossart .drv_name = "sof_sdw", 668*b399f970SPierre-Louis Bossart .sof_tplg_filename = "sof-adl-rt1316-l1-mono-rt714-l0.tplg", 669*b399f970SPierre-Louis Bossart }, 670*b399f970SPierre-Louis Bossart { 671870dc42fSPierre-Louis Bossart .link_mask = 0x5, /* 2 active links required */ 672870dc42fSPierre-Louis Bossart .links = adl_sdw_rt1316_link2_rt714_link0, 673870dc42fSPierre-Louis Bossart .drv_name = "sof_sdw", 674870dc42fSPierre-Louis Bossart .sof_tplg_filename = "sof-adl-rt1316-l2-mono-rt714-l0.tplg", 675870dc42fSPierre-Louis Bossart }, 676870dc42fSPierre-Louis Bossart { 6778d38cc29SPierre-Louis Bossart .link_mask = 0x9, /* 2 active links required */ 6788d38cc29SPierre-Louis Bossart .links = adl_sdw_rt711_link0_rt1316_link3, 6798d38cc29SPierre-Louis Bossart .drv_name = "sof_sdw", 6808d38cc29SPierre-Louis Bossart .sof_tplg_filename = "sof-adl-rt711-l0-rt1316-l3.tplg", 6818d38cc29SPierre-Louis Bossart }, 6828d38cc29SPierre-Louis Bossart { 6839c691a42SEugene Huang .link_mask = 0x5, /* 2 active links required */ 6849c691a42SEugene Huang .links = adl_sdw_rt711_link0_rt1316_link2, 6859c691a42SEugene Huang .drv_name = "sof_sdw", 6869c691a42SEugene Huang .sof_tplg_filename = "sof-adl-rt711-l0-rt1316-l2.tplg", 6879c691a42SEugene Huang }, 6889c691a42SEugene Huang { 6894c8a4cabSKai Vehmanen .link_mask = 0x1, /* link0 required */ 6904c8a4cabSKai Vehmanen .links = adl_rvp, 6914c8a4cabSKai Vehmanen .drv_name = "sof_sdw", 6924c8a4cabSKai Vehmanen .sof_tplg_filename = "sof-adl-rt711.tplg", 6934c8a4cabSKai Vehmanen }, 694c0fbe9fdSVamshi Krishna Gopal { 695d7be9e33SMuralidhar Reddy .link_mask = 0x1, /* link0 required */ 696d7be9e33SMuralidhar Reddy .links = adlps_rvp, 697d7be9e33SMuralidhar Reddy .drv_name = "sof_sdw", 698d7be9e33SMuralidhar Reddy .sof_tplg_filename = "sof-adl-rt711.tplg", 699d7be9e33SMuralidhar Reddy }, 700d7be9e33SMuralidhar Reddy { 701c0fbe9fdSVamshi Krishna Gopal .link_mask = 0x5, /* rt5682 on link0 & 2xmax98373 on link 2 */ 702c0fbe9fdSVamshi Krishna Gopal .links = adl_chromebook_base, 703c0fbe9fdSVamshi Krishna Gopal .drv_name = "sof_sdw", 704c0fbe9fdSVamshi Krishna Gopal .sof_tplg_filename = "sof-adl-sdw-max98373-rt5682.tplg", 705c0fbe9fdSVamshi Krishna Gopal }, 7064c8a4cabSKai Vehmanen {}, 7074c8a4cabSKai Vehmanen }; 7084c8a4cabSKai Vehmanen EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_adl_sdw_machines); 709