]> Git Repo - linux.git/commitdiff
PCI: rcar: Use new OF interrupt mapping when possible
authorLucas Stach <[email protected]>
Wed, 16 Apr 2014 16:24:09 +0000 (10:24 -0600)
committerBjorn Helgaas <[email protected]>
Wed, 16 Apr 2014 16:24:09 +0000 (10:24 -0600)
Use new OF interrupt mapping (of_irq_parse_and_map_pci()) when possible.
This is the recommended method of doing the IRQ mapping.  For old
devicetrees we fall back to the previous practice.

This allows interrupts to be remapped across bridges.

Signed-off-by: Lucas Stach <[email protected]>
Signed-off-by: Bjorn Helgaas <[email protected]>
Acked-by: Simon Horman <[email protected]>
drivers/pci/host/pci-rcar-gen2.c

index fd3e3ab56509125db9e6d25b1b2288eaccda60fd..4fe349dcaf5954c22baed114553fba0ee6a2e566 100644 (file)
@@ -15,6 +15,7 @@
 #include <linux/io.h>
 #include <linux/kernel.h>
 #include <linux/module.h>
+#include <linux/of_pci.h>
 #include <linux/pci.h>
 #include <linux/platform_device.h>
 #include <linux/pm_runtime.h>
@@ -180,8 +181,13 @@ static int rcar_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
 {
        struct pci_sys_data *sys = dev->bus->sysdata;
        struct rcar_pci_priv *priv = sys->private_data;
+       int irq;
+
+       irq = of_irq_parse_and_map_pci(dev, slot, pin);
+       if (!irq)
+               irq = priv->irq;
 
-       return priv->irq;
+       return irq;
 }
 
 #ifdef CONFIG_PCI_DEBUG
This page took 0.057824 seconds and 4 git commands to generate.