aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/pci/quirks.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index 371ab8821f10..e8a7f1b1b2bc 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -1840,7 +1840,7 @@ static void __devinit quirk_nvidia_ck804_msi_ht_cap(struct pci_dev *dev)
1840 /* check HT MSI cap on this chipset and the root one. 1840 /* check HT MSI cap on this chipset and the root one.
1841 * a single one having MSI is enough to be sure that MSI are supported. 1841 * a single one having MSI is enough to be sure that MSI are supported.
1842 */ 1842 */
1843 pdev = pci_find_slot(dev->bus->number, 0); 1843 pdev = pci_get_slot(dev->bus, 0);
1844 if (dev->subordinate && !msi_ht_cap_enabled(dev) 1844 if (dev->subordinate && !msi_ht_cap_enabled(dev)
1845 && !msi_ht_cap_enabled(pdev)) { 1845 && !msi_ht_cap_enabled(pdev)) {
1846 printk(KERN_WARNING "PCI: MSI quirk detected. " 1846 printk(KERN_WARNING "PCI: MSI quirk detected. "
@@ -1848,6 +1848,7 @@ static void __devinit quirk_nvidia_ck804_msi_ht_cap(struct pci_dev *dev)
1848 pci_name(dev)); 1848 pci_name(dev));
1849 dev->subordinate->bus_flags |= PCI_BUS_FLAGS_NO_MSI; 1849 dev->subordinate->bus_flags |= PCI_BUS_FLAGS_NO_MSI;
1850 } 1850 }
1851 pci_dev_put(pdev);
1851} 1852}
1852DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_CK804_PCIE, 1853DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_CK804_PCIE,
1853 quirk_nvidia_ck804_msi_ht_cap); 1854 quirk_nvidia_ck804_msi_ht_cap);