summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include/asm/pci-bridge.h
diff options
context:
space:
mode:
authorDaniel Axtens <dja@axtens.net>2015-04-14 14:27:54 +1000
committerMichael Ellerman <mpe@ellerman.id.au>2015-05-22 15:50:55 +1000
commite059b105d157d0231e2f0a7fba996724d856114b (patch)
treed6ea4686a1fafc9f7d11d9f0b93b1fcd7127b111 /arch/powerpc/include/asm/pci-bridge.h
parent81f2f7ce4c5bb688ad691cb3ee37e81ca26a8a3b (diff)
downloadlinux-e059b105d157d0231e2f0a7fba996724d856114b.tar.gz
linux-e059b105d157d0231e2f0a7fba996724d856114b.tar.bz2
linux-e059b105d157d0231e2f0a7fba996724d856114b.zip
powerpc: Add MSI operations to pci_controller_ops struct
Add MSI setup and teardown functions to pci_controller_ops. Patch the callsites (arch_{setup,teardown}_msi_irqs) to prefer the controller ops version if it's available. Signed-off-by: Daniel Axtens <dja@axtens.net> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/include/asm/pci-bridge.h')
-rw-r--r--arch/powerpc/include/asm/pci-bridge.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/pci-bridge.h b/arch/powerpc/include/asm/pci-bridge.h
index 1811c44bf34b..a3b6252bcfc9 100644
--- a/arch/powerpc/include/asm/pci-bridge.h
+++ b/arch/powerpc/include/asm/pci-bridge.h
@@ -30,6 +30,12 @@ struct pci_controller_ops {
/* Called during PCI resource reassignment */
resource_size_t (*window_alignment)(struct pci_bus *, unsigned long type);
void (*reset_secondary_bus)(struct pci_dev *dev);
+
+#ifdef CONFIG_PCI_MSI
+ int (*setup_msi_irqs)(struct pci_dev *dev,
+ int nvec, int type);
+ void (*teardown_msi_irqs)(struct pci_dev *dev);
+#endif
};
/*