]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - drivers/pci/msi.c
PCI: msi: add default MSI operations for !HAVE_GENERIC_HARDIRQS platforms
[karo-tx-linux.git] / drivers / pci / msi.c
index 2837285c4e8327185f934390975475ff76d7678f..b35f93c232cf5d40390325f587a579aefc51f62b 100644 (file)
@@ -30,6 +30,7 @@ static int pci_msi_enable = 1;
 
 /* Arch hooks */
 
+#if defined(CONFIG_GENERIC_HARDIRQS)
 int __weak arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *desc)
 {
        struct msi_chip *chip = dev->bus->msi;
@@ -66,6 +67,21 @@ int __weak arch_msi_check_device(struct pci_dev *dev, int nvec, int type)
 
        return chip->check_device(chip, dev, nvec, type);
 }
+#else
+int __weak arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *desc)
+{
+       return -ENOSYS;
+}
+
+void __weak arch_teardown_msi_irq(unsigned int irq)
+{
+}
+
+int __weak arch_msi_check_device(struct pci_dev *dev, int nvec, int type)
+{
+       return 0;
+}
+#endif /* CONFIG_GENERIC_HARDIRQS */
 
 int __weak arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type)
 {