aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2014-02-03 09:56:13 +0100
committerBen Hutchings <ben@decadent.org.uk>2014-04-02 00:58:48 +0100
commit9735862809c0aad5cb427a13868ce1a1997871fb (patch)
treee79ef3c20ce8b7bac2cd3121259acf1efb0330c3 /sound/pci/hda
parentfecfa5d27e1a8f833d2d4d4705946c7aaa6b4e07 (diff)
downloadkernel_samsung_smdk4412-9735862809c0aad5cb427a13868ce1a1997871fb.zip
kernel_samsung_smdk4412-9735862809c0aad5cb427a13868ce1a1997871fb.tar.gz
kernel_samsung_smdk4412-9735862809c0aad5cb427a13868ce1a1997871fb.tar.bz2
ALSA: hda/realtek - Avoid invalid COEFs for ALC271X
commit d3c56568f43807135f2c2a09582a69f809f0d8b7 upstream. We've seen often problems after suspend/resume on Acer Aspire One AO725 with ALC271X codec as reported in kernel bugzilla, and it turned out that some COEFs doesn't work and triggers the codec communication stall. Since these magic COEF setups are specific to ALC269VB for some PLL configurations, the machine works even without these manual adjustment. So, let's simply avoid applying them for ALC271X. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=52181 Signed-off-by: Takashi Iwai <tiwai@suse.de> [bwh: Backported to 3.2: return 0] Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Diffstat (limited to 'sound/pci/hda')
-rw-r--r--sound/pci/hda/patch_realtek.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 1f78ca6..36bce68 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -5157,6 +5157,9 @@ static int alc269_fill_coef(struct hda_codec *codec)
if (spec->codec_variant != ALC269_TYPE_ALC269VB)
return 0;
+ /* ALC271X doesn't seem to support these COEFs (bko#52181) */
+ if (!strcmp(codec->chip_name, "ALC271X"))
+ return 0;
if ((alc_get_coef0(codec) & 0x00ff) < 0x015) {
alc_write_coef_idx(codec, 0xf, 0x960b);