diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/pci/quirks.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index afcbd50ffc0e..3a4f49f4effb 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c | |||
@@ -1243,6 +1243,21 @@ static void __devinit quirk_netmos(struct pci_dev *dev) | |||
1243 | } | 1243 | } |
1244 | DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NETMOS, PCI_ANY_ID, quirk_netmos); | 1244 | DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NETMOS, PCI_ANY_ID, quirk_netmos); |
1245 | 1245 | ||
1246 | |||
1247 | static void __devinit fixup_rev1_53c810(struct pci_dev* dev) | ||
1248 | { | ||
1249 | /* rev 1 ncr53c810 chips don't set the class at all which means | ||
1250 | * they don't get their resources remapped. Fix that here. | ||
1251 | */ | ||
1252 | |||
1253 | if (dev->class == PCI_CLASS_NOT_DEFINED) { | ||
1254 | printk(KERN_INFO "NCR 53c810 rev 1 detected, setting PCI class.\n"); | ||
1255 | dev->class = PCI_CLASS_STORAGE_SCSI; | ||
1256 | } | ||
1257 | } | ||
1258 | DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NCR, PCI_DEVICE_ID_NCR_53C810, fixup_rev1_53c810); | ||
1259 | |||
1260 | |||
1246 | static void pci_do_fixups(struct pci_dev *dev, struct pci_fixup *f, struct pci_fixup *end) | 1261 | static void pci_do_fixups(struct pci_dev *dev, struct pci_fixup *f, struct pci_fixup *end) |
1247 | { | 1262 | { |
1248 | while (f < end) { | 1263 | while (f < end) { |