ALSA: hda - Fix invalid pin and GPIO for Apple laptops with CS codecs
authorTakashi Iwai <tiwai@suse.de>
Tue, 22 Nov 2011 19:00:31 +0000 (20:00 +0100)
committerTakashi Iwai <tiwai@suse.de>
Wed, 23 Nov 2011 06:31:49 +0000 (07:31 +0100)
commit6dfeb703e386369d9f1585d29482efe7b2b4401d
tree3a473f91325adc2875e11a82129153c082bdf9f0
parente2301a4de22c438f5a962c7cefc3e9cba736991c
ALSA: hda - Fix invalid pin and GPIO for Apple laptops with CS codecs

The PCI SSID 8086:7270 is commonly used for multiple Apple machines,
thus we can't use it as identifier for a unique model.  Because of this
conflict, some machines show weird behavior.  For example, MacBook Air
shows Front and Surround speakers although only Surround works due to
the wrongly overridden pin-configuration for imac27.

This patch fixes two things:
- Stop the wrong pin-config override of imac27 by removing PCI SSID
  entry for avoiding the wrong mappings,
- Add the generic GPIO setup for Apple machines by checking the codec
  SSID vendor bits

Tested-by: Linus Torvalds <torvalds@linux-foundation.org>
Tested-by: Dirk Hohndel <hohndel@infradead.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_cirrus.c