diff options
Diffstat (limited to 'drivers/pci')
-rw-r--r-- | drivers/pci/quirks.c | 3 |
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 | } |
1852 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_CK804_PCIE, | 1853 | DECLARE_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); |