瀏覽代碼

ALSA: hda - ignore the assoc and seq when comparing pin configurations

More and more pin configurations have been adding to the pin quirk
table, lots of them are only different from assoc and seq, but they
all apply to the same QUIRK_FIXUP, if we don't compare assoc and seq
when matching pin configurations, it will greatly reduce the pin
quirk table size.

We have tested this change on a couple of Dell laptops, it worked
well.

Cc: <stable@vger.kernel.org>
Signed-off-by: Hui Wang <hui.wang@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Hui Wang 8 年之前
父節點
當前提交
64047d7f49
共有 1 個文件被更改,包括 1 次插入1 次删除
  1. 1 1
      sound/pci/hda/hda_auto_parser.c

+ 1 - 1
sound/pci/hda/hda_auto_parser.c

@@ -901,7 +901,7 @@ static bool pin_config_match(struct hda_codec *codec,
 		for (; t_pins->nid; t_pins++) {
 		for (; t_pins->nid; t_pins++) {
 			if (t_pins->nid == nid) {
 			if (t_pins->nid == nid) {
 				found = 1;
 				found = 1;
-				if (t_pins->val == cfg)
+				if ((t_pins->val & 0xfffffff0) == (cfg & 0xfffffff0))
 					break;
 					break;
 				else if ((cfg & 0xf0000000) == 0x40000000 && (t_pins->val & 0xf0000000) == 0x40000000)
 				else if ((cfg & 0xf0000000) == 0x40000000 && (t_pins->val & 0xf0000000) == 0x40000000)
 					break;
 					break;