1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
3 *
4 * Copyright (c) 2018 Khamba Staring <k.staring@quickdecay.com>
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 * 2. Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
17 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
20 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 * SUCH DAMAGE.
27 *
28 * $FreeBSD$
29 */
30
31 #ifndef PIN_PATCH_REALTEK_H
32 #define PIN_PATCH_REALTEK_H
33
34 #include "hdac.h"
35 #include "pin_patch.h"
36
37 /*
38 * Pin patches
39 */
40 static struct pin_patch_t pin_patches_lg_lw20[] = {
41 {
42 .nid = 26,
43 .type = PIN_PATCH_TYPE_MASK,
44 .patch.mask = { HDA_CONFIG_DEFAULTCONF_DEVICE_MASK,
45 HDA_CONFIG_DEFAULTCONF_DEVICE_LINE_IN }
46 }, {
47 .nid = 27,
48 .type = PIN_PATCH_TYPE_MASK,
49 .patch.mask = { HDA_CONFIG_DEFAULTCONF_DEVICE_MASK,
50 HDA_CONFIG_DEFAULTCONF_DEVICE_HP_OUT }
51 }, { }
52 };
53
54 static struct pin_patch_t pin_patches_clevo_d900t_asus_m5200[] = {
55 {
56 .nid = 24,
57 .type = PIN_PATCH_TYPE_MASK,
58 .patch.mask = { HDA_CONFIG_DEFAULTCONF_DEVICE_MASK,
59 HDA_CONFIG_DEFAULTCONF_DEVICE_LINE_IN }
60 }, {
61 .nid = 25,
62 .type = PIN_PATCH_TYPE_MASK,
63 .patch.mask = { HDA_CONFIG_DEFAULTCONF_DEVICE_MASK,
64 HDA_CONFIG_DEFAULTCONF_DEVICE_MIC_IN }
65 }, {
66 .nid = 26,
67 .type = PIN_PATCH_TYPE_MASK,
68 .patch.mask = { HDA_CONFIG_DEFAULTCONF_DEVICE_MASK,
69 HDA_CONFIG_DEFAULTCONF_DEVICE_LINE_IN }
70 }, {
71 .nid = 27,
72 .type = PIN_PATCH_TYPE_MASK,
73 .patch.mask = { HDA_CONFIG_DEFAULTCONF_DEVICE_MASK,
74 HDA_CONFIG_DEFAULTCONF_DEVICE_LINE_IN }
75 }, {
76 .nid = 28,
77 .type = PIN_PATCH_TYPE_MASK,
78 .patch.mask = { HDA_CONFIG_DEFAULTCONF_DEVICE_MASK,
79 HDA_CONFIG_DEFAULTCONF_DEVICE_CD }
80 }, { }
81 };
82
83 static struct pin_patch_t pin_patches_msi_ms034a[] = {
84 {
85 .nid = 25,
86 .type = PIN_PATCH_TYPE_MASK,
87 .patch.mask = {
88 HDA_CONFIG_DEFAULTCONF_DEVICE_MASK |
89 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK,
90 HDA_CONFIG_DEFAULTCONF_DEVICE_MIC_IN |
91 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_FIXED }
92 }, {
93 .nid = 28,
94 .type = PIN_PATCH_TYPE_MASK,
95 .patch.mask = {
96 HDA_CONFIG_DEFAULTCONF_DEVICE_MASK |
97 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK,
98 HDA_CONFIG_DEFAULTCONF_DEVICE_CD |
99 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_FIXED }
100 }, { }
101 };
102
103 static struct pin_patch_t pin_patches_asus_w6f[] = {
104 {
105 .nid = 11,
106 .type = PIN_PATCH_TYPE_MASK,
107 .patch.mask = {
108 HDA_CONFIG_DEFAULTCONF_DEVICE_MASK |
109 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK,
110 HDA_CONFIG_DEFAULTCONF_DEVICE_MIC_IN |
111 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_FIXED }
112 }, {
113 .nid = 12,
114 .type = PIN_PATCH_TYPE_MASK,
115 .patch.mask = {
116 HDA_CONFIG_DEFAULTCONF_DEVICE_MASK |
117 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK,
118 HDA_CONFIG_DEFAULTCONF_DEVICE_MIC_IN |
119 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_FIXED }
120 }, {
121 .nid = 14,
122 .type = PIN_PATCH_TYPE_MASK,
123 .patch.mask = {
124 HDA_CONFIG_DEFAULTCONF_DEVICE_MASK |
125 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK,
126 HDA_CONFIG_DEFAULTCONF_DEVICE_MIC_IN |
127 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_FIXED }
128 }, {
129 .nid = 15,
130 .type = PIN_PATCH_TYPE_MASK,
131 .patch.mask = {
132 HDA_CONFIG_DEFAULTCONF_DEVICE_MASK |
133 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK,
134 HDA_CONFIG_DEFAULTCONF_DEVICE_HP_OUT |
135 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_JACK }
136 }, {
137 .nid = 16,
138 .type = PIN_PATCH_TYPE_MASK,
139 .patch.mask = {
140 HDA_CONFIG_DEFAULTCONF_DEVICE_MASK |
141 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK,
142 HDA_CONFIG_DEFAULTCONF_DEVICE_MIC_IN |
143 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_FIXED }
144 }, {
145 .nid = 31,
146 .type = PIN_PATCH_TYPE_MASK,
147 .patch.mask = {
148 HDA_CONFIG_DEFAULTCONF_DEVICE_MASK |
149 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK,
150 HDA_CONFIG_DEFAULTCONF_DEVICE_MIC_IN |
151 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_FIXED }
152 }, {
153 .nid = 32,
154 .type = PIN_PATCH_TYPE_MASK,
155 .patch.mask = {
156 HDA_CONFIG_DEFAULTCONF_DEVICE_MASK |
157 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK,
158 HDA_CONFIG_DEFAULTCONF_DEVICE_MIC_IN |
159 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_FIXED }
160 }, { }
161 };
162
163 static struct pin_patch_t pin_patches_uniwill_9075[] = {
164 {
165 .nid = 15,
166 .type = PIN_PATCH_TYPE_MASK,
167 .patch.mask = {
168 HDA_CONFIG_DEFAULTCONF_DEVICE_MASK |
169 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK,
170 HDA_CONFIG_DEFAULTCONF_DEVICE_HP_OUT |
171 HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_JACK }
172 }, { }
173 };
174
175 static struct pin_patch_t pin_patches_dell_xps_jack[] = {
176 PIN_PATCH_JACK_WO_DETECT(24),
177 PIN_PATCH_HPMIC_WO_DETECT(26),
178 { }
179 };
180
181 /*
182 * List of models and patches
183 */
184 static struct hdaa_model_pin_patch_t realtek_model_pin_patches[] = {
185 { /**** CODEC: HDA_CODEC_ALC255 ****/
186 .id = HDA_CODEC_ALC255,
187 .patches = (struct model_pin_patch_t[]){
188 {
189 .models = (struct pin_machine_model_t[]){
190 PIN_SUBVENDOR(ASUS_X556UR_SUBVENDOR),
191 PIN_SUBVENDOR(ASUS_X540LA_SUBVENDOR),
192 PIN_SUBVENDOR(ASUS_Z550MA_SUBVENDOR),
193 { }
194 },
195 .pin_patches = (struct pin_patch_t[]){
196 PIN_PATCH_JACK_WO_DETECT(25),
197 { }
198 }
199 }, {
200 .models = (struct pin_machine_model_t[]){
201 PIN_SUBVENDOR(DELL_9020M_SUBVENDOR),
202 { }
203 },
204 .pin_patches = (struct pin_patch_t[]){
205 PIN_PATCH_JACK_WO_DETECT(25),
206 PIN_PATCH_HPMIC_WO_DETECT(26),
207 { }
208 }
209 }, { }
210 }
211 }, { /**** CODEC: HDA_CODEC_ALC256 ****/
212 .id = HDA_CODEC_ALC256,
213 .patches = (struct model_pin_patch_t[]){
214 {
215 .models = (struct pin_machine_model_t[]){
216 PIN_SUBVENDOR(DELL_9020M_SUBVENDOR),
217 PIN_SUBVENDOR(DELL_7000_SUBVENDOR),
218 { }
219 },
220 .pin_patches = (struct pin_patch_t[]){
221 PIN_PATCH_STRING(27, "seq=1 as=5 misc=1 ctype=Analog device=Speaker loc=Internal conn=Fixed"),
222 { }
223 }
224 }, {
225 .models = (struct pin_machine_model_t[]){
226 PIN_SUBVENDOR(ASUS_X540A_SUBVENDOR),
227 PIN_SUBVENDOR(ASUS_X540SA_SUBVENDOR),
228 PIN_SUBVENDOR(ASUS_X541SA_SUBVENDOR),
229 PIN_SUBVENDOR(ASUS_X541UV_SUBVENDOR),
230 PIN_SUBVENDOR(ASUS_Z550SA_SUBVENDOR),
231 PIN_SUBVENDOR(ASUS_X705UD_SUBVENDOR),
232 PIN_SUBVENDOR(ASUS_X555UB_SUBVENDOR),
233 { }
234 },
235 .pin_patches = (struct pin_patch_t[]){
236 PIN_PATCH_MIC_INTERNAL(19),
237 PIN_PATCH_STRING(25, "as=2 misc=1 color=Black ctype=1/8 device=Mic loc=Right"),
238 { }
239 }
240 }, { }
241 }
242 }, { /**** CODEC: HDA_CODEC_ALC260 ****/
243 .id = HDA_CODEC_ALC260,
244 .patches = (struct model_pin_patch_t[]){
245 {
246 .models = (struct pin_machine_model_t[]){
247 PIN_SUBVENDOR(SONY_S5_SUBVENDOR),
248 { }
249 },
250 .pin_patches = (struct pin_patch_t[]){
251 PIN_PATCH_STRING(16, "seq=15 device=Headphones"),
252 { }
253 }
254 }, {
255 .models = (struct pin_machine_model_t[]){
256 PIN_SUBVENDOR(HP_DC5750_SUBVENDOR),
257 { }
258 },
259 .pin_patches = (struct pin_patch_t[]){
260 PIN_PATCH_STRING(17, "as=1 misc=1 ctype=ATAPI device=Speaker loc=Internal conn=Fixed"),
261 { }
262 }
263 }, {
264 .models = (struct pin_machine_model_t[]){
265 PIN_SUBVENDOR(SONY_VAIO_TX_SUBVENDOR),
266 { }
267 },
268 .pin_patches = (struct pin_patch_t[]){
269 PIN_PATCH_STRING(15, "color=Green ctype=1/8 device=Headphones loc=Rear"),
270 { }
271 }
272 }, {
273 .models = (struct pin_machine_model_t[]){
274 PIN_SUBVENDOR(SONY_81BBID_SUBVENDOR),
275 { }
276 },
277 .pin_patches = (struct pin_patch_t[]){
278 PIN_PATCH_STRING(15, "as=2 color=Black ctype=1/8 device=Headphones loc=Rear"),
279 PIN_PATCH_STRING(16, "seq=15 as=3 ctype=1/8"),
280 PIN_PATCH_NOT_APPLICABLE(17),
281 PIN_PATCH_STRING(18, "as=3 misc=9 color=Red ctype=1/8 device=Mic loc=Rear"),
282 PIN_PATCH_NOT_APPLICABLE(19),
283 PIN_PATCH_NOT_APPLICABLE(20),
284 PIN_PATCH_NOT_APPLICABLE(21),
285 PIN_PATCH_NOT_APPLICABLE(22),
286 PIN_PATCH_NOT_APPLICABLE(23),
287 PIN_PATCH_NOT_APPLICABLE(24),
288 PIN_PATCH_NOT_APPLICABLE(25),
289 { }
290 }
291 }, { }
292 }
293 }, { /**** CODEC: HDA_CODEC_ALC262 ****/
294 .id = HDA_CODEC_ALC262,
295 .patches = (struct model_pin_patch_t[]){
296 {
297 .models = (struct pin_machine_model_t[]){
298 PIN_SUBVENDOR(FS_H270_SUBVENDOR),
299 { }
300 },
301 .pin_patches = (struct pin_patch_t[]){
302 PIN_PATCH_STRING(20, "as=1 misc=1 ctype=ATAPI device=Speaker loc=Onboard conn=Fixed"),
303 PIN_PATCH_STRING(21, "seq=15 as=2 misc=4 color=Black ctype=1/8 device=Headphones loc=Front"),
304 PIN_PATCH_STRING(22, "seq=15 as=1 misc=4 color=Black ctype=1/8 device=Headphones loc=Rear"),
305 { }
306 }
307 }, {
308 .models = (struct pin_machine_model_t[]){
309 PIN_SUBVENDOR(FL_LB_S7110_SUBVENDOR),
310 { }
311 },
312 .pin_patches = (struct pin_patch_t[]){
313 PIN_PATCH_STRING(21, "as=1 misc=1 ctype=Analog device=Speaker loc=Internal conn=Fixed"),
314 { }
315 }
316 }, {
317 .models = (struct pin_machine_model_t[]){
318 PIN_SUBVENDOR(HP_Z200_SUBVENDOR),
319 { }
320 },
321 .pin_patches = (struct pin_patch_t[]){
322 PIN_PATCH_STRING(22, "as=2 misc=1 ctype=ATAPI device=Speaker loc=Onboard conn=Fixed"),
323 { }
324 }
325 }, {
326 .models = (struct pin_machine_model_t[]){
327 PIN_SUBVENDOR(TYAN_N6650W_SUBVENDOR),
328 { }
329 },
330 .pin_patches = (struct pin_patch_t[]){
331 PIN_PATCH_STRING(22, "as=15 misc=1 color=White ctype=ATAPI device=AUX loc=Onboard"),
332 { }
333 }
334 }, {
335 .models = (struct pin_machine_model_t[]){
336 PIN_SUBVENDOR(LENOVO_3000_SUBVENDOR),
337 { }
338 },
339 .pin_patches = (struct pin_patch_t[]){
340 PIN_PATCH_STRING(22, "seq=1 as=2"),
341 { }
342 }
343 }, { }
344 }
345 }, { /**** CODEC: HDA_CODEC_ALC268 ****/
346 .id = HDA_CODEC_ALC268,
347 .patches = (struct model_pin_patch_t[]){
348 {
349 .models = (struct pin_machine_model_t[]){
350 PIN_SUBVENDOR(ACER_T5320_SUBVENDOR),
351 { }
352 },
353 .pin_patches = (struct pin_patch_t[]){
354 PIN_PATCH_STRING(20, "as=1 seq=15"),
355 { }
356 }
357 }, {
358 .models = (struct pin_machine_model_t[]){
359 PIN_SUBVENDOR(ACER_TM_6293_SUBVENDOR),
360 { }
361 },
362 .pin_patches = (struct pin_patch_t[]){
363 PIN_PATCH_STRING(30, "as=8 misc=1 color=Black ctype=Combo device=SPDIF-out loc=Rear"),
364 { }
365 }
366 }, { }
367 }
368 }, { /**** CODEC: HDA_CODEC_ALC269 ****/
369 .id = HDA_CODEC_ALC269,
370 .patches = (struct model_pin_patch_t[]){
371 {
372 .models = (struct pin_machine_model_t[]){
373 PIN_SUBVENDOR(LENOVO_X1CRBN_SUBVENDOR),
374 { }
375 },
376 .pin_patches = (struct pin_patch_t[]){
377 PIN_PATCH_STRING(21, "as=1 seq=15"),
378 { }
379 }
380 }, {
381 .models = (struct pin_machine_model_t[]){
382 PIN_SUBVENDOR(LENOVO_T430_SUBVENDOR),
383 PIN_SUBVENDOR(LENOVO_T430S_SUBVENDOR),
384 PIN_SUBVENDOR(LENOVO_X230_SUBVENDOR),
385 PIN_SUBVENDOR(LENOVO_X230T_SUBVENDOR),
386 PIN_SUBVENDOR(LENOVO_T431S_SUBVENDOR),
387 { }
388 },
389 .pin_patches = (struct pin_patch_t[]){
390 PIN_PATCH_DOCK_MIC_IN(25),
391 PIN_PATCH_DOCK_HP(27),
392 { }
393 }
394 }, {
395 .models = (struct pin_machine_model_t[]){
396 PIN_SUBVENDOR(ASUS_UX31A_SUBVENDOR),
397 { }
398 },
399 .pin_patches = (struct pin_patch_t[]){
400 PIN_PATCH_STRING(33, "as=1 seq=15"),
401 { }
402 }
403 }, {
404 .models = (struct pin_machine_model_t[]){
405 PIN_SUBVENDOR(ASUS_G73JW_SUBVENDOR),
406 { }
407 },
408 .pin_patches = (struct pin_patch_t[]){
409 PIN_PATCH_SUBWOOFER(23),
410 { }
411 }
412 }, {
413 .models = (struct pin_machine_model_t[]){
414 PIN_SUBVENDOR(FL_1475ID_SUBVENDOR),
415 { }
416 },
417 .pin_patches = (struct pin_patch_t[]){
418 PIN_PATCH_DOCK_LINE_OUT(26),
419 PIN_PATCH_DOCK_MIC_IN(27),
420 { }
421 }
422 }, {
423 .models = (struct pin_machine_model_t[]){
424 PIN_SUBVENDOR(FL_LB_U904_SUBVENDOR),
425 { }
426 },
427 .pin_patches = (struct pin_patch_t[]){
428 PIN_PATCH_HPMIC_WITH_DETECT(25),
429 { }
430 }
431 }, {
432 .models = (struct pin_machine_model_t[]){
433 PIN_SUBVENDOR(FL_LB_T731_SUBVENDOR),
434 PIN_SUBVENDOR(FL_LB_E725_SUBVENDOR),
435 { }
436 },
437 .pin_patches = (struct pin_patch_t[]){
438 PIN_PATCH_STRING(33, "seq=15 as=2 color=Black ctype=1/8 device=Headphones loc=Front"),
439 { }
440 }
441 }, {
442 .models = (struct pin_machine_model_t[]){
443 PIN_SUBVENDOR(DELL_05F4ID_SUBVENDOR),
444 PIN_SUBVENDOR(DELL_05F5ID_SUBVENDOR),
445 PIN_SUBVENDOR(DELL_05F6ID_SUBVENDOR),
446 { }
447 },
448 .pin_patches = (struct pin_patch_t[]){
449 PIN_PATCH_JACK_WO_DETECT(25),
450 PIN_PATCH_HPMIC_WO_DETECT(26),
451 { }
452 }
453 }, {
454 .models = (struct pin_machine_model_t[]){
455 PIN_SUBVENDOR(ACER_V5_571G_SUBVENDOR),
456 PIN_SUBVENDOR(ACER_V5_122P_SUBVENDOR),
457 { }
458 },
459 .pin_patches = (struct pin_patch_t[]){
460 PIN_PATCH_JACK_WO_DETECT(25),
461 { }
462 }
463 }, {
464 .models = (struct pin_machine_model_t[]){
465 PIN_SUBVENDOR(ASUS_X101CH_SUBVENDOR),
466 { }
467 },
468 .pin_patches = (struct pin_patch_t[]){
469 PIN_PATCH_STRING(24, "seq=12 as=2 misc=8 color=Black ctype=1/8 device=Mic loc=Right"),
470 { }
471 }
472 }, {
473 .models = (struct pin_machine_model_t[]){
474 PIN_SUBVENDOR(ACER_AC700_SUBVENDOR),
475 { }
476 },
477 .pin_patches = (struct pin_patch_t[]){
478 PIN_PATCH_STRING(18, "seq=15 as=2 misc=9 ctype=ATAPI device=Mic loc=Onboard conn=Fixed"),
479 PIN_PATCH_STRING(20, "as=1 misc=1 ctype=ATAPI device=Speaker loc=Onboard conn=Fixed"),
480 PIN_PATCH_STRING(24, "as=1 misc=1 ctype=ATAPI device=Speaker loc=Onboard conn=Fixed"),
481 PIN_PATCH_STRING(30, "seq=14 as=1 color=Black ctype=Digital device=SPDIF-out loc=Left"),
482 PIN_PATCH_STRING(33, "seq=15 as=1 color=Black ctype=1/8 device=Headphones loc=Left"),
483 { }
484 }
485 }, {
486 .models = (struct pin_machine_model_t[]){
487 PIN_SUBVENDOR(HP_225AID_SUBVENDOR),
488 { }
489 },
490 .pin_patches = (struct pin_patch_t[]){
491 PIN_PATCH_STRING(24, "seq=15 as=3 color=Black ctype=1/8 device=Line-in loc=Ext-Rear"),
492 PIN_PATCH_STRING(27, "as=2 color=Black ctype=1/8 loc=Ext-Rear"),
493 { }
494 }
495 }, { }
496 }
497 }, { /**** CODEC: HDA_CODEC_ALC271 ****/
498 .id = HDA_CODEC_ALC271,
499 .patches = (struct model_pin_patch_t[]){
500 {
501 .models = (struct pin_machine_model_t[]){
502 PIN_SUBVENDOR(ACER_AO725_SUBVENDOR),
503 PIN_SUBVENDOR(ACER_AO756_SUBVENDOR),
504 PIN_SUBVENDOR(ACER_E1_472_SUBVENDOR),
505 PIN_SUBVENDOR(ACER_E1_572_SUBVENDOR),
506 { }
507 },
508 .pin_patches = (struct pin_patch_t[]){
509 PIN_PATCH_STRING(20, "as=1 misc=1 ctype=ATAPI device=Speaker loc=Onboard conn=Fixed"),
510 PIN_PATCH_STRING(25, "as=2 misc=12 color=Pink ctype=1/8 device=Mic loc=Rear"),
511 PIN_PATCH_STRING(27, "seq=15 as=2 misc=1 ctype=Analog device=Mic loc=Onboard conn=Fixed"),
512 PIN_PATCH_HP_OUT(33),
513 { }
514 }
515 }, { }
516 }
517 }, { /**** CODEC: HDA_CODEC_ALC280 ****/
518 .id = HDA_CODEC_ALC280,
519 .patches = (struct model_pin_patch_t[]){
520 {
521 .models = (struct pin_machine_model_t[]){
522 PIN_SUBVENDOR(HP_2272ID_SUBVENDOR),
523 PIN_SUBVENDOR(HP_2273ID_SUBVENDOR),
524 { }
525 },
526 .pin_patches = (struct pin_patch_t[]){
527 PIN_PATCH_STRING(27, "as=2 color=Black ctype=1/8 loc=Ext-Rear"),
528 PIN_PATCH_HPMIC_WITH_DETECT(26),
529 PIN_PATCH_STRING(24, "seq=15 as=3 color=Black ctype=1/8 device=Line-in loc=Ext-Rear"),
530 { }
531 }
532 }, { }
533 }
534 }, { /**** CODEC: HDA_CODEC_ALC282 ****/
535 .id = HDA_CODEC_ALC282,
536 .patches = (struct model_pin_patch_t[]){
537 {
538 .models = (struct pin_machine_model_t[]){
539 PIN_SUBVENDOR(ACER_V5_573G_SUBVENDOR),
540 { }
541 },
542 .pin_patches = (struct pin_patch_t[]){
543 PIN_PATCH_STRING(18, "as=3 misc=1 ctype=Digital device=Mic loc=Internal conn=Fixed"),
544 PIN_PATCH_STRING(20, "as=1 misc=1 ctype=Analog device=Speaker loc=Internal conn=Fixed"),
545 PIN_PATCH_STRING(23, "seq=8 conn=None"),
546 PIN_PATCH_NOT_APPLICABLE(24),
547 PIN_PATCH_JACK_WO_DETECT(25),
548 PIN_PATCH_NOT_APPLICABLE(26),
549 PIN_PATCH_NOT_APPLICABLE(27),
550 PIN_PATCH_STRING(29, "seq=13 as=2 misc=11 color=Pink ctype=DIN device=Other conn=None"),
551 PIN_PATCH_NOT_APPLICABLE(30),
552 PIN_PATCH_STRING(33, "seq=15 as=1 color=Black ctype=1/8 device=Headphones loc=Left"),
553 { }
554 }
555 }, { }
556 }
557 }, { /**** CODEC: HDA_CODEC_ALC285 ****/
558 .id = HDA_CODEC_ALC285,
559 .patches = (struct model_pin_patch_t[]){
560 {
561 .models = (struct pin_machine_model_t[]){
562 PIN_SUBVENDOR(LENOVO_X120KH_SUBVENDOR),
563 PIN_SUBVENDOR(LENOVO_X120QD_SUBVENDOR),
564 { }
565 },
566 .pin_patches = (struct pin_patch_t[]){
567 PIN_PATCH_STRING(33, "seq=15 as=1 color=Black ctype=1/8 device=Headphones loc=Left"),
568 { }
569 }
570 }, { }
571 }
572 }, { /**** CODEC: HDA_CODEC_ALC286 ****/
573 .id = HDA_CODEC_ALC286,
574 .patches = (struct model_pin_patch_t[]){
575 {
576 .models = (struct pin_machine_model_t[]){
577 PIN_SUBVENDOR(SONY_VAIO_P11_SUBVENDOR),
578 PIN_SUBVENDOR(SONY_VAIO_P13_SUBVENDOR),
579 { }
580 },
581 .pin_patches = (struct pin_patch_t[]){
582 PIN_PATCH_JACK_WO_DETECT(25),
583 { }
584 }
585 }, { }
586 }
587 }, { /**** CODEC: HDA_CODEC_ALC288 ****/
588 .id = HDA_CODEC_ALC288,
589 .patches = (struct model_pin_patch_t[]){
590 {
591 .models = (struct pin_machine_model_t[]){
592 PIN_SUBVENDOR(DELL_E7240_SUBVENDOR),
593 { }
594 },
595 .pin_patches = pin_patches_dell_xps_jack
596 }, { }
597 }
598 }, { /**** CODEC: HDA_CODEC_ALC290 ****/
599 .id = HDA_CODEC_ALC290,
600 .patches = (struct model_pin_patch_t[]){
601 {
602 .models = (struct pin_machine_model_t[]){
603 PIN_SUBVENDOR(DELL_V5470_SUBVENDOR),
604 PIN_SUBVENDOR(DELL_V5470_1_SUBVENDOR),
605 PIN_SUBVENDOR(DELL_V5480_SUBVENDOR),
606 { }
607 },
608 .pin_patches = (struct pin_patch_t[]){
609 PIN_PATCH_STRING(18, "as=4 misc=1 ctype=Digital device=Mic loc=Internal conn=Fixed"),
610 PIN_PATCH_STRING(20, "as=1 misc=1 ctype=Analog device=Speaker loc=Internal conn=Fixed"),
611 PIN_PATCH_STRING(21, "seq=15 as=1 color=Green ctype=1/8 device=Headphones loc=Front"),
612 PIN_PATCH_STRING(23, "seq=2 as=1 misc=1 ctype=Analog device=Speaker loc=Internal conn=Fixed"),
613 PIN_PATCH_JACK_WO_DETECT(26),
614 { }
615 }
616 }, { }
617 }
618 }, { /**** CODEC: HDA_CODEC_ALC292 ****/
619 .id = HDA_CODEC_ALC292,
620 .patches = (struct model_pin_patch_t[]){
621 {
622 .models = (struct pin_machine_model_t[]){
623 PIN_SUBVENDOR(LENOVO_X120BS_SUBVENDOR),
624 { }
625 },
626 .pin_patches = (struct pin_patch_t[]){
627 PIN_PATCH_STRING(21, "as=1 seq=15"),
628 { }
629 }
630 }, { }
631 }
632 }, { /**** CODEC: HDA_CODEC_ALC293 ****/
633 .id = HDA_CODEC_ALC293,
634 .patches = (struct model_pin_patch_t[]){
635 {
636 .models = (struct pin_machine_model_t[]){
637 PIN_SUBVENDOR(DELL_064AID_SUBVENDOR),
638 PIN_SUBVENDOR(DELL_064BID_SUBVENDOR),
639 PIN_SUBVENDOR(DELL_06D9ID_SUBVENDOR),
640 PIN_SUBVENDOR(DELL_06DAID_SUBVENDOR),
641 PIN_SUBVENDOR(DELL_06DBID_SUBVENDOR),
642 PIN_SUBVENDOR(DELL_06DDID_SUBVENDOR),
643 PIN_SUBVENDOR(DELL_06DEID_SUBVENDOR),
644 PIN_SUBVENDOR(DELL_06DFID_SUBVENDOR),
645 PIN_SUBVENDOR(DELL_06E0ID_SUBVENDOR),
646 PIN_SUBVENDOR(DELL_164AID_SUBVENDOR),
647 PIN_SUBVENDOR(DELL_164BID_SUBVENDOR),
648 { }
649 },
650 .pin_patches = (struct pin_patch_t[]){
651 PIN_PATCH_HPMIC_WO_DETECT(24),
652 PIN_PATCH_JACK_WO_DETECT(26),
653 { }
654 }
655 }, { }
656 }
657 }, { /**** CODEC: HDA_CODEC_ALC298 ****/
658 .id = HDA_CODEC_ALC298,
659 .patches = (struct model_pin_patch_t[]){
660 {
661 .models = (struct pin_machine_model_t[]){
662 PIN_SUBVENDOR(DELL_XPS9560_SUBVENDOR),
663 { }
664 },
665 .pin_patches = pin_patches_dell_xps_jack
666 },
667 {
668 .models = (struct pin_machine_model_t[]){
669 PIN_SUBVENDOR(LENOVO_ALL_SUBVENDOR),
670 { }
671 },
672 .pin_patches = (struct pin_patch_t[]){
673 PIN_PATCH_DOCK_LINE_OUT(23),
674 PIN_PATCH_HP_OUT(33),
675 { }
676 },
677 }, { }
678 }
679 }, { /**** CODEC: HDA_CODEC_ALC861 ****/
680 .id = HDA_CODEC_ALC861,
681 .patches = (struct model_pin_patch_t[]){
682 {
683 .models = (struct pin_machine_model_t[]){
684 PIN_SUBVENDOR(ASUS_W6F_SUBVENDOR),
685 { }
686 },
687 .pin_patches = pin_patches_asus_w6f
688 }, {
689 .models = (struct pin_machine_model_t[]){
690 PIN_SUBVENDOR(UNIWILL_9075_SUBVENDOR),
691 { }
692 },
693 .pin_patches = pin_patches_uniwill_9075
694 }, { }
695 }
696 }, { /**** CODEC: HDA_CODEC_ALC880 ****/
697 .id = HDA_CODEC_ALC880,
698 .patches = (struct model_pin_patch_t[]){
699 { // old patch
700 .models = (struct pin_machine_model_t[]){
701 PIN_SUBVENDOR(LG_LW20_SUBVENDOR),
702 { }
703 },
704 .pin_patches = pin_patches_lg_lw20
705 }, { // old patch
706 .models = (struct pin_machine_model_t[]){
707 PIN_SUBVENDOR(CLEVO_D900T_SUBVENDOR),
708 PIN_SUBVENDOR(ASUS_M5200_SUBVENDOR),
709 { }
710 },
711 .pin_patches = pin_patches_clevo_d900t_asus_m5200
712 }, {
713 .models = (struct pin_machine_model_t[]){
714 PIN_SUBVENDOR(LG_M1_SUBVENDOR),
715 PIN_SUBVENDOR(LG_P1_SUBVENDOR),
716 PIN_SUBVENDOR(LG_W1_SUBVENDOR),
717 { }
718 },
719 .pin_patches = (struct pin_patch_t[]){
720 PIN_PATCH_NOT_APPLICABLE(22),
721 PIN_PATCH_NOT_APPLICABLE(24),
722 PIN_PATCH_NOT_APPLICABLE(26),
723 { }
724 }
725 }, {
726 .models = (struct pin_machine_model_t[]){
727 PIN_SUBVENDOR(COEUS_G610P_SUBVENDOR),
728 PIN_SUBVENDOR(ARIMA_W810_SUBVENDOR),
729 { }
730 },
731 .pin_patches = (struct pin_patch_t[]){
732 PIN_PATCH_NOT_APPLICABLE(23),
733 { }
734 }
735 }, {
736 .models = (struct pin_machine_model_t[]){
737 PIN_SUBVENDOR(FS_AMILO_M1437_SUBVENDOR),
738 PIN_SUBVENDOR(FS_AMILO_M1451G_SUBVENDOR),
739 PIN_SUBVENDOR(FS_AMILO_PI1556_SUBVENDOR),
740 { }
741 },
742 .pin_patches = (struct pin_patch_t[]){
743 PIN_PATCH_HP_OUT(20),
744 PIN_PATCH_SPEAKER(21),
745 PIN_PATCH_BASS_SPEAKER(22),
746 PIN_PATCH_NOT_APPLICABLE(23),
747 PIN_PATCH_NOT_APPLICABLE(24),
748 PIN_PATCH_MIC_IN(25),
749 PIN_PATCH_NOT_APPLICABLE(26),
750 PIN_PATCH_NOT_APPLICABLE(27),
751 PIN_PATCH_NOT_APPLICABLE(28),
752 PIN_PATCH_NOT_APPLICABLE(29),
753 PIN_PATCH_NOT_APPLICABLE(30),
754 { }
755 }
756 }, {
757 .models = (struct pin_machine_model_t[]){
758 PIN_SUBVENDOR(UNIWILL_9054_SUBVENDOR),
759 PIN_SUBVENDOR(FS_AMILO_XI1526_SUBVENDOR),
760 { }
761 },
762 .pin_patches = (struct pin_patch_t[]){
763 PIN_PATCH_HP_OUT(20),
764 PIN_PATCH_SPEAKER(21),
765 PIN_PATCH_NOT_APPLICABLE(22),
766 PIN_PATCH_NOT_APPLICABLE(23),
767 PIN_PATCH_NOT_APPLICABLE(24),
768 PIN_PATCH_MIC_IN(25),
769 PIN_PATCH_NOT_APPLICABLE(26),
770 PIN_PATCH_NOT_APPLICABLE(27),
771 PIN_PATCH_NOT_APPLICABLE(28),
772 PIN_PATCH_NOT_APPLICABLE(29),
773 PIN_PATCH_SPDIF_OUT(30),
774 { }
775 }
776 }, {
777 .models = (struct pin_machine_model_t[]){
778 PIN_SUBVENDOR(LG_LW25_SUBVENDOR),
779 { }
780 },
781 .pin_patches = (struct pin_patch_t[]){
782 PIN_PATCH_STRING(26, "seq=15 as=4 misc=4 color=Blue ctype=1/8 device=Line-in loc=Rear"),
783 PIN_PATCH_STRING(27, "seq=15 as=3 color=Green ctype=1/8 device=Headphones loc=Left"),
784 { }
785 }
786 }, {
787 .models = (struct pin_machine_model_t[]){
788 PIN_SUBVENDOR(UNIWILL_9070_SUBVENDOR),
789 { }
790 },
791 .pin_patches = (struct pin_patch_t[]){
792 PIN_PATCH_HP(20),
793 PIN_PATCH_SPEAKER(21),
794 PIN_PATCH_BASS_SPEAKER(22),
795 { }
796 }
797 }, {
798 .models = (struct pin_machine_model_t[]){
799 PIN_SUBVENDOR(UNIWILL_9050_SUBVENDOR),
800 { }
801 },
802 .pin_patches = (struct pin_patch_t[]){
803 PIN_PATCH_NOT_APPLICABLE(23),
804 PIN_PATCH_NOT_APPLICABLE(25),
805 PIN_PATCH_NOT_APPLICABLE(27),
806 PIN_PATCH_NOT_APPLICABLE(31),
807 { }
808 }
809 }, {
810 .models = (struct pin_machine_model_t[]){
811 PIN_SUBVENDOR(ASUS_Z71V_SUBVENDOR),
812 { }
813 },
814 .pin_patches = (struct pin_patch_t[]){
815 PIN_PATCH_SPEAKER(20),
816 PIN_PATCH_HP(21),
817 PIN_PATCH_NOT_APPLICABLE(22),
818 PIN_PATCH_NOT_APPLICABLE(23),
819 PIN_PATCH_MIC_IN(24),
820 PIN_PATCH_NOT_APPLICABLE(25),
821 PIN_PATCH_LINE_IN(26),
822 { }
823 }
824 }, {
825 .models = (struct pin_machine_model_t[]){
826 PIN_SUBVENDOR(ASUS_W5A_SUBVENDOR),
827 { }
828 },
829 .pin_patches = (struct pin_patch_t[]){
830 PIN_PATCH_HP(20),
831 PIN_PATCH_NOT_APPLICABLE(21),
832 PIN_PATCH_NOT_APPLICABLE(22),
833 PIN_PATCH_NOT_APPLICABLE(23),
834 PIN_PATCH_MIC_INTERNAL(24),
835 PIN_PATCH_NOT_APPLICABLE(25),
836 PIN_PATCH_NOT_APPLICABLE(26),
837 PIN_PATCH_NOT_APPLICABLE(27),
838 PIN_PATCH_NOT_APPLICABLE(28),
839 PIN_PATCH_NOT_APPLICABLE(29),
840 PIN_PATCH_STRING(30, "seq=14 as=1 misc=1 color=Black ctype=ATAPI device=SPDIF-out loc=Lid-In conn=Fixed"),
841 { }
842 }
843 }, {
844 .models = (struct pin_machine_model_t[]){
845 PIN_SUBVENDOR(ACER_E310ID_SUBVENDOR),
846 PIN_SUBVENDOR(SONY_81A0ID_SUBVENDOR),
847 PIN_SUBVENDOR(SONY_81D6ID_SUBVENDOR),
848 { }
849 },
850 .pin_patches = (struct pin_patch_t[]){
851 PIN_PATCH_LINE_OUT(20),
852 PIN_PATCH_NOT_APPLICABLE(21),
853 PIN_PATCH_NOT_APPLICABLE(22),
854 PIN_PATCH_NOT_APPLICABLE(23),
855 PIN_PATCH_STRING(24, "as=3 misc=12 color=Pink ctype=1/8 device=Mic loc=Rear"),
856 PIN_PATCH_HP(25),
857 PIN_PATCH_LINE_IN(26),
858 PIN_PATCH_MIC_FRONT(27),
859 PIN_PATCH_NOT_APPLICABLE(28),
860 PIN_PATCH_NOT_APPLICABLE(29),
861 PIN_PATCH_NOT_APPLICABLE(30),
862 PIN_PATCH_NOT_APPLICABLE(31),
863 { }
864 }
865 }, {
866 .models = (struct pin_machine_model_t[]){
867 PIN_SUBVENDOR(ACER_0070ID_SUBVENDOR),
868 PIN_SUBVENDOR(ACER_E309ID_SUBVENDOR),
869 PIN_SUBVENDOR(INTEL_D402ID_SUBVENDOR),
870 PIN_SUBVENDOR(INTEL_E305ID_SUBVENDOR),
871 PIN_SUBVENDOR(INTEL_E308ID_SUBVENDOR),
872 { }
873 },
874 .pin_patches = (struct pin_patch_t[]){
875 PIN_PATCH_LINE_OUT(20),
876 PIN_PATCH_NOT_APPLICABLE(21),
877 PIN_PATCH_NOT_APPLICABLE(22),
878 PIN_PATCH_NOT_APPLICABLE(23),
879 PIN_PATCH_STRING(24, "as=3 misc=12 color=Pink ctype=1/8 device=Mic loc=Rear"),
880 PIN_PATCH_HP(25),
881 PIN_PATCH_LINE_IN(26),
882 PIN_PATCH_MIC_FRONT(27),
883 PIN_PATCH_NOT_APPLICABLE(28),
884 PIN_PATCH_NOT_APPLICABLE(29),
885 PIN_PATCH_STRING(30, "seq=14 as=1 misc=1 color=Black ctype=RCA device=SPDIF-out loc=Rear"),
886 PIN_PATCH_NOT_APPLICABLE(31),
887 { }
888 }
889 }, {
890 .models = (struct pin_machine_model_t[]){
891 PIN_SUBVENDOR(GATEWAY_3032ID_SUBVENDOR),
892 PIN_SUBVENDOR(GATEWAY_3033ID_SUBVENDOR),
893 PIN_SUBVENDOR(GATEWAY_4039ID_SUBVENDOR),
894 { }
895 },
896 .pin_patches = (struct pin_patch_t[]){
897 PIN_PATCH_LINE_OUT(20),
898 PIN_PATCH_NOT_APPLICABLE(21),
899 PIN_PATCH_CLFE(22),
900 PIN_PATCH_SURROUND(23),
901 PIN_PATCH_STRING(24, "as=3 misc=12 color=Pink ctype=1/8 device=Mic loc=Rear"),
902 PIN_PATCH_HP(25),
903 PIN_PATCH_LINE_IN(26),
904 PIN_PATCH_MIC_FRONT(27),
905 PIN_PATCH_NOT_APPLICABLE(28),
906 PIN_PATCH_NOT_APPLICABLE(29),
907 PIN_PATCH_NOT_APPLICABLE(30),
908 PIN_PATCH_NOT_APPLICABLE(31),
909 { }
910 }
911 }, {
912 .models = (struct pin_machine_model_t[]){
913 PIN_SUBVENDOR(COEUS_A880ID_SUBVENDOR),
914 PIN_SUBVENDOR(BIOSTAR_8202ID_SUBVENDOR),
915 PIN_SUBVENDOR(EPOX_400DID_SUBVENDOR),
916 PIN_SUBVENDOR(EPOX_EP5LDA_SUBVENDOR),
917 PIN_SUBVENDOR(INTEL_A100ID_SUBVENDOR),
918 PIN_SUBVENDOR(INTEL_D400ID_SUBVENDOR),
919 PIN_SUBVENDOR(INTEL_D401ID_SUBVENDOR),
920 PIN_SUBVENDOR(INTEL_E224ID_SUBVENDOR),
921 PIN_SUBVENDOR(INTEL_E400ID_SUBVENDOR),
922 PIN_SUBVENDOR(INTEL_E401ID_SUBVENDOR),
923 PIN_SUBVENDOR(INTEL_E402ID_SUBVENDOR),
924 PIN_SUBVENDOR(AOPEN_I915GMMHFS_SUBVENDOR),
925 { }
926 },
927 .pin_patches = (struct pin_patch_t[]){
928 PIN_PATCH_LINE_OUT(20),
929 PIN_PATCH_NOT_APPLICABLE(21),
930 PIN_PATCH_CLFE(22),
931 PIN_PATCH_SURROUND(23),
932 PIN_PATCH_STRING(24, "as=3 misc=12 color=Pink ctype=1/8 device=Mic loc=Rear"),
933 PIN_PATCH_HP(25),
934 PIN_PATCH_LINE_IN(26),
935 PIN_PATCH_MIC_FRONT(27),
936 PIN_PATCH_NOT_APPLICABLE(28),
937 PIN_PATCH_NOT_APPLICABLE(29),
938 PIN_PATCH_STRING(30, "seq=14 as=1 misc=1 color=Black ctype=RCA device=SPDIF-out loc=Rear"),
939 PIN_PATCH_NOT_APPLICABLE(31),
940 { }
941 }
942 }, {
943 .models = (struct pin_machine_model_t[]){
944 PIN_SUBVENDOR(ACER_APFV_SUBVENDOR),
945 { }
946 },
947 .pin_patches = (struct pin_patch_t[]){
948 PIN_PATCH_LINE_OUT(20),
949 PIN_PATCH_SURROUND(21),
950 PIN_PATCH_CLFE(22),
951 PIN_PATCH_STRING(23, "seq=4 as=1 misc=4 color=Grey ctype=1/8 loc=Rear"),
952 PIN_PATCH_STRING(24, "as=3 misc=12 color=Pink ctype=1/8 device=Mic loc=Rear"),
953 PIN_PATCH_MIC_FRONT(25),
954 PIN_PATCH_LINE_IN(26),
955 PIN_PATCH_HP(27),
956 PIN_PATCH_NOT_APPLICABLE(28),
957 PIN_PATCH_NOT_APPLICABLE(29),
958 PIN_PATCH_NOT_APPLICABLE(30),
959 PIN_PATCH_NOT_APPLICABLE(31),
960 { }
961 }
962 }, {
963 .models = (struct pin_machine_model_t[]){
964 PIN_SUBVENDOR(ACER_0077ID_SUBVENDOR),
965 PIN_SUBVENDOR(ACER_0078ID_SUBVENDOR),
966 PIN_SUBVENDOR(ACER_0087ID_SUBVENDOR),
967 PIN_SUBVENDOR(SHUTTLE_ST20G5_SUBVENDOR),
968 PIN_SUBVENDOR(GB_K8_SUBVENDOR),
969 PIN_SUBVENDOR(MSI_1150ID_SUBVENDOR),
970 PIN_SUBVENDOR(FIC_P4M_SUBVENDOR),
971 { }
972 },
973 .pin_patches = (struct pin_patch_t[]){
974 PIN_PATCH_LINE_OUT(20),
975 PIN_PATCH_SURROUND(21),
976 PIN_PATCH_CLFE(22),
977 PIN_PATCH_STRING(23, "seq=4 as=1 misc=4 color=Grey ctype=1/8 loc=Rear"),
978 PIN_PATCH_STRING(24, "as=3 misc=12 color=Pink ctype=1/8 device=Mic loc=Rear"),
979 PIN_PATCH_MIC_FRONT(25),
980 PIN_PATCH_LINE_IN(26),
981 PIN_PATCH_HP(27),
982 PIN_PATCH_NOT_APPLICABLE(28),
983 PIN_PATCH_NOT_APPLICABLE(29),
984 PIN_PATCH_STRING(30, "seq=14 as=1 misc=1 color=Black ctype=RCA device=SPDIF-out loc=Rear"),
985 PIN_PATCH_NOT_APPLICABLE(31),
986 { }
987 }
988 }, { }
989 }
990 }, { /**** CODEC: HDA_CODEC_ALC883 ****/
991 .id = HDA_CODEC_ALC883,
992 .patches = (struct model_pin_patch_t[]){
993 {
994 .models = (struct pin_machine_model_t[]){
995 PIN_SUBVENDOR(MSI_MS034A_SUBVENDOR),
996 { }
997 },
998 .pin_patches = pin_patches_msi_ms034a
999 }, { }
1000 }
1001 }, { /**** CODEC: HDA_CODEC_ALC892 ****/
1002 .id = HDA_CODEC_ALC892,
1003 .patches = (struct model_pin_patch_t[]){
1004 {
1005 .models = (struct pin_machine_model_t[]){
1006 PIN_SUBVENDOR(INTEL_DH87RL_SUBVENDOR),
1007 { }
1008 },
1009 .pin_patches = (struct pin_patch_t[]){
1010 PIN_PATCH_STRING(27, "as=1 seq=15"),
1011 { }
1012 }
1013 }, { }
1014 }
1015 }
1016 };
1017
1018 #endif /* PIN_PATCH_REALTEK_H */
Cache object: ee8eb0a3618d6ddb6c0967c412f2f3ae
|