47 lines
1.3 KiB
Diff
47 lines
1.3 KiB
Diff
|
--- a/drivers/pci/Kconfig
|
||
|
+++ b/drivers/pci/Kconfig
|
||
|
@@ -42,6 +42,12 @@
|
||
|
|
||
|
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
|
||
|
@@ -24,6 +24,7 @@
|
||
|
#include <linux/kallsyms.h>
|
||
|
#include "pci.h"
|
||
|
|
||
|
+#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.
|
||
|
@@ -1554,6 +1555,7 @@
|
||
|
}
|
||
|
}
|
||
|
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NCR, PCI_DEVICE_ID_NCR_53C810, fixup_rev1_53c810);
|
||
|
+#endif /* !CONFIG_PCI_DISABLE_COMMON_QUIRKS */
|
||
|
|
||
|
static void pci_do_fixups(struct pci_dev *dev, struct pci_fixup *f, struct pci_fixup *end)
|
||
|
{
|
||
|
@@ -1634,6 +1636,7 @@
|
||
|
}
|
||
|
EXPORT_SYMBOL(pci_fixup_device);
|
||
|
|
||
|
+#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)
|
||
|
{
|
||
|
@@ -2007,3 +2010,4 @@
|
||
|
quirk_msi_intx_disable_bug);
|
||
|
|
||
|
#endif /* CONFIG_PCI_MSI */
|
||
|
+#endif /* !CONFIG_PCI_DISABLE_COMMON_QUIRKS */
|