[PATCH] PCI: Provide a boot parameter to disable MSI
Several drivers are starting to grow options to disable MSI. However, it's often a host chipset issue, not something which individual drivers should handle. So we add the pci=nomsi kernel parameter to allow the user to disable MSI modes for systems we haven't added to the quirk list yet. Signed-off-by: Matthew Wilcox <matthew@wil.cx> Signed-off-by: Randy Dunlap <rdunlap@xenotime.net> Acked-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
5eeca8e688
commit
309e57df7b
@@ -765,8 +765,11 @@ void pci_disable_msi(struct pci_dev* dev)
|
||||
u16 control;
|
||||
unsigned long flags;
|
||||
|
||||
if (!pci_msi_enable)
|
||||
return;
|
||||
if (!dev)
|
||||
return;
|
||||
|
||||
pos = pci_find_capability(dev, PCI_CAP_ID_MSI);
|
||||
if (!pos)
|
||||
return;
|
||||
@@ -1026,6 +1029,8 @@ void pci_disable_msix(struct pci_dev* dev)
|
||||
int pos, temp;
|
||||
u16 control;
|
||||
|
||||
if (!pci_msi_enable)
|
||||
return;
|
||||
if (!dev)
|
||||
return;
|
||||
|
||||
@@ -1152,6 +1157,11 @@ void msi_remove_pci_irq_vectors(struct pci_dev* dev)
|
||||
}
|
||||
}
|
||||
|
||||
void pci_no_msi(void)
|
||||
{
|
||||
pci_msi_enable = 0;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(pci_enable_msi);
|
||||
EXPORT_SYMBOL(pci_disable_msi);
|
||||
EXPORT_SYMBOL(pci_enable_msix);
|
||||
|
Reference in New Issue
Block a user