PATH: 2.5.28 (resend #1) Handle dunord pci decode problem

Alan Cox (alan@irongate.swansea.linux.org.uk)
Thu, 25 Jul 2002 15:57:11 +0100 (BST)


diff -u --new-file --recursive --exclude-from /usr/src/exclude linux-2.5.28/drivers/pci/quirks.c linux-2.5.28-ac1/drivers/pci/quirks.c
--- linux-2.5.28/drivers/pci/quirks.c Thu Jul 25 10:49:20 2002
+++ linux-2.5.28-ac1/drivers/pci/quirks.c Sun Jul 21 19:43:26 2002
@@ -457,10 +457,26 @@
}

/*
+ * DreamWorks provided workaround for Dunord I-3000 problem
+ *
+ * This card decodes and responds to addresses not apparently
+ * assigned to it. We force a larger allocation to ensure that
+ * nothing gets put too close to it.
+ */
+
+static void __init quirk_dunord ( struct pci_dev * dev )
+{
+ struct resource * r = & dev -> resource [ 1 ];
+ r -> start = 0;
+ r -> end = 0xffffff;
+}
+
+/*
* The main table of quirks.
*/

static struct pci_fixup pci_fixups[] __initdata = {
+ { PCI_FIXUP_HEADER, PCI_VENDOR_ID_DUNORD, PCI_DEVICE_ID_DUNORD_I3000, quirk_dunord },
{ PCI_FIXUP_FINAL, PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82441, quirk_passive_release },
{ PCI_FIXUP_FINAL, PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82441, quirk_passive_release },
/*
diff -u --new-file --recursive --exclude-from /usr/src/exclude linux-2.5.28/include/linux/pci_ids.h linux-2.5.28-ac1/include/linux/pci_ids.h
--- linux-2.5.28/include/linux/pci_ids.h Thu Jul 25 11:09:41 2002
+++ linux-2.5.28-ac1/include/linux/pci_ids.h Thu Jul 25 11:10:31 2002
@@ -1612,6 +1612,9 @@
#define PCI_DEVICE_ID_DCI_PCCOM4 0x0001
#define PCI_DEVICE_ID_DCI_PCCOM8 0x0002

+#define PCI_VENDOR_ID_DUNORD 0x5544
+#define PCI_DEVICE_ID_DUNORD_I3000 0x0001
+
#define PCI_VENDOR_ID_GENROCO 0x5555
#define PCI_DEVICE_ID_GENROCO_HFP832 0x0003

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/