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

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

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ 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.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /sound/soc/intel/common/soc-acpi-intel-rpl-match.c (Version linux-6.12-rc7) and /sound/soc/intel/common/soc-acpi-intel-rpl-match.c (Version linux-6.4.16)


  1 // SPDX-License-Identifier: GPL-2.0-only            1 // SPDX-License-Identifier: GPL-2.0-only
  2 /*                                                  2 /*
  3  * soc-apci-intel-rpl-match.c - tables and sup      3  * soc-apci-intel-rpl-match.c - tables and support for RPL ACPI enumeration.
  4  *                                                  4  *
  5  * Copyright (c) 2022 Intel Corporation.            5  * Copyright (c) 2022 Intel Corporation.
  6  */                                                 6  */
  7                                                     7 
  8 #include <sound/soc-acpi.h>                         8 #include <sound/soc-acpi.h>
  9 #include <sound/soc-acpi-intel-match.h>             9 #include <sound/soc-acpi-intel-match.h>
 10 #include <sound/soc-acpi-intel-ssp-common.h>   << 
 11                                                    10 
 12 static const struct snd_soc_acpi_endpoint sing     11 static const struct snd_soc_acpi_endpoint single_endpoint = {
 13         .num = 0,                                  12         .num = 0,
 14         .aggregated = 0,                           13         .aggregated = 0,
 15         .group_position = 0,                       14         .group_position = 0,
 16         .group_id = 0,                             15         .group_id = 0,
 17 };                                                 16 };
 18                                                    17 
 19 static const struct snd_soc_acpi_endpoint spk_     18 static const struct snd_soc_acpi_endpoint spk_l_endpoint = {
 20         .num = 0,                                  19         .num = 0,
 21         .aggregated = 1,                           20         .aggregated = 1,
 22         .group_position = 0,                       21         .group_position = 0,
 23         .group_id = 1,                             22         .group_id = 1,
 24 };                                                 23 };
 25                                                    24 
 26 static const struct snd_soc_acpi_endpoint spk_     25 static const struct snd_soc_acpi_endpoint spk_r_endpoint = {
 27         .num = 0,                                  26         .num = 0,
 28         .aggregated = 1,                           27         .aggregated = 1,
 29         .group_position = 1,                       28         .group_position = 1,
 30         .group_id = 1,                             29         .group_id = 1,
 31 };                                                 30 };
 32                                                    31 
 33 static const struct snd_soc_acpi_endpoint cs42 << 
 34         { /* Jack Playback Endpoint */         << 
 35                 .num = 0,                      << 
 36                 .aggregated = 0,               << 
 37                 .group_position = 0,           << 
 38                 .group_id = 0,                 << 
 39         },                                     << 
 40         { /* DMIC Capture Endpoint */          << 
 41                 .num = 1,                      << 
 42                 .aggregated = 0,               << 
 43                 .group_position = 0,           << 
 44                 .group_id = 0,                 << 
 45         },                                     << 
 46         { /* Jack Capture Endpoint */          << 
 47                 .num = 2,                      << 
 48                 .aggregated = 0,               << 
 49                 .group_position = 0,           << 
 50                 .group_id = 0,                 << 
 51         },                                     << 
 52         { /* Speaker Playback Endpoint */      << 
 53                 .num = 3,                      << 
 54                 .aggregated = 0,               << 
 55                 .group_position = 0,           << 
 56                 .group_id = 0,                 << 
 57         },                                     << 
 58 };                                             << 
 59                                                << 
 60 static const struct snd_soc_acpi_adr_device cs << 
 61         {                                      << 
 62                 .adr = 0x00003001FA424301ull,  << 
 63                 .num_endpoints = ARRAY_SIZE(cs << 
 64                 .endpoints = cs42l43_endpoints << 
 65                 .name_prefix = "cs42l43"       << 
 66         }                                      << 
 67 };                                             << 
 68                                                << 
 69 static const struct snd_soc_acpi_adr_device rt     32 static const struct snd_soc_acpi_adr_device rt711_0_adr[] = {
 70         {                                          33         {
 71                 .adr = 0x000020025D071100ull,      34                 .adr = 0x000020025D071100ull,
 72                 .num_endpoints = 1,                35                 .num_endpoints = 1,
 73                 .endpoints = &single_endpoint,     36                 .endpoints = &single_endpoint,
 74                 .name_prefix = "rt711"             37                 .name_prefix = "rt711"
 75         }                                          38         }
 76 };                                                 39 };
 77                                                    40 
 78 static const struct snd_soc_acpi_link_adr rpl_     41 static const struct snd_soc_acpi_link_adr rpl_rvp[] = {
 79         {                                          42         {
 80                 .mask = BIT(0),                    43                 .mask = BIT(0),
 81                 .num_adr = ARRAY_SIZE(rt711_0_     44                 .num_adr = ARRAY_SIZE(rt711_0_adr),
 82                 .adr_d = rt711_0_adr,              45                 .adr_d = rt711_0_adr,
 83         },                                         46         },
 84         {}                                         47         {}
 85 };                                                 48 };
 86                                                    49 
 87 static const struct snd_soc_acpi_adr_device rt     50 static const struct snd_soc_acpi_adr_device rt711_sdca_0_adr[] = {
 88         {                                          51         {
 89                 .adr = 0x000030025D071101ull,      52                 .adr = 0x000030025D071101ull,
 90                 .num_endpoints = 1,                53                 .num_endpoints = 1,
 91                 .endpoints = &single_endpoint,     54                 .endpoints = &single_endpoint,
 92                 .name_prefix = "rt711"             55                 .name_prefix = "rt711"
 93         }                                          56         }
 94 };                                                 57 };
 95                                                    58 
 96 static const struct snd_soc_acpi_adr_device rt     59 static const struct snd_soc_acpi_adr_device rt711_sdca_2_adr[] = {
 97         {                                          60         {
 98                 .adr = 0x000230025D071101ull,      61                 .adr = 0x000230025D071101ull,
 99                 .num_endpoints = 1,                62                 .num_endpoints = 1,
100                 .endpoints = &single_endpoint,     63                 .endpoints = &single_endpoint,
101                 .name_prefix = "rt711"             64                 .name_prefix = "rt711"
102         }                                          65         }
103 };                                                 66 };
104                                                    67 
105 static const struct snd_soc_acpi_adr_device rt     68 static const struct snd_soc_acpi_adr_device rt1316_1_group1_adr[] = {
106         {                                          69         {
107                 .adr = 0x000131025D131601ull,      70                 .adr = 0x000131025D131601ull, /* unique ID is set for some reason */
108                 .num_endpoints = 1,                71                 .num_endpoints = 1,
109                 .endpoints = &spk_l_endpoint,      72                 .endpoints = &spk_l_endpoint,
110                 .name_prefix = "rt1316-1"          73                 .name_prefix = "rt1316-1"
111         }                                          74         }
112 };                                                 75 };
113                                                    76 
114 static const struct snd_soc_acpi_adr_device rt     77 static const struct snd_soc_acpi_adr_device rt1316_2_group1_adr[] = {
115         {                                          78         {
116                 .adr = 0x000230025D131601ull,      79                 .adr = 0x000230025D131601ull,
117                 .num_endpoints = 1,                80                 .num_endpoints = 1,
118                 .endpoints = &spk_r_endpoint,      81                 .endpoints = &spk_r_endpoint,
119                 .name_prefix = "rt1316-2"          82                 .name_prefix = "rt1316-2"
120         }                                          83         }
121 };                                                 84 };
122                                                    85 
123 static const struct snd_soc_acpi_adr_device rt     86 static const struct snd_soc_acpi_adr_device rt1316_3_group1_adr[] = {
124         {                                          87         {
125                 .adr = 0x000330025D131601ull,      88                 .adr = 0x000330025D131601ull,
126                 .num_endpoints = 1,                89                 .num_endpoints = 1,
127                 .endpoints = &spk_r_endpoint,      90                 .endpoints = &spk_r_endpoint,
128                 .name_prefix = "rt1316-2"          91                 .name_prefix = "rt1316-2"
129         }                                          92         }
130 };                                                 93 };
131                                                    94 
132 static const struct snd_soc_acpi_adr_device rt     95 static const struct snd_soc_acpi_adr_device rt1316_0_group2_adr[] = {
133         {                                          96         {
134                 .adr = 0x000030025D131601ull,      97                 .adr = 0x000030025D131601ull,
135                 .num_endpoints = 1,                98                 .num_endpoints = 1,
136                 .endpoints = &spk_l_endpoint,      99                 .endpoints = &spk_l_endpoint,
137                 .name_prefix = "rt1316-1"         100                 .name_prefix = "rt1316-1"
138         }                                         101         }
139 };                                                102 };
140                                                   103 
141 static const struct snd_soc_acpi_adr_device rt    104 static const struct snd_soc_acpi_adr_device rt1316_1_group2_adr[] = {
142         {                                         105         {
143                 .adr = 0x000131025D131601ull,     106                 .adr = 0x000131025D131601ull,
144                 .num_endpoints = 1,               107                 .num_endpoints = 1,
145                 .endpoints = &spk_r_endpoint,     108                 .endpoints = &spk_r_endpoint,
146                 .name_prefix = "rt1316-2"         109                 .name_prefix = "rt1316-2"
147         }                                         110         }
148 };                                                111 };
149                                                   112 
150 static const struct snd_soc_acpi_adr_device rt    113 static const struct snd_soc_acpi_adr_device rt1318_1_group1_adr[] = {
151         {                                         114         {
152                 .adr = 0x000132025D131801ull,     115                 .adr = 0x000132025D131801ull,
153                 .num_endpoints = 1,               116                 .num_endpoints = 1,
154                 .endpoints = &spk_l_endpoint,     117                 .endpoints = &spk_l_endpoint,
155                 .name_prefix = "rt1318-1"         118                 .name_prefix = "rt1318-1"
156         }                                         119         }
157 };                                                120 };
158                                                   121 
159 static const struct snd_soc_acpi_adr_device rt    122 static const struct snd_soc_acpi_adr_device rt1318_2_group1_adr[] = {
160         {                                         123         {
161                 .adr = 0x000230025D131801ull,     124                 .adr = 0x000230025D131801ull,
162                 .num_endpoints = 1,               125                 .num_endpoints = 1,
163                 .endpoints = &spk_r_endpoint,     126                 .endpoints = &spk_r_endpoint,
164                 .name_prefix = "rt1318-2"         127                 .name_prefix = "rt1318-2"
165         }                                         128         }
166 };                                                129 };
167                                                   130 
168 static const struct snd_soc_acpi_adr_device rt    131 static const struct snd_soc_acpi_adr_device rt714_0_adr[] = {
169         {                                         132         {
170                 .adr = 0x000030025D071401ull,     133                 .adr = 0x000030025D071401ull,
171                 .num_endpoints = 1,               134                 .num_endpoints = 1,
172                 .endpoints = &single_endpoint,    135                 .endpoints = &single_endpoint,
173                 .name_prefix = "rt714"            136                 .name_prefix = "rt714"
174         }                                         137         }
175 };                                                138 };
176                                                   139 
177 static const struct snd_soc_acpi_adr_device rt    140 static const struct snd_soc_acpi_adr_device rt714_2_adr[] = {
178         {                                         141         {
179                 .adr = 0x000230025D071401ull,     142                 .adr = 0x000230025D071401ull,
180                 .num_endpoints = 1,               143                 .num_endpoints = 1,
181                 .endpoints = &single_endpoint,    144                 .endpoints = &single_endpoint,
182                 .name_prefix = "rt714"            145                 .name_prefix = "rt714"
183         }                                         146         }
184 };                                                147 };
185                                                   148 
186 static const struct snd_soc_acpi_adr_device rt    149 static const struct snd_soc_acpi_adr_device rt714_3_adr[] = {
187         {                                         150         {
188                 .adr = 0x000330025D071401ull,     151                 .adr = 0x000330025D071401ull,
189                 .num_endpoints = 1,               152                 .num_endpoints = 1,
190                 .endpoints = &single_endpoint,    153                 .endpoints = &single_endpoint,
191                 .name_prefix = "rt714"            154                 .name_prefix = "rt714"
192         }                                         155         }
193 };                                                156 };
194                                                   157 
195 static const struct snd_soc_acpi_link_adr rpl_ << 
196         {                                      << 
197                 .mask = BIT(0),                << 
198                 .num_adr = ARRAY_SIZE(cs42l43_ << 
199                 .adr_d = cs42l43_0_adr,        << 
200         },                                     << 
201         {}                                     << 
202 };                                             << 
203                                                << 
204 static const struct snd_soc_acpi_link_adr rpl_    158 static const struct snd_soc_acpi_link_adr rpl_sdca_3_in_1[] = {
205         {                                         159         {
206                 .mask = BIT(0),                   160                 .mask = BIT(0),
207                 .num_adr = ARRAY_SIZE(rt711_sd    161                 .num_adr = ARRAY_SIZE(rt711_sdca_0_adr),
208                 .adr_d = rt711_sdca_0_adr,        162                 .adr_d = rt711_sdca_0_adr,
209         },                                        163         },
210         {                                         164         {
211                 .mask = BIT(1),                   165                 .mask = BIT(1),
212                 .num_adr = ARRAY_SIZE(rt1316_1    166                 .num_adr = ARRAY_SIZE(rt1316_1_group1_adr),
213                 .adr_d = rt1316_1_group1_adr,     167                 .adr_d = rt1316_1_group1_adr,
214         },                                        168         },
215         {                                         169         {
216                 .mask = BIT(2),                   170                 .mask = BIT(2),
217                 .num_adr = ARRAY_SIZE(rt714_2_    171                 .num_adr = ARRAY_SIZE(rt714_2_adr),
218                 .adr_d = rt714_2_adr,             172                 .adr_d = rt714_2_adr,
219         },                                        173         },
220         {                                         174         {
221                 .mask = BIT(3),                   175                 .mask = BIT(3),
222                 .num_adr = ARRAY_SIZE(rt1316_3    176                 .num_adr = ARRAY_SIZE(rt1316_3_group1_adr),
223                 .adr_d = rt1316_3_group1_adr,     177                 .adr_d = rt1316_3_group1_adr,
224         },                                        178         },
225         {}                                        179         {}
226 };                                                180 };
227                                                   181 
228 static const struct snd_soc_acpi_link_adr rpl_ << 
229         {                                      << 
230                 .mask = BIT(0),                << 
231                 .num_adr = ARRAY_SIZE(rt711_sd << 
232                 .adr_d = rt711_sdca_0_adr,     << 
233         },                                     << 
234         {                                      << 
235                 .mask = BIT(1),                << 
236                 .num_adr = ARRAY_SIZE(rt1316_1 << 
237                 .adr_d = rt1316_1_group1_adr,  << 
238         },                                     << 
239         {                                      << 
240                 .mask = BIT(2),                << 
241                 .num_adr = ARRAY_SIZE(rt1316_2 << 
242                 .adr_d = rt1316_2_group1_adr,  << 
243         },                                     << 
244         {                                      << 
245                 .mask = BIT(3),                << 
246                 .num_adr = ARRAY_SIZE(rt714_3_ << 
247                 .adr_d = rt714_3_adr,          << 
248         },                                     << 
249         {}                                     << 
250 };                                             << 
251                                                << 
252 static const struct snd_soc_acpi_link_adr rpl_    182 static const struct snd_soc_acpi_link_adr rpl_sdw_rt711_link2_rt1316_link01_rt714_link3[] = {
253         {                                         183         {
254                 .mask = BIT(2),                   184                 .mask = BIT(2),
255                 .num_adr = ARRAY_SIZE(rt711_sd    185                 .num_adr = ARRAY_SIZE(rt711_sdca_2_adr),
256                 .adr_d = rt711_sdca_2_adr,        186                 .adr_d = rt711_sdca_2_adr,
257         },                                        187         },
258         {                                         188         {
259                 .mask = BIT(0),                   189                 .mask = BIT(0),
260                 .num_adr = ARRAY_SIZE(rt1316_0    190                 .num_adr = ARRAY_SIZE(rt1316_0_group2_adr),
261                 .adr_d = rt1316_0_group2_adr,     191                 .adr_d = rt1316_0_group2_adr,
262         },                                        192         },
263         {                                         193         {
264                 .mask = BIT(1),                   194                 .mask = BIT(1),
265                 .num_adr = ARRAY_SIZE(rt1316_1    195                 .num_adr = ARRAY_SIZE(rt1316_1_group2_adr),
266                 .adr_d = rt1316_1_group2_adr,     196                 .adr_d = rt1316_1_group2_adr,
267         },                                        197         },
268         {                                         198         {
269                 .mask = BIT(3),                   199                 .mask = BIT(3),
270                 .num_adr = ARRAY_SIZE(rt714_3_    200                 .num_adr = ARRAY_SIZE(rt714_3_adr),
271                 .adr_d = rt714_3_adr,             201                 .adr_d = rt714_3_adr,
272         },                                        202         },
273         {}                                        203         {}
274 };                                                204 };
275                                                   205 
276 static const struct snd_soc_acpi_link_adr rpl_    206 static const struct snd_soc_acpi_link_adr rpl_sdw_rt711_link2_rt1316_link01[] = {
277         {                                         207         {
278                 .mask = BIT(2),                   208                 .mask = BIT(2),
279                 .num_adr = ARRAY_SIZE(rt711_sd    209                 .num_adr = ARRAY_SIZE(rt711_sdca_2_adr),
280                 .adr_d = rt711_sdca_2_adr,        210                 .adr_d = rt711_sdca_2_adr,
281         },                                        211         },
282         {                                         212         {
283                 .mask = BIT(0),                   213                 .mask = BIT(0),
284                 .num_adr = ARRAY_SIZE(rt1316_0    214                 .num_adr = ARRAY_SIZE(rt1316_0_group2_adr),
285                 .adr_d = rt1316_0_group2_adr,     215                 .adr_d = rt1316_0_group2_adr,
286         },                                        216         },
287         {                                         217         {
288                 .mask = BIT(1),                   218                 .mask = BIT(1),
289                 .num_adr = ARRAY_SIZE(rt1316_1    219                 .num_adr = ARRAY_SIZE(rt1316_1_group2_adr),
290                 .adr_d = rt1316_1_group2_adr,     220                 .adr_d = rt1316_1_group2_adr,
291         },                                        221         },
292         {}                                        222         {}
293 };                                                223 };
294                                                   224 
295 static const struct snd_soc_acpi_link_adr rpl_ << 
296         {                                      << 
297                 .mask = BIT(0),                << 
298                 .num_adr = ARRAY_SIZE(rt711_sd << 
299                 .adr_d = rt711_sdca_0_adr,     << 
300         },                                     << 
301         {                                      << 
302                 .mask = BIT(1),                << 
303                 .num_adr = ARRAY_SIZE(rt1316_1 << 
304                 .adr_d = rt1316_1_group1_adr,  << 
305         },                                     << 
306         {                                      << 
307                 .mask = BIT(2),                << 
308                 .num_adr = ARRAY_SIZE(rt1316_2 << 
309                 .adr_d = rt1316_2_group1_adr,  << 
310         },                                     << 
311         {}                                     << 
312 };                                             << 
313                                                << 
314 static const struct snd_soc_acpi_link_adr rpl_    225 static const struct snd_soc_acpi_link_adr rpl_sdw_rt711_link0_rt1318_link12_rt714_link3[] = {
315         {                                         226         {
316                 .mask = BIT(0),                   227                 .mask = BIT(0),
317                 .num_adr = ARRAY_SIZE(rt711_sd    228                 .num_adr = ARRAY_SIZE(rt711_sdca_0_adr),
318                 .adr_d = rt711_sdca_0_adr,        229                 .adr_d = rt711_sdca_0_adr,
319         },                                        230         },
320         {                                         231         {
321                 .mask = BIT(1),                   232                 .mask = BIT(1),
322                 .num_adr = ARRAY_SIZE(rt1318_1    233                 .num_adr = ARRAY_SIZE(rt1318_1_group1_adr),
323                 .adr_d = rt1318_1_group1_adr,     234                 .adr_d = rt1318_1_group1_adr,
324         },                                        235         },
325         {                                         236         {
326                 .mask = BIT(2),                   237                 .mask = BIT(2),
327                 .num_adr = ARRAY_SIZE(rt1318_2    238                 .num_adr = ARRAY_SIZE(rt1318_2_group1_adr),
328                 .adr_d = rt1318_2_group1_adr,     239                 .adr_d = rt1318_2_group1_adr,
329         },                                        240         },
330         {                                         241         {
331                 .mask = BIT(3),                   242                 .mask = BIT(3),
332                 .num_adr = ARRAY_SIZE(rt714_3_    243                 .num_adr = ARRAY_SIZE(rt714_3_adr),
333                 .adr_d = rt714_3_adr,             244                 .adr_d = rt714_3_adr,
334         },                                        245         },
335         {}                                        246         {}
336 };                                                247 };
337                                                   248 
338 static const struct snd_soc_acpi_link_adr rpl_    249 static const struct snd_soc_acpi_link_adr rpl_sdw_rt711_link0_rt1318_link12[] = {
339         {                                         250         {
340                 .mask = BIT(0),                   251                 .mask = BIT(0),
341                 .num_adr = ARRAY_SIZE(rt711_sd    252                 .num_adr = ARRAY_SIZE(rt711_sdca_0_adr),
342                 .adr_d = rt711_sdca_0_adr,        253                 .adr_d = rt711_sdca_0_adr,
343         },                                        254         },
344         {                                         255         {
345                 .mask = BIT(1),                   256                 .mask = BIT(1),
346                 .num_adr = ARRAY_SIZE(rt1318_1    257                 .num_adr = ARRAY_SIZE(rt1318_1_group1_adr),
347                 .adr_d = rt1318_1_group1_adr,     258                 .adr_d = rt1318_1_group1_adr,
348         },                                        259         },
349         {                                         260         {
350                 .mask = BIT(2),                   261                 .mask = BIT(2),
351                 .num_adr = ARRAY_SIZE(rt1318_2    262                 .num_adr = ARRAY_SIZE(rt1318_2_group1_adr),
352                 .adr_d = rt1318_2_group1_adr,     263                 .adr_d = rt1318_2_group1_adr,
353         },                                        264         },
354         {}                                        265         {}
355 };                                                266 };
356                                                   267 
357 static const struct snd_soc_acpi_link_adr rpl_    268 static const struct snd_soc_acpi_link_adr rpl_sdw_rt1316_link12_rt714_link0[] = {
358         {                                         269         {
359                 .mask = BIT(1),                   270                 .mask = BIT(1),
360                 .num_adr = ARRAY_SIZE(rt1316_1    271                 .num_adr = ARRAY_SIZE(rt1316_1_group1_adr),
361                 .adr_d = rt1316_1_group1_adr,     272                 .adr_d = rt1316_1_group1_adr,
362         },                                        273         },
363         {                                         274         {
364                 .mask = BIT(2),                   275                 .mask = BIT(2),
365                 .num_adr = ARRAY_SIZE(rt1316_2    276                 .num_adr = ARRAY_SIZE(rt1316_2_group1_adr),
366                 .adr_d = rt1316_2_group1_adr,     277                 .adr_d = rt1316_2_group1_adr,
367         },                                        278         },
368         {                                         279         {
369                 .mask = BIT(0),                   280                 .mask = BIT(0),
370                 .num_adr = ARRAY_SIZE(rt714_0_    281                 .num_adr = ARRAY_SIZE(rt714_0_adr),
371                 .adr_d = rt714_0_adr,             282                 .adr_d = rt714_0_adr,
372         },                                        283         },
373         {}                                        284         {}
374 };                                                285 };
375                                                   286 
376 static const struct snd_soc_acpi_link_adr rpl_ << 
377         {                                      << 
378                 .mask = BIT(0),                << 
379                 .num_adr = ARRAY_SIZE(rt711_sd << 
380                 .adr_d = rt711_sdca_0_adr,     << 
381         },                                     << 
382         {}                                     << 
383 };                                             << 
384                                                << 
385 static const struct snd_soc_acpi_link_adr rplp    287 static const struct snd_soc_acpi_link_adr rplp_crb[] = {
386         {                                         288         {
387                 .mask = BIT(2),                   289                 .mask = BIT(2),
388                 .num_adr = ARRAY_SIZE(rt711_sd    290                 .num_adr = ARRAY_SIZE(rt711_sdca_2_adr),
389                 .adr_d = rt711_sdca_2_adr,        291                 .adr_d = rt711_sdca_2_adr,
390         },                                        292         },
391         {}                                        293         {}
392 };                                                294 };
393                                                   295 
394 static const struct snd_soc_acpi_codecs rpl_rt    296 static const struct snd_soc_acpi_codecs rpl_rt5682_hp = {
395         .num_codecs = 2,                          297         .num_codecs = 2,
396         .codecs = {RT5682_ACPI_HID, RT5682S_AC !! 298         .codecs = {"10EC5682", "RTL5682"},
397 };                                                299 };
398                                                   300 
399 static const struct snd_soc_acpi_codecs rpl_es !! 301 static const struct snd_soc_acpi_codecs rpl_max98360a_amp = {
400         .num_codecs = 3,                       << 
401         .codecs = { "ESSX8316", "ESSX8326", "E << 
402 };                                             << 
403                                                << 
404 static const struct snd_soc_acpi_codecs rpl_ma << 
405         .num_codecs = 1,                          302         .num_codecs = 1,
406         .codecs = {"MX98357A"}                 !! 303         .codecs = {"MX98360A"},
407 };                                             << 
408                                                << 
409 static const struct snd_soc_acpi_codecs rpl_lt << 
410         .num_codecs = 1,                       << 
411         .codecs = {"INTC10B0"}                 << 
412 };                                                304 };
413                                                   305 
414 struct snd_soc_acpi_mach snd_soc_acpi_intel_rp    306 struct snd_soc_acpi_mach snd_soc_acpi_intel_rpl_machines[] = {
415         {                                         307         {
416                 .comp_ids = &rpl_rt5682_hp,       308                 .comp_ids = &rpl_rt5682_hp,
417                 .drv_name = "rpl_mx98357_rt568 !! 309                 .drv_name = "rpl_mx98360_rt5682",
418                 .machine_quirk = snd_soc_acpi_ << 
419                 .quirk_data = &rpl_max98357a_a << 
420                 .sof_tplg_filename = "sof-rpl- << 
421         },                                     << 
422         {                                      << 
423                 .comp_ids = &rpl_rt5682_hp,    << 
424                 .drv_name = "rpl_rt5682_c1_h02 << 
425                 .machine_quirk = snd_soc_acpi_ << 
426                 .quirk_data = &rpl_lt6911_hdmi << 
427                 .sof_tplg_filename = "sof-rpl- << 
428         },                                     << 
429         {                                      << 
430                 .comp_ids = &rpl_essx_83x6,    << 
431                 .drv_name = "rpl_es83x6_c1_h02 << 
432                 .machine_quirk = snd_soc_acpi_    310                 .machine_quirk = snd_soc_acpi_codec_list,
433                 .quirk_data = &rpl_lt6911_hdmi !! 311                 .quirk_data = &rpl_max98360a_amp,
434                 .sof_tplg_filename = "sof-rpl- !! 312                 .sof_tplg_filename = "sof-rpl-max98360a-rt5682.tplg",
435         },                                     << 
436         {                                      << 
437                 .comp_ids = &rpl_essx_83x6,    << 
438                 .drv_name = "sof-essx8336",    << 
439                 .sof_tplg_filename = "sof-rpl- << 
440                 .tplg_quirk_mask = SND_SOC_ACP << 
441                                         SND_SO << 
442                                         SND_SO << 
443         },                                     << 
444         /* place boards for each headphone cod << 
445          * tplg name and machine driver will d << 
446          */                                    << 
447         {                                      << 
448                 .id = CS42L42_ACPI_HID,        << 
449                 .drv_name = "rpl_cs42l42_def", << 
450                 .sof_tplg_filename = "sof-rpl" << 
451                 .tplg_quirk_mask = SND_SOC_ACP << 
452                                         SND_SO << 
453         },                                     << 
454         {                                      << 
455                 .id = DA7219_ACPI_HID,         << 
456                 .drv_name = "rpl_da7219_def",  << 
457                 .sof_tplg_filename = "sof-rpl" << 
458                 .tplg_quirk_mask = SND_SOC_ACP << 
459                                         SND_SO << 
460         },                                     << 
461         {                                      << 
462                 .id = NAU8825_ACPI_HID,        << 
463                 .drv_name = "rpl_nau8825_def", << 
464                 .sof_tplg_filename = "sof-rpl" << 
465                 .tplg_quirk_mask = SND_SOC_ACP << 
466                                         SND_SO << 
467         },                                     << 
468         {                                      << 
469                 .id = RT5650_ACPI_HID,         << 
470                 .drv_name = "rpl_rt5682_def",  << 
471                 .sof_tplg_filename = "sof-rpl" << 
472                 .tplg_quirk_mask = SND_SOC_ACP << 
473                                         SND_SO << 
474         },                                     << 
475         {                                      << 
476                 .comp_ids = &rpl_rt5682_hp,    << 
477                 .drv_name = "rpl_rt5682_def",  << 
478                 .sof_tplg_filename = "sof-rpl" << 
479                 .tplg_quirk_mask = SND_SOC_ACP << 
480                                         SND_SO << 
481         },                                     << 
482         /* place amp-only boards in the end of << 
483         {                                      << 
484                 .id = "INTC10B0",              << 
485                 .drv_name = "rpl_lt6911_hdmi_s << 
486                 .sof_tplg_filename = "sof-rpl- << 
487         },                                        313         },
488         {},                                       314         {},
489 };                                                315 };
490 EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_rpl_machi    316 EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_rpl_machines);
491                                                   317 
492 /* this table is used when there is no I2S cod    318 /* this table is used when there is no I2S codec present */
493 struct snd_soc_acpi_mach snd_soc_acpi_intel_rp    319 struct snd_soc_acpi_mach snd_soc_acpi_intel_rpl_sdw_machines[] = {
494         {                                         320         {
495                 .link_mask = BIT(0),           << 
496                 .links = rpl_cs42l43_l0,       << 
497                 .drv_name = "sof_sdw",         << 
498                 .sof_tplg_filename = "sof-rpl- << 
499         },                                     << 
500         {                                      << 
501                 .link_mask = 0xF, /* 4 active     321                 .link_mask = 0xF, /* 4 active links required */
502                 .links = rpl_sdca_3_in_1,         322                 .links = rpl_sdca_3_in_1,
503                 .drv_name = "sof_sdw",            323                 .drv_name = "sof_sdw",
504                 .sof_tplg_filename = "sof-rpl-    324                 .sof_tplg_filename = "sof-rpl-rt711-l0-rt1316-l13-rt714-l2.tplg",
505         },                                        325         },
506         {                                         326         {
507                 .link_mask = 0xF, /* 4 active     327                 .link_mask = 0xF, /* 4 active links required */
508                 .links = rpl_sdw_rt711_link2_r    328                 .links = rpl_sdw_rt711_link2_rt1316_link01_rt714_link3,
509                 .drv_name = "sof_sdw",            329                 .drv_name = "sof_sdw",
510                 .sof_tplg_filename = "sof-rpl-    330                 .sof_tplg_filename = "sof-rpl-rt711-l2-rt1316-l01-rt714-l3.tplg",
511         },                                        331         },
512         {                                         332         {
513                 .link_mask = 0xF, /* 4 active     333                 .link_mask = 0xF, /* 4 active links required */
514                 .links = rpl_sdw_rt711_link0_r << 
515                 .drv_name = "sof_sdw",         << 
516                 .sof_tplg_filename = "sof-rpl- << 
517         },                                     << 
518         {                                      << 
519                 .link_mask = 0xF, /* 4 active  << 
520                 .links = rpl_sdw_rt711_link0_r    334                 .links = rpl_sdw_rt711_link0_rt1318_link12_rt714_link3,
521                 .drv_name = "sof_sdw",            335                 .drv_name = "sof_sdw",
522                 .sof_tplg_filename = "sof-rpl-    336                 .sof_tplg_filename = "sof-rpl-rt711-l0-rt1318-l12-rt714-l3.tplg",
523         },                                        337         },
524         {                                         338         {
525                 .link_mask = 0x7, /* rt711 on  << 
526                 .links = rpl_sdw_rt711_link0_r << 
527                 .drv_name = "sof_sdw",         << 
528                 .sof_tplg_filename = "sof-rpl- << 
529         },                                     << 
530         {                                      << 
531                 .link_mask = 0x7, /* rt711 on     339                 .link_mask = 0x7, /* rt711 on link0 & two rt1318s on link1 and link2 */
532                 .links = rpl_sdw_rt711_link0_r    340                 .links = rpl_sdw_rt711_link0_rt1318_link12,
533                 .drv_name = "sof_sdw",            341                 .drv_name = "sof_sdw",
534                 .sof_tplg_filename = "sof-rpl-    342                 .sof_tplg_filename = "sof-rpl-rt711-l0-rt1318-l12.tplg",
535         },                                        343         },
536         {                                         344         {
537                 .link_mask = 0x7, /* rt714 on     345                 .link_mask = 0x7, /* rt714 on link0 & two rt1316s on link1 and link2 */
538                 .links = rpl_sdw_rt1316_link12    346                 .links = rpl_sdw_rt1316_link12_rt714_link0,
539                 .drv_name = "sof_sdw",            347                 .drv_name = "sof_sdw",
540                 .sof_tplg_filename = "sof-rpl-    348                 .sof_tplg_filename = "sof-rpl-rt1316-l12-rt714-l0.tplg",
541         },                                        349         },
542         {                                         350         {
543                 .link_mask = 0x7, /* rt711 on     351                 .link_mask = 0x7, /* rt711 on link2 & two rt1316s on link0 and link1 */
544                 .links = rpl_sdw_rt711_link2_r    352                 .links = rpl_sdw_rt711_link2_rt1316_link01,
545                 .drv_name = "sof_sdw",            353                 .drv_name = "sof_sdw",
546                 .sof_tplg_filename = "sof-rpl-    354                 .sof_tplg_filename = "sof-rpl-rt711-l2-rt1316-l01.tplg",
547         },                                        355         },
548         {                                         356         {
549                 .link_mask = 0x1, /* link0 req    357                 .link_mask = 0x1, /* link0 required */
550                 .links = rpl_rvp,                 358                 .links = rpl_rvp,
551                 .drv_name = "sof_sdw",         << 
552                 .sof_tplg_filename = "sof-rpl- << 
553         },                                     << 
554         {                                      << 
555                 .link_mask = 0x1, /* link0 req << 
556                 .links = rpl_sdca_rvp,         << 
557                 .drv_name = "sof_sdw",            359                 .drv_name = "sof_sdw",
558                 .sof_tplg_filename = "sof-rpl-    360                 .sof_tplg_filename = "sof-rpl-rt711-l0.tplg",
559         },                                        361         },
560         {                                         362         {
561                 .link_mask = 0x4, /* link2 req    363                 .link_mask = 0x4, /* link2 required */
562                 .links = rplp_crb,                364                 .links = rplp_crb,
563                 .drv_name = "sof_sdw",            365                 .drv_name = "sof_sdw",
564                 .sof_tplg_filename = "sof-rpl-    366                 .sof_tplg_filename = "sof-rpl-rt711-l2.tplg",
565         },                                        367         },
566         {},                                       368         {},
567 };                                                369 };
568 EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_rpl_sdw_m    370 EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_rpl_sdw_machines);
569                                                   371 

~ [ 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