diff options
Diffstat (limited to 'drivers/pci')
-rw-r--r-- | drivers/pci/hotplug/pciehp_ctrl.c | 5 | ||||
-rw-r--r-- | drivers/pci/hotplug/pciehp_pci.c | 5 | ||||
-rw-r--r-- | drivers/pci/pci.h | 1 | ||||
-rw-r--r-- | drivers/pci/pcie/portdrv_core.c | 5 | ||||
-rw-r--r-- | drivers/pci/quirks.c | 5 |
5 files changed, 2 insertions, 19 deletions
diff --git a/drivers/pci/hotplug/pciehp_ctrl.c b/drivers/pci/hotplug/pciehp_ctrl.c index 8aab8edf123e..b97cb4c3e0fe 100644 --- a/drivers/pci/hotplug/pciehp_ctrl.c +++ b/drivers/pci/hotplug/pciehp_ctrl.c | |||
@@ -246,11 +246,6 @@ static int board_added(struct slot *p_slot) | |||
246 | goto err_exit; | 246 | goto err_exit; |
247 | } | 247 | } |
248 | 248 | ||
249 | /* | ||
250 | * Some PCI Express root ports require fixup after hot-plug operation. | ||
251 | */ | ||
252 | if (pcie_mch_quirk) | ||
253 | pci_fixup_device(pci_fixup_final, ctrl->pci_dev); | ||
254 | if (PWR_LED(ctrl)) | 249 | if (PWR_LED(ctrl)) |
255 | p_slot->hpc_ops->green_led_on(p_slot); | 250 | p_slot->hpc_ops->green_led_on(p_slot); |
256 | 251 | ||
diff --git a/drivers/pci/hotplug/pciehp_pci.c b/drivers/pci/hotplug/pciehp_pci.c index 10f9566cceeb..af295d080a00 100644 --- a/drivers/pci/hotplug/pciehp_pci.c +++ b/drivers/pci/hotplug/pciehp_pci.c | |||
@@ -285,11 +285,6 @@ int pciehp_unconfigure_device(struct slot *p_slot) | |||
285 | } | 285 | } |
286 | pci_dev_put(temp); | 286 | pci_dev_put(temp); |
287 | } | 287 | } |
288 | /* | ||
289 | * Some PCI Express root ports require fixup after hot-plug operation. | ||
290 | */ | ||
291 | if (pcie_mch_quirk) | ||
292 | pci_fixup_device(pci_fixup_final, p_slot->ctrl->pci_dev); | ||
293 | 288 | ||
294 | return rc; | 289 | return rc; |
295 | } | 290 | } |
diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h index 73d9d92715a0..d92d1954a2fb 100644 --- a/drivers/pci/pci.h +++ b/drivers/pci/pci.h | |||
@@ -134,7 +134,6 @@ static inline int pci_no_d1d2(struct pci_dev *dev) | |||
134 | return (dev->no_d1d2 || parent_dstates); | 134 | return (dev->no_d1d2 || parent_dstates); |
135 | 135 | ||
136 | } | 136 | } |
137 | extern int pcie_mch_quirk; | ||
138 | extern struct device_attribute pci_dev_attrs[]; | 137 | extern struct device_attribute pci_dev_attrs[]; |
139 | extern struct device_attribute dev_attr_cpuaffinity; | 138 | extern struct device_attribute dev_attr_cpuaffinity; |
140 | extern struct device_attribute dev_attr_cpulistaffinity; | 139 | extern struct device_attribute dev_attr_cpulistaffinity; |
diff --git a/drivers/pci/pcie/portdrv_core.c b/drivers/pci/pcie/portdrv_core.c index 13ffdc35ea0e..af9bca3139e7 100644 --- a/drivers/pci/pcie/portdrv_core.c +++ b/drivers/pci/pcie/portdrv_core.c | |||
@@ -191,10 +191,6 @@ static int assign_interrupt_mode(struct pci_dev *dev, int *vectors, int mask) | |||
191 | int irq, interrupt_mode = PCIE_PORT_NO_IRQ; | 191 | int irq, interrupt_mode = PCIE_PORT_NO_IRQ; |
192 | int i; | 192 | int i; |
193 | 193 | ||
194 | /* Check MSI quirk */ | ||
195 | if (port_data->port_type == PCIE_RC_PORT && pcie_mch_quirk) | ||
196 | goto Fallback; | ||
197 | |||
198 | /* Try to use MSI-X if supported */ | 194 | /* Try to use MSI-X if supported */ |
199 | if (!pcie_port_enable_msix(dev, vectors, mask)) | 195 | if (!pcie_port_enable_msix(dev, vectors, mask)) |
200 | return PCIE_PORT_MSIX_MODE; | 196 | return PCIE_PORT_MSIX_MODE; |
@@ -203,7 +199,6 @@ static int assign_interrupt_mode(struct pci_dev *dev, int *vectors, int mask) | |||
203 | if (!pci_enable_msi(dev)) | 199 | if (!pci_enable_msi(dev)) |
204 | interrupt_mode = PCIE_PORT_MSI_MODE; | 200 | interrupt_mode = PCIE_PORT_MSI_MODE; |
205 | 201 | ||
206 | Fallback: | ||
207 | if (interrupt_mode == PCIE_PORT_NO_IRQ && dev->pin) | 202 | if (interrupt_mode == PCIE_PORT_NO_IRQ && dev->pin) |
208 | interrupt_mode = PCIE_PORT_INTx_MODE; | 203 | interrupt_mode = PCIE_PORT_INTx_MODE; |
209 | 204 | ||
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index 10731373d00e..e3034379a6c3 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c | |||
@@ -31,8 +31,6 @@ int isa_dma_bridge_buggy; | |||
31 | EXPORT_SYMBOL(isa_dma_bridge_buggy); | 31 | EXPORT_SYMBOL(isa_dma_bridge_buggy); |
32 | int pci_pci_problems; | 32 | int pci_pci_problems; |
33 | EXPORT_SYMBOL(pci_pci_problems); | 33 | EXPORT_SYMBOL(pci_pci_problems); |
34 | int pcie_mch_quirk; | ||
35 | EXPORT_SYMBOL(pcie_mch_quirk); | ||
36 | 34 | ||
37 | #ifdef CONFIG_PCI_QUIRKS | 35 | #ifdef CONFIG_PCI_QUIRKS |
38 | /* | 36 | /* |
@@ -1500,7 +1498,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_EESSC, quirk_a | |||
1500 | 1498 | ||
1501 | static void __devinit quirk_pcie_mch(struct pci_dev *pdev) | 1499 | static void __devinit quirk_pcie_mch(struct pci_dev *pdev) |
1502 | { | 1500 | { |
1503 | pcie_mch_quirk = 1; | 1501 | pci_msi_off(pdev); |
1502 | pdev->no_msi = 1; | ||
1504 | } | 1503 | } |
1505 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_E7520_MCH, quirk_pcie_mch); | 1504 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_E7520_MCH, quirk_pcie_mch); |
1506 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_E7320_MCH, quirk_pcie_mch); | 1505 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_E7320_MCH, quirk_pcie_mch); |