summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2016-03-15 18:15:26 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-04-12 07:33:33 -0700
commit4cda9ceeb71eed24a4e641481740333853b53e9f (patch)
tree9bb15d23eb4cbb0db11dfb4073763a59b0a71747 /sound
parentd167c1d116598ca41dd4002b7d7ca8f9e75067e6 (diff)
downloadlinux-stable-4cda9ceeb71eed24a4e641481740333853b53e9f.tar.gz
linux-stable-4cda9ceeb71eed24a4e641481740333853b53e9f.tar.bz2
linux-stable-4cda9ceeb71eed24a4e641481740333853b53e9f.zip
ALSA: hda - Limit i915 HDMI binding only for HSW and later
commit b62232d429fa8b1dcf5d8503aa5a5397a03e646a upstream. It turned out that the pre-HSW Intel chips are incompatible with the naive assumption we had -- the fixed mapping between the port and the HD-audio widget. This may result in the bad access, as captured by the recent patch to add a WARN_ON() for the port mapping check. As a quick workaround, disable the i915 audio component binding for all pre-Haswell models. Reported-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/patch_hdmi.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
index 0c17d775491a..cbe32d0929d3 100644
--- a/sound/pci/hda/patch_hdmi.c
+++ b/sound/pci/hda/patch_hdmi.c
@@ -2460,9 +2460,10 @@ static int patch_generic_hdmi(struct hda_codec *codec)
codec->spec = spec;
hdmi_array_init(spec, 4);
- /* Try to bind with i915 for any Intel codecs (if not done yet) */
+ /* Try to bind with i915 for Intel HSW+ codecs (if not done yet) */
if (!codec_has_acomp(codec) &&
- (codec->core.vendor_id >> 16) == 0x8086)
+ (codec->core.vendor_id >> 16) == 0x8086 &&
+ is_haswell_plus(codec))
if (!snd_hdac_i915_init(&codec->bus->core))
spec->i915_bound = true;