1e149ca29SPierre-Louis Bossart // SPDX-License-Identifier: GPL-2.0-only 24f0637eaSPan Xiuli /* 34f0637eaSPan Xiuli * soc-apci-intel-jsl-match.c - tables and support for JSL ACPI enumeration. 44f0637eaSPan Xiuli * 5a79ae0f6SYong Zhi * Copyright (c) 2019-2020, Intel Corporation. 64f0637eaSPan Xiuli * 74f0637eaSPan Xiuli */ 84f0637eaSPan Xiuli 94f0637eaSPan Xiuli #include <sound/soc-acpi.h> 104f0637eaSPan Xiuli #include <sound/soc-acpi-intel-match.h> 114f0637eaSPan Xiuli 129a5d96adSPierre-Louis Bossart static const struct snd_soc_acpi_codecs jsl_7219_98373_codecs = { 133f32e596SYong Zhi .num_codecs = 1, 143f32e596SYong Zhi .codecs = {"MX98373"} 153f32e596SYong Zhi }; 163f32e596SYong Zhi 179a5d96adSPierre-Louis Bossart static const struct snd_soc_acpi_codecs rt1015_spk = { 18a79ae0f6SYong Zhi .num_codecs = 1, 19a79ae0f6SYong Zhi .codecs = {"10EC1015"} 20a79ae0f6SYong Zhi }; 21a79ae0f6SYong Zhi 229a5d96adSPierre-Louis Bossart static const struct snd_soc_acpi_codecs rt1015p_spk = { 23ad83b1adSBrent Lu .num_codecs = 1, 24ad83b1adSBrent Lu .codecs = {"RTL1015"} 25ad83b1adSBrent Lu }; 26ad83b1adSBrent Lu 279a5d96adSPierre-Louis Bossart static const struct snd_soc_acpi_codecs mx98360a_spk = { 28719e8179SYong Zhi .num_codecs = 1, 29719e8179SYong Zhi .codecs = {"MX98360A"} 30719e8179SYong Zhi }; 31719e8179SYong Zhi 32d4f3fdc2SBrent Lu static const struct snd_soc_acpi_codecs rt5682_rt5682s_hp = { 33d4f3fdc2SBrent Lu .num_codecs = 2, 34d4f3fdc2SBrent Lu .codecs = {"10EC5682", "RTL5682"}, 35d4f3fdc2SBrent Lu }; 36d4f3fdc2SBrent Lu 373f32e596SYong Zhi /* 383f32e596SYong Zhi * When adding new entry to the snd_soc_acpi_intel_jsl_machines array, 393f32e596SYong Zhi * use .quirk_data member to distinguish different machine driver, 403f32e596SYong Zhi * and keep ACPI .id field unchanged for the common codec. 413f32e596SYong Zhi */ 424f0637eaSPan Xiuli struct snd_soc_acpi_mach snd_soc_acpi_intel_jsl_machines[] = { 4335dc19adSYong Zhi { 4435dc19adSYong Zhi .id = "DLGS7219", 451cc04d19SPierre-Louis Bossart .drv_name = "sof_da7219_mx98373", 4635dc19adSYong Zhi .sof_tplg_filename = "sof-jsl-da7219.tplg", 473f32e596SYong Zhi .machine_quirk = snd_soc_acpi_codec_list, 483f32e596SYong Zhi .quirk_data = &jsl_7219_98373_codecs, 493f32e596SYong Zhi }, 503f32e596SYong Zhi { 513f32e596SYong Zhi .id = "DLGS7219", 521cc04d19SPierre-Louis Bossart .drv_name = "sof_da7219_mx98360a", 533f32e596SYong Zhi .sof_tplg_filename = "sof-jsl-da7219-mx98360a.tplg", 5435dc19adSYong Zhi }, 55a79ae0f6SYong Zhi { 56d4f3fdc2SBrent Lu .comp_ids = &rt5682_rt5682s_hp, 57a79ae0f6SYong Zhi .drv_name = "jsl_rt5682_rt1015", 58a79ae0f6SYong Zhi .machine_quirk = snd_soc_acpi_codec_list, 59a79ae0f6SYong Zhi .quirk_data = &rt1015_spk, 60a79ae0f6SYong Zhi .sof_tplg_filename = "sof-jsl-rt5682-rt1015.tplg", 61a79ae0f6SYong Zhi }, 62719e8179SYong Zhi { 63d4f3fdc2SBrent Lu .comp_ids = &rt5682_rt5682s_hp, 64ad83b1adSBrent Lu .drv_name = "jsl_rt5682_rt1015p", 65ad83b1adSBrent Lu .machine_quirk = snd_soc_acpi_codec_list, 66ad83b1adSBrent Lu .quirk_data = &rt1015p_spk, 67ad83b1adSBrent Lu .sof_tplg_filename = "sof-jsl-rt5682-rt1015.tplg", 68ad83b1adSBrent Lu }, 69ad83b1adSBrent Lu { 70d4f3fdc2SBrent Lu .comp_ids = &rt5682_rt5682s_hp, 713c561a09SBrent Lu .drv_name = "jsl_rt5682_mx98360", 72719e8179SYong Zhi .machine_quirk = snd_soc_acpi_codec_list, 73719e8179SYong Zhi .quirk_data = &mx98360a_spk, 74719e8179SYong Zhi .sof_tplg_filename = "sof-jsl-rt5682-mx98360a.tplg", 75719e8179SYong Zhi }, 767d1bf46cSBrent Lu { 777d1bf46cSBrent Lu .id = "10134242", 787d1bf46cSBrent Lu .drv_name = "jsl_cs4242_mx98360a", 797d1bf46cSBrent Lu .machine_quirk = snd_soc_acpi_codec_list, 807d1bf46cSBrent Lu .quirk_data = &mx98360a_spk, 817d1bf46cSBrent Lu .sof_tplg_filename = "sof-jsl-cs42l42-mx98360a.tplg", 827d1bf46cSBrent Lu }, 8346414bc3SBrent Lu { 8463ff4c50SPierre-Louis Bossart .id = "ESSX8336", 8563ff4c50SPierre-Louis Bossart .drv_name = "sof-essx8336", 86*4694b838SPierre-Louis Bossart .sof_tplg_filename = "sof-jsl-es8336", /* the tplg suffix is added at run time */ 87*4694b838SPierre-Louis Bossart .tplg_quirk_mask = SND_SOC_ACPI_TPLG_INTEL_SSP_NUMBER | 88*4694b838SPierre-Louis Bossart SND_SOC_ACPI_TPLG_INTEL_SSP_MSB | 89*4694b838SPierre-Louis Bossart SND_SOC_ACPI_TPLG_INTEL_DMIC_NUMBER, 9063ff4c50SPierre-Louis Bossart }, 914f0637eaSPan Xiuli {}, 924f0637eaSPan Xiuli }; 934f0637eaSPan Xiuli EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_jsl_machines); 94