diff --git a/sound/pci/hda/hda_auto_parser.c b/sound/pci/hda/hda_auto_parser.c index f7520b9f909cfb0d577ed745bef272675b23477a..647218d69f6890862b5fcfd690dc9e09d29bc3ea 100644 --- a/sound/pci/hda/hda_auto_parser.c +++ b/sound/pci/hda/hda_auto_parser.c @@ -727,7 +727,7 @@ void snd_hda_pick_fixup(struct hda_codec *codec, models++; } } - if (id < 0) { + if (id < 0 && quirk) { q = snd_pci_quirk_lookup(codec->bus->pci, quirk); if (q) { id = q->value; @@ -736,7 +736,7 @@ void snd_hda_pick_fixup(struct hda_codec *codec, #endif } } - if (id < 0) { + if (id < 0 && quirk) { for (q = quirk; q->subvendor; q++) { unsigned int vendorid = q->subdevice | (q->subvendor << 16);