~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/sound/soc/intel/common/soc-acpi-intel-jsl-match.c

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: GPL-2.0-only
  2 /*
  3  * soc-apci-intel-jsl-match.c - tables and support for JSL ACPI enumeration.
  4  *
  5  * Copyright (c) 2019-2020, 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 mx98373_spk = {
 18         .num_codecs = 1,
 19         .codecs = {"MX98373"}
 20 };
 21 
 22 static const struct snd_soc_acpi_codecs rt1015_spk = {
 23         .num_codecs = 1,
 24         .codecs = {"10EC1015"}
 25 };
 26 
 27 static const struct snd_soc_acpi_codecs rt1015p_spk = {
 28         .num_codecs = 1,
 29         .codecs = {"RTL1015"}
 30 };
 31 
 32 static const struct snd_soc_acpi_codecs mx98360a_spk = {
 33         .num_codecs = 1,
 34         .codecs = {"MX98360A"}
 35 };
 36 
 37 static struct snd_soc_acpi_codecs rt5650_spk = {
 38         .num_codecs = 1,
 39         .codecs = {"10EC5650"}
 40 };
 41 
 42 static const struct snd_soc_acpi_codecs rt5682_rt5682s_hp = {
 43         .num_codecs = 2,
 44         .codecs = {"10EC5682", "RTL5682"},
 45 };
 46 
 47 /*
 48  * When adding new entry to the snd_soc_acpi_intel_jsl_machines array,
 49  * use .quirk_data member to distinguish different machine driver,
 50  * and keep ACPI .id field unchanged for the common codec.
 51  */
 52 struct snd_soc_acpi_mach snd_soc_acpi_intel_jsl_machines[] = {
 53         {
 54                 .id = "DLGS7219",
 55                 .drv_name = "jsl_da7219_def",
 56                 .machine_quirk = snd_soc_acpi_codec_list,
 57                 .quirk_data = &mx98373_spk,
 58                 .sof_tplg_filename = "sof-jsl-da7219.tplg",
 59         },
 60         {
 61                 .id = "DLGS7219",
 62                 .drv_name = "jsl_da7219_def",
 63                 .machine_quirk = snd_soc_acpi_codec_list,
 64                 .quirk_data = &mx98360a_spk,
 65                 .sof_tplg_filename = "sof-jsl-da7219-mx98360a.tplg",
 66         },
 67         {
 68                 .comp_ids = &rt5682_rt5682s_hp,
 69                 .drv_name = "jsl_rt5682_def",
 70                 .machine_quirk = snd_soc_acpi_codec_list,
 71                 .quirk_data = &rt1015_spk,
 72                 .sof_tplg_filename = "sof-jsl-rt5682-rt1015.tplg",
 73         },
 74         {
 75                 .comp_ids = &rt5682_rt5682s_hp,
 76                 .drv_name = "jsl_rt5682_def",
 77                 .machine_quirk = snd_soc_acpi_codec_list,
 78                 .quirk_data = &rt1015p_spk,
 79                 .sof_tplg_filename = "sof-jsl-rt5682-rt1015.tplg",
 80         },
 81         {
 82                 .comp_ids = &rt5682_rt5682s_hp,
 83                 .drv_name = "jsl_rt5682_def",
 84                 .machine_quirk = snd_soc_acpi_codec_list,
 85                 .quirk_data = &mx98360a_spk,
 86                 .sof_tplg_filename = "sof-jsl-rt5682-mx98360a.tplg",
 87         },
 88         {
 89                 .comp_ids = &rt5682_rt5682s_hp,
 90                 .drv_name = "jsl_rt5682_def",
 91                 .sof_tplg_filename = "sof-jsl-rt5682.tplg",
 92         },
 93         {
 94                 .id = "10134242",
 95                 .drv_name = "jsl_cs4242_mx98360a",
 96                 .machine_quirk = snd_soc_acpi_codec_list,
 97                 .quirk_data = &mx98360a_spk,
 98                 .sof_tplg_filename = "sof-jsl-cs42l42-mx98360a.tplg",
 99         },
100         {
101                 .comp_ids = &essx_83x6,
102                 .drv_name = "sof-essx8336",
103                 .sof_tplg_filename = "sof-jsl-es8336", /* the tplg suffix is added at run time */
104                 .tplg_quirk_mask = SND_SOC_ACPI_TPLG_INTEL_SSP_NUMBER |
105                                         SND_SOC_ACPI_TPLG_INTEL_SSP_MSB |
106                                         SND_SOC_ACPI_TPLG_INTEL_DMIC_NUMBER,
107         },
108         {
109                 .id = "10EC5650",
110                 .drv_name = "jsl_rt5682_def",
111                 .machine_quirk = snd_soc_acpi_codec_list,
112                 .quirk_data = &rt5650_spk,
113                 .sof_tplg_filename = "sof-jsl-rt5650.tplg",
114         },
115         {},
116 };
117 EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_jsl_machines);
118 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php