2010-08-29 17:35:23 +03:00
|
|
|
--- a/drivers/pci/Kconfig
|
|
|
|
+++ b/drivers/pci/Kconfig
|
|
|
|
@@ -40,6 +40,12 @@ config PCI_STUB
|
|
|
|
|
|
|
|
When in doubt, say N.
|
|
|
|
|
|
|
|
+config PCI_DISABLE_COMMON_QUIRKS
|
|
|
|
+ bool "PCI disable common quirks"
|
|
|
|
+ depends on PCI
|
|
|
|
+ help
|
|
|
|
+ If you don't know what to do here, say N.
|
|
|
|
+
|
|
|
|
config HT_IRQ
|
|
|
|
bool "Interrupts on hypertransport devices"
|
|
|
|
default y
|
|
|
|
--- a/drivers/pci/quirks.c
|
|
|
|
+++ b/drivers/pci/quirks.c
|
2010-10-05 11:50:54 +03:00
|
|
|
@@ -104,6 +104,7 @@ static void __devinit quirk_mmio_always_
|
2010-08-29 17:35:23 +03:00
|
|
|
}
|
2010-10-05 11:50:54 +03:00
|
|
|
DECLARE_PCI_FIXUP_EARLY(PCI_ANY_ID, PCI_ANY_ID, quirk_mmio_always_on);
|
2010-08-29 17:35:23 +03:00
|
|
|
|
|
|
|
+#ifndef CONFIG_PCI_DISABLE_COMMON_QUIRKS
|
|
|
|
/* The Mellanox Tavor device gives false positive parity errors
|
|
|
|
* Mark this device with a broken_parity_status, to allow
|
|
|
|
* PCI scanning code to "skip" this now blacklisted device.
|
2010-10-05 11:50:54 +03:00
|
|
|
@@ -1923,7 +1924,9 @@ static void __devinit fixup_rev1_53c810(
|
2010-08-29 17:35:23 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NCR, PCI_DEVICE_ID_NCR_53C810, fixup_rev1_53c810);
|
|
|
|
+#endif /* !CONFIG_PCI_DISABLE_COMMON_QUIRKS */
|
|
|
|
|
|
|
|
+#ifndef CONFIG_PCI_DISABLE_COMMON_QUIRKS
|
|
|
|
/* Enable 1k I/O space granularity on the Intel P64H2 */
|
|
|
|
static void __devinit quirk_p64h2_1k_io(struct pci_dev *dev)
|
|
|
|
{
|
2010-10-05 11:50:54 +03:00
|
|
|
@@ -2596,6 +2599,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
|
2010-08-29 17:35:23 +03:00
|
|
|
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1518, quirk_i82576_sriov);
|
|
|
|
|
|
|
|
#endif /* CONFIG_PCI_IOV */
|
|
|
|
+#endif /* !CONFIG_PCI_DISABLE_COMMON_QUIRKS */
|
|
|
|
|
|
|
|
/* Allow manual resource allocation for PCI hotplug bridges
|
|
|
|
* via pci=hpmemsize=nnM and pci=hpiosize=nnM parameters. For
|