diff options
Diffstat (limited to 'sound/core/misc.c')
-rw-r--r-- | sound/core/misc.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sound/core/misc.c b/sound/core/misc.c index 38524f615d94..a9710e0c97af 100644 --- a/sound/core/misc.c +++ b/sound/core/misc.c | |||
@@ -95,12 +95,14 @@ snd_pci_quirk_lookup(struct pci_dev *pci, const struct snd_pci_quirk *list) | |||
95 | { | 95 | { |
96 | const struct snd_pci_quirk *q; | 96 | const struct snd_pci_quirk *q; |
97 | 97 | ||
98 | for (q = list; q->subvendor; q++) | 98 | for (q = list; q->subvendor; q++) { |
99 | if (q->subvendor == pci->subsystem_vendor && | 99 | if (q->subvendor != pci->subsystem_vendor) |
100 | (!q->subdevice || q->subdevice == pci->subsystem_device)) | 100 | continue; |
101 | if (!q->subdevice || | ||
102 | (pci->subsystem_device & q->subdevice_mask) == q->subdevice) | ||
101 | return q; | 103 | return q; |
104 | } | ||
102 | return NULL; | 105 | return NULL; |
103 | } | 106 | } |
104 | |||
105 | EXPORT_SYMBOL(snd_pci_quirk_lookup); | 107 | EXPORT_SYMBOL(snd_pci_quirk_lookup); |
106 | #endif | 108 | #endif |