Linux will implement an MSI domain for MSI/MSI-X when running as root on Microsoft Hypervisor. It will be using this function to reduce code duplication. Signed-off-by: Wei Liu <wei.liu@xxxxxxxxxx> --- arch/x86/include/asm/msi.h | 3 +++ arch/x86/kernel/apic/msi.c | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/arch/x86/include/asm/msi.h b/arch/x86/include/asm/msi.h index 25ddd0916bb2..5c0e102c03ec 100644 --- a/arch/x86/include/asm/msi.h +++ b/arch/x86/include/asm/msi.h @@ -11,4 +11,7 @@ int pci_msi_prepare(struct irq_domain *domain, struct device *dev, int nvec, void pci_msi_set_desc(msi_alloc_info_t *arg, struct msi_desc *desc); +struct msi_domain_info; +irq_hw_number_t pci_msi_get_hwirq(struct msi_domain_info *info, msi_alloc_info_t *arg); + #endif /* _ASM_X86_MSI_H */ diff --git a/arch/x86/kernel/apic/msi.c b/arch/x86/kernel/apic/msi.c index c2b2911feeef..dc9693a73933 100644 --- a/arch/x86/kernel/apic/msi.c +++ b/arch/x86/kernel/apic/msi.c @@ -205,11 +205,12 @@ void native_teardown_msi_irq(unsigned int irq) irq_domain_free_irqs(irq, 1); } -static irq_hw_number_t pci_msi_get_hwirq(struct msi_domain_info *info, +irq_hw_number_t pci_msi_get_hwirq(struct msi_domain_info *info, msi_alloc_info_t *arg) { return arg->msi_hwirq; } +EXPORT_SYMBOL_GPL(pci_msi_get_hwirq); int pci_msi_prepare(struct irq_domain *domain, struct device *dev, int nvec, msi_alloc_info_t *arg) -- 2.20.1