diff options
Diffstat (limited to 'drivers/pci')
-rw-r--r-- | drivers/pci/msi.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c index 0df626cf47d8..529113dc3e22 100644 --- a/drivers/pci/msi.c +++ b/drivers/pci/msi.c | |||
@@ -854,13 +854,10 @@ void pci_disable_msix(struct pci_dev* dev) | |||
854 | **/ | 854 | **/ |
855 | void msi_remove_pci_irq_vectors(struct pci_dev* dev) | 855 | void msi_remove_pci_irq_vectors(struct pci_dev* dev) |
856 | { | 856 | { |
857 | int pos; | ||
858 | |||
859 | if (!pci_msi_enable || !dev) | 857 | if (!pci_msi_enable || !dev) |
860 | return; | 858 | return; |
861 | 859 | ||
862 | pos = pci_find_capability(dev, PCI_CAP_ID_MSI); | 860 | if (dev->msi_enabled) { |
863 | if (pos > 0 && dev->msi_enabled) { | ||
864 | if (irq_has_action(dev->first_msi_irq)) { | 861 | if (irq_has_action(dev->first_msi_irq)) { |
865 | printk(KERN_WARNING "PCI: %s: msi_remove_pci_irq_vectors() " | 862 | printk(KERN_WARNING "PCI: %s: msi_remove_pci_irq_vectors() " |
866 | "called without free_irq() on MSI irq %d\n", | 863 | "called without free_irq() on MSI irq %d\n", |
@@ -869,8 +866,7 @@ void msi_remove_pci_irq_vectors(struct pci_dev* dev) | |||
869 | } else /* Release MSI irq assigned to this device */ | 866 | } else /* Release MSI irq assigned to this device */ |
870 | msi_free_irq(dev, dev->first_msi_irq); | 867 | msi_free_irq(dev, dev->first_msi_irq); |
871 | } | 868 | } |
872 | pos = pci_find_capability(dev, PCI_CAP_ID_MSIX); | 869 | if (dev->msix_enabled) { |
873 | if (pos > 0 && dev->msix_enabled) { | ||
874 | int irq, head, tail = 0, warning = 0; | 870 | int irq, head, tail = 0, warning = 0; |
875 | void __iomem *base = NULL; | 871 | void __iomem *base = NULL; |
876 | 872 | ||