Skip to content

Commit 897a0b6

Browse files
Ahmed S. DarwishKAGA-KOKO
authored andcommitted
PCI/MSI: Move pci_msi_enabled() to api.c
To disentangle the maze in msi.c, all exported device-driver MSI APIs are now to be grouped in one file, api.c. Move pci_msi_enabled() and make its kernel-doc comprehensive. Signed-off-by: Ahmed S. Darwish <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]> Acked-by: Bjorn Helgaas <[email protected]> Link: https://lore.kernel.org/r/[email protected]
1 parent be37b84 commit 897a0b6

File tree

3 files changed

+16
-13
lines changed

3 files changed

+16
-13
lines changed

drivers/pci/msi/api.c

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -307,3 +307,15 @@ void pci_free_irq_vectors(struct pci_dev *dev)
307307
pci_disable_msi(dev);
308308
}
309309
EXPORT_SYMBOL(pci_free_irq_vectors);
310+
311+
/**
312+
* pci_msi_enabled() - Are MSI(-X) interrupts enabled system-wide?
313+
*
314+
* Return: true if MSI has not been globally disabled through ACPI FADT,
315+
* PCI bridge quirks, or the "pci=nomsi" kernel command-line option.
316+
*/
317+
int pci_msi_enabled(void)
318+
{
319+
return pci_msi_enable;
320+
}
321+
EXPORT_SYMBOL(pci_msi_enabled);

drivers/pci/msi/msi.c

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
#include "../pci.h"
1414
#include "msi.h"
1515

16-
static int pci_msi_enable = 1;
16+
int pci_msi_enable = 1;
1717
int pci_msi_ignore_mask;
1818

1919
void pci_msi_update_mask(struct msi_desc *desc, u32 clear, u32 set)
@@ -864,15 +864,3 @@ void pci_no_msi(void)
864864
{
865865
pci_msi_enable = 0;
866866
}
867-
868-
/**
869-
* pci_msi_enabled - is MSI enabled?
870-
*
871-
* Returns true if MSI has not been disabled by the command-line option
872-
* pci=nomsi.
873-
**/
874-
int pci_msi_enabled(void)
875-
{
876-
return pci_msi_enable;
877-
}
878-
EXPORT_SYMBOL(pci_msi_enabled);

drivers/pci/msi/msi.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,9 @@ static inline __attribute_const__ u32 msi_multi_mask(struct msi_desc *desc)
8484
return (1 << (1 << desc->pci.msi_attrib.multi_cap)) - 1;
8585
}
8686

87+
/* Subsystem variables */
88+
extern int pci_msi_enable;
89+
8790
/* MSI internal functions invoked from the public APIs */
8891
void pci_msi_shutdown(struct pci_dev *dev);
8992
void pci_msix_shutdown(struct pci_dev *dev);

0 commit comments

Comments
 (0)