summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorKailang Yang <kailang@realtek.com>2018-03-14 16:08:57 +0800
committerTakashi Iwai <tiwai@suse.de>2018-03-22 09:43:28 +0100
commit88d42b2b45d7208cc872c2c9dec0b1ae6c6008d7 (patch)
treed9fe56daa2924f4d5bc8bd4b8014a4e1c40dfdc2 /sound
parentf0ba9d699e5ca2bcd07f70185d18720c4f1b597c (diff)
ALSA: hda/realtek - Fix speaker no sound after system resume
It will have a chance speaker no sound after system resume. To toggle NID 0x53 index 0x2 bit 15 will solve this issue. This usage will also suitable with ALC256. Fixes: 4a219ef8f370 ("ALSA: hda/realtek - Add ALC256 HP depop function") Signed-off-by: Kailang Yang <kailang@realtek.com> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/patch_realtek.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 619d1f92b6eb..aef1f52db7d9 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -3130,6 +3130,8 @@ static void alc256_init(struct hda_codec *codec)
alc_update_coef_idx(codec, 0x46, 3 << 12, 0);
alc_update_coefex_idx(codec, 0x57, 0x04, 0x0007, 0x4); /* Hight power */
+ alc_update_coefex_idx(codec, 0x53, 0x02, 0x8000, 1 << 15); /* Clear bit */
+ alc_update_coefex_idx(codec, 0x53, 0x02, 0x8000, 0 << 15);
}
static void alc256_shutup(struct hda_codec *codec)
@@ -7168,6 +7170,8 @@ static int patch_alc269(struct hda_codec *codec)
break;
case 0x10ec0257:
spec->codec_variant = ALC269_TYPE_ALC257;
+ spec->shutup = alc256_shutup;
+ spec->init_hook = alc256_init;
spec->gen.mixer_nid = 0;
break;
case 0x10ec0215: