workaround for buggy BIOSes and i845 chipsets

Michal Semler (cijoml@volny.cz)
Wed, 24 Jul 2002 02:14:06 +0200


Hello,
Vojtech Pavlik helped me to workaround this issue. This patch is backport
from 2.5 to 2.4 and is applicable into 2.4.19-rc3. Maybe somebody will need
it too. It works correctly on my system.

Michal

Patch:

--- linux/drivers/pci/quirks.c Sat Jul 20 11:08:15 2002
+++ linux/drivers/pci/quirks.c Tue Jul 23 14:51:43 2002
@@ -471,6 +471,15 @@
r -> end = 0xffffff;
}

+static void __init quirk_ide_trash(struct pci_dev *dev)
+{
+ int i;
+ for(i = 0; i < 4; i++)
+ dev->resource[i].start = dev->resource[i].end =
dev->resource[i].flags = 0;
+}
+
+#define PCI_DEVICE_ID_INTEL_82801DB_9 0x24cb
+
/*
* The main table of quirks.
*/
@@ -498,6 +507,9 @@
{ PCI_FIXUP_FINAL, PCI_VENDOR_ID_INTEL,
PCI_DEVICE_ID_INTEL_82443BX_0, quirk_natoma },
{ PCI_FIXUP_FINAL, PCI_VENDOR_ID_INTEL,
PCI_DEVICE_ID_INTEL_82443BX_1, quirk_natoma },
{ PCI_FIXUP_FINAL, PCI_VENDOR_ID_INTEL,
PCI_DEVICE_ID_INTEL_82443BX_2, quirk_natoma },
+ { PCI_FIXUP_HEADER, PCI_VENDOR_ID_INTEL,
PCI_DEVICE_ID_INTEL_82801CA_10, quirk_ide_trash },
+ { PCI_FIXUP_HEADER, PCI_VENDOR_ID_INTEL,
PCI_DEVICE_ID_INTEL_82801CA_11, quirk_ide_trash },
+ { PCI_FIXUP_HEADER, PCI_VENDOR_ID_INTEL,
PCI_DEVICE_ID_INTEL_82801DB_9, quirk_ide_trash },
{ PCI_FIXUP_FINAL, PCI_VENDOR_ID_SI,
PCI_DEVICE_ID_SI_5597, quirk_nopcipci },
{ PCI_FIXUP_FINAL, PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_496,
quirk_nopcipci },
{ PCI_FIXUP_FINAL, PCI_VENDOR_ID_VIA,
PCI_DEVICE_ID_VIA_8363_0, quirk_vialatency },
-
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/