[adm5120] add kernel config option to disabling common PCI quirks, resync kernel...
[openwrt/svn-archive/archive.git] / target / linux / adm5120 / patches-2.6.23 / 202-pci_disable_common_quirks.patch
1 Index: linux-2.6.23/drivers/pci/Kconfig
2 ==================================================================
3 --- linux-2.6.23.orig/drivers/pci/Kconfig 2007-10-09 22:31:38.000000000 +0200
4 +++ linux-2.6.23/drivers/pci/Kconfig 2007-10-13 14:21:03.000000000 +0200
5 @@ -31,6 +31,12 @@
6
7 When in doubt, say N.
8
9 +config PCI_DISABLE_COMMON_QUIRKS
10 + bool "PCI disable common quirks"
11 + depends on PCI
12 + help
13 + If you don't know what to do here, say N.
14 +
15 config HT_IRQ
16 bool "Interrupts on hypertransport devices"
17 default y
18 Index: linux-2.6.23/drivers/pci/quirks.c
19 ==================================================================
20 --- linux-2.6.23.orig/drivers/pci/quirks.c 2007-10-09 22:31:38.000000000 +0200
21 +++ linux-2.6.23/drivers/pci/quirks.c 2007-10-13 14:46:41.000000000 +0200
22 @@ -23,6 +23,7 @@
23 #include <linux/acpi.h>
24 #include "pci.h"
25
26 +#ifndef CONFIG_PCI_DISABLE_COMMON_QUIRKS
27 /* The Mellanox Tavor device gives false positive parity errors
28 * Mark this device with a broken_parity_status, to allow
29 * PCI scanning code to "skip" this now blacklisted device.
30 @@ -1510,6 +1511,7 @@
31 }
32 }
33 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NCR, PCI_DEVICE_ID_NCR_53C810, fixup_rev1_53c810);
34 +#endif /* !CONFIG_PCI_DISABLE_COMMON_QUIRKS */
35
36 static void pci_do_fixups(struct pci_dev *dev, struct pci_fixup *f, struct pci_fixup *end)
37 {
38 @@ -1573,6 +1575,7 @@
39 }
40 EXPORT_SYMBOL(pci_fixup_device);
41
42 +#ifndef CONFIG_PCI_DISABLE_COMMON_QUIRKS
43 /* Enable 1k I/O space granularity on the Intel P64H2 */
44 static void __devinit quirk_p64h2_1k_io(struct pci_dev *dev)
45 {
46 @@ -1743,3 +1746,4 @@
47 DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_CK804_PCIE,
48 quirk_nvidia_ck804_msi_ht_cap);
49 #endif /* CONFIG_PCI_MSI */
50 +#endif /* !CONFIG_PCI_DISABLE_COMMON_QUIRKS */