|
Lines 389-394
hdac_pin_patch(struct hdaa_widget *w)
Link Here
|
| 389 |
patch = "as=1 seq=15"; |
389 |
patch = "as=1 seq=15"; |
| 390 |
break; |
390 |
break; |
| 391 |
} |
391 |
} |
|
|
392 |
} else if (id == HDA_CODEC_ALC257 && |
| 393 |
(subid == LENOVO_L5AMD_SUBVENDOR)) { |
| 394 |
switch (nid) { |
| 395 |
case 20: |
| 396 |
patch = "as=1 seq=0"; |
| 397 |
break; |
| 398 |
case 33: |
| 399 |
patch = "as=1 seq=15"; |
| 400 |
break; |
| 401 |
} |
| 392 |
} else if (id == HDA_CODEC_ALC285 && |
402 |
} else if (id == HDA_CODEC_ALC285 && |
| 393 |
(subid == LENOVO_X120KH_SUBVENDOR || |
403 |
(subid == LENOVO_X120KH_SUBVENDOR || |
| 394 |
subid == LENOVO_X120QD_SUBVENDOR)) { |
404 |
subid == LENOVO_X120QD_SUBVENDOR)) { |
|
Lines 808-817
hdaa_patch_direct(struct hdaa_devinfo *devinfo)
Link Here
|
| 808 |
subid == 0x834a1043 || subid == 0x83981043 || |
818 |
subid == 0x834a1043 || subid == 0x83981043 || |
| 809 |
subid == 0x83ce1043) { |
819 |
subid == 0x83ce1043) { |
| 810 |
/* |
820 |
/* |
| 811 |
* The ditital mics on some Asus laptops produce |
821 |
* The digital mics on some Asus laptops produce |
| 812 |
* differential signals instead of expected stereo. |
822 |
* differential signals instead of expected stereo. |
| 813 |
* That results in silence if downmix it to mono. |
823 |
* That results in silence if downmix it to mono. |
| 814 |
* To workaround, make codec to handle signal as mono. |
824 |
* To workaround, make codec handle signal as mono. |
| 815 |
*/ |
825 |
*/ |
| 816 |
val = hdaa_read_coef(dev, 0x20, 0x07); |
826 |
val = hdaa_read_coef(dev, 0x20, 0x07); |
| 817 |
hdaa_write_coef(dev, 0x20, 0x07, val|0x80); |
827 |
hdaa_write_coef(dev, 0x20, 0x07, val|0x80); |