Commit 44be77c5 authored by Takashi Iwai's avatar Takashi Iwai

ALSA: hda - Fix missing COEF init for ALC225/295/299

There was a long-standing problem on HP Spectre X360 with Kabylake
where it lacks of the front speaker output in some situations.  Also
there are other products showing the similar behavior.  The culprit
seems to be the missing COEF setup on ALC codecs, ALC225/295/299,
which are all compatible.

This patch adds the proper COEF setup (to initialize idx 0x67 / bits
0x3000) for addressing the issue.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=195457
Cc: <stable@vger.kernel.org>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent a36c2638
...@@ -324,8 +324,12 @@ static void alc_fill_eapd_coef(struct hda_codec *codec) ...@@ -324,8 +324,12 @@ static void alc_fill_eapd_coef(struct hda_codec *codec)
case 0x10ec0292: case 0x10ec0292:
alc_update_coef_idx(codec, 0x4, 1<<15, 0); alc_update_coef_idx(codec, 0x4, 1<<15, 0);
break; break;
case 0x10ec0215:
case 0x10ec0225: case 0x10ec0225:
case 0x10ec0295:
case 0x10ec0299:
alc_update_coef_idx(codec, 0x67, 0xf000, 0x3000);
/* fallthrough */
case 0x10ec0215:
case 0x10ec0233: case 0x10ec0233:
case 0x10ec0236: case 0x10ec0236:
case 0x10ec0255: case 0x10ec0255:
...@@ -336,10 +340,8 @@ static void alc_fill_eapd_coef(struct hda_codec *codec) ...@@ -336,10 +340,8 @@ static void alc_fill_eapd_coef(struct hda_codec *codec)
case 0x10ec0286: case 0x10ec0286:
case 0x10ec0288: case 0x10ec0288:
case 0x10ec0285: case 0x10ec0285:
case 0x10ec0295:
case 0x10ec0298: case 0x10ec0298:
case 0x10ec0289: case 0x10ec0289:
case 0x10ec0299:
alc_update_coef_idx(codec, 0x10, 1<<9, 0); alc_update_coef_idx(codec, 0x10, 1<<9, 0);
break; break;
case 0x10ec0275: case 0x10ec0275:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment