aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/hda_auto_parser.c
diff options
context:
space:
mode:
authorHui Wang <hui.wang@canonical.com>2014-05-26 16:22:43 +0800
committerTakashi Iwai <tiwai@suse.de>2014-05-26 11:05:55 +0200
commitc687200b9d4ef60042a50f7d942cfef120cc7bf1 (patch)
treea2750a8deb7d5a4f9a26782e8b8fa9c19830a27d /sound/pci/hda/hda_auto_parser.c
parentALSA: hda - get subvendor from codec rather than pci_dev (diff)
downloadlinux-dev-c687200b9d4ef60042a50f7d942cfef120cc7bf1.tar.xz
linux-dev-c687200b9d4ef60042a50f7d942cfef120cc7bf1.zip
ALSA: hda - drop def association and sequence from pinconf comparing
A lot a machine have the same codec, but they have different default pinconf setting just because the def association and sequence is different, as a result they can't share a hda_pintbl[], to overcome it, we don't compare def association and sequence in the pinconf matching. Signed-off-by: Hui Wang <hui.wang@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_auto_parser.c')
-rw-r--r--sound/pci/hda/hda_auto_parser.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/pci/hda/hda_auto_parser.c b/sound/pci/hda/hda_auto_parser.c
index b684c6e4f301..3cf913772e9b 100644
--- a/sound/pci/hda/hda_auto_parser.c
+++ b/sound/pci/hda/hda_auto_parser.c
@@ -844,7 +844,8 @@ static bool pin_config_match(struct hda_codec *codec,
{
for (; pins->nid; pins++) {
u32 def_conf = snd_hda_codec_get_pincfg(codec, pins->nid);
- if (pins->val != def_conf)
+ u32 mask = 0xffffff00;
+ if ((pins->val & mask) != (def_conf & mask))
return false;
}
return true;