xref: /linux/sound/soc/intel/common/soc-acpi-intel-glk-match.c (revision 0a94608f0f7de9b1135ffea3546afe68eafef57f)
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  * soc-acpi-intel-glk-match.c - tables and support for GLK ACPI enumeration.
4  *
5  * Copyright (c) 2018, Intel Corporation.
6  *
7  */
8 
9 #include <sound/soc-acpi.h>
10 #include <sound/soc-acpi-intel-match.h>
11 
12 static const struct snd_soc_acpi_codecs essx_83x6 = {
13 	.num_codecs = 3,
14 	.codecs = { "ESSX8316", "ESSX8326", "ESSX8336"},
15 };
16 
17 static const struct snd_soc_acpi_codecs glk_codecs = {
18 	.num_codecs = 1,
19 	.codecs = {"MX98357A"}
20 };
21 
22 struct snd_soc_acpi_mach snd_soc_acpi_intel_glk_machines[] = {
23 	{
24 		.id = "INT343A",
25 		.drv_name = "glk_alc298s_i2s",
26 		.fw_filename = "intel/dsp_fw_glk.bin",
27 		.sof_tplg_filename = "sof-glk-alc298.tplg",
28 	},
29 	{
30 		.id = "DLGS7219",
31 		.drv_name = "glk_da7219_mx98357a",
32 		.fw_filename = "intel/dsp_fw_glk.bin",
33 		.machine_quirk = snd_soc_acpi_codec_list,
34 		.quirk_data = &glk_codecs,
35 		.sof_tplg_filename = "sof-glk-da7219.tplg",
36 	},
37 	{
38 		.id = "10EC5682",
39 		.drv_name = "glk_rt5682_mx98357a",
40 		.fw_filename = "intel/dsp_fw_glk.bin",
41 		.machine_quirk = snd_soc_acpi_codec_list,
42 		.quirk_data = &glk_codecs,
43 		.sof_tplg_filename = "sof-glk-rt5682.tplg",
44 	},
45 	{
46 		.id = "RTL5682",
47 		.drv_name = "glk_rt5682_max98357a",
48 		.machine_quirk = snd_soc_acpi_codec_list,
49 		.quirk_data = &glk_codecs,
50 		.sof_tplg_filename = "sof-glk-rt5682.tplg",
51 	},
52 	{
53 		.id = "10134242",
54 		.drv_name = "glk_cs4242_mx98357a",
55 		.fw_filename = "intel/dsp_fw_glk.bin",
56 		.machine_quirk = snd_soc_acpi_codec_list,
57 		.quirk_data = &glk_codecs,
58 		.sof_tplg_filename = "sof-glk-cs42l42.tplg",
59 	},
60 	{
61 		.comp_ids = &essx_83x6,
62 		.drv_name = "sof-essx8336",
63 		.sof_tplg_filename = "sof-glk-es8336", /* the tplg suffix is added at run time */
64 		.tplg_quirk_mask = SND_SOC_ACPI_TPLG_INTEL_SSP_NUMBER |
65 					SND_SOC_ACPI_TPLG_INTEL_SSP_MSB |
66 					SND_SOC_ACPI_TPLG_INTEL_DMIC_NUMBER,
67 	},
68 	{},
69 };
70 EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_glk_machines);
71