diff options
author | Lucas Stach <l.stach@pengutronix.de> | 2014-03-28 17:52:58 +0100 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2014-05-30 11:24:58 -0600 |
commit | 7f4f16eef5aeba31bdfb7702ced06a42f2777e04 (patch) | |
tree | a10b8f076e0278742ba80181b2d3d3fba56777ad /drivers/pci/host/pcie-designware.h | |
parent | 5c40eea7783bbcdd5795cd7d50b7b3fd9a94dc94 (diff) | |
download | lwn-7f4f16eef5aeba31bdfb7702ced06a42f2777e04.tar.gz lwn-7f4f16eef5aeba31bdfb7702ced06a42f2777e04.zip |
PCI: designware: Make MSI ISR shared IRQ aware
On i.MX6 the host controller MSI IRQ is shared with PCI legacy INTD. Make
sure we don't bail too early from the IRQ handler.
The issue is fairly theoretical as it would require a system setup with a
PCIe switch where one connected device is using legacy INTD and another one
using MSI, but better fix it now.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Richard Zhu <r65037@freescale.com>
Diffstat (limited to 'drivers/pci/host/pcie-designware.h')
-rw-r--r-- | drivers/pci/host/pcie-designware.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/pci/host/pcie-designware.h b/drivers/pci/host/pcie-designware.h index 3063b3594d88..a169d22d517e 100644 --- a/drivers/pci/host/pcie-designware.h +++ b/drivers/pci/host/pcie-designware.h @@ -68,7 +68,7 @@ struct pcie_host_ops { int dw_pcie_cfg_read(void __iomem *addr, int where, int size, u32 *val); int dw_pcie_cfg_write(void __iomem *addr, int where, int size, u32 val); -void dw_handle_msi_irq(struct pcie_port *pp); +irqreturn_t dw_handle_msi_irq(struct pcie_port *pp); void dw_pcie_msi_init(struct pcie_port *pp); int dw_pcie_link_up(struct pcie_port *pp); void dw_pcie_setup_rc(struct pcie_port *pp); |