[PATCH] PCI: NCR 53c810 quirk
authorIvan Kokshaysky <ink@jurassic.park.msu.ru>
Mon, 31 Oct 2005 22:43:56 +0000 (01:43 +0300)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 11 Nov 2005 00:09:16 +0000 (16:09 -0800)
Move the PPC fixup for old NCR 810 controllers to generic quirks -
it's needed for Alpha, x86 and other architectures that use
setup-bus.c.

Thanks to Jay Estabrook for pointing out the issue.

Signed-off-by: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/ppc/kernel/pci.c
drivers/pci/quirks.c

index e8f4e576750a07aa220d29f7871d33a5c1316ebf..48ed58f995c06e56595d5859aa364421faa86575 100644 (file)
@@ -61,20 +61,6 @@ struct pci_controller** hose_tail = &hose_head;
 
 static int pci_bus_count;
 
-static void
-fixup_rev1_53c810(struct pci_dev* dev)
-{
-       /* rev 1 ncr53c810 chips don't set the class at all which means
-        * they don't get their resources remapped. Fix that here.
-        */
-
-       if ((dev->class == PCI_CLASS_NOT_DEFINED)) {
-               printk("NCR 53c810 rev 1 detected, setting PCI class.\n");
-               dev->class = PCI_CLASS_STORAGE_SCSI;
-       }
-}
-DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NCR,    PCI_DEVICE_ID_NCR_53C810,       fixup_rev1_53c810);
-
 static void
 fixup_broken_pcnet32(struct pci_dev* dev)
 {
index afcbd50ffc0ee7fc3c8476c879255aa26f55a898..3a4f49f4effbfd647371bae04c040ec761d924a3 100644 (file)
@@ -1243,6 +1243,21 @@ static void __devinit quirk_netmos(struct pci_dev *dev)
 }
 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NETMOS, PCI_ANY_ID, quirk_netmos);
 
+
+static void __devinit fixup_rev1_53c810(struct pci_dev* dev)
+{
+       /* rev 1 ncr53c810 chips don't set the class at all which means
+        * they don't get their resources remapped. Fix that here.
+        */
+
+       if (dev->class == PCI_CLASS_NOT_DEFINED) {
+               printk(KERN_INFO "NCR 53c810 rev 1 detected, setting PCI class.\n");
+               dev->class = PCI_CLASS_STORAGE_SCSI;
+       }
+}
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NCR, PCI_DEVICE_ID_NCR_53C810, fixup_rev1_53c810);
+
+
 static void pci_do_fixups(struct pci_dev *dev, struct pci_fixup *f, struct pci_fixup *end)
 {
        while (f < end) {