Skip to content

Commit

Permalink
irqchip/versatile-fpga: Fix PCI IRQ mapping on Versatile PB
Browse files Browse the repository at this point in the history
This patch is specifically for PCI support on the Versatile PB board using
a DT. Currently, the dynamic IRQ mapping is broken when using DTs. For
example, on QEMU, the SCSI driver is unable to request the IRQ. To fix
this issue, this patch replaces the current dynamic mechanism with a
static value as is done in the non-DT case.

Signed-off-by: Guillaume Delbergue <guillaume.delbergue@greensocs.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: stable@vger.kernel.org
  • Loading branch information
Guillaume Delbergue authored and Arnd Bergmann committed Dec 1, 2015
1 parent 31ade3b commit d5d4fdd
Showing 1 changed file with 5 additions and 0 deletions.
5 changes: 5 additions & 0 deletions drivers/irqchip/irq-versatile-fpga.c
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,12 @@ int __init fpga_irq_of_init(struct device_node *node,
parent_irq = -1;
}

#ifdef CONFIG_ARCH_VERSATILE
fpga_irq_init(base, node->name, IRQ_SIC_START, parent_irq, valid_mask,
node);
#else
fpga_irq_init(base, node->name, 0, parent_irq, valid_mask, node);
#endif

writel(clear_mask, base + IRQ_ENABLE_CLEAR);
writel(clear_mask, base + FIQ_ENABLE_CLEAR);
Expand Down

0 comments on commit d5d4fdd

Please sign in to comment.