diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2013-11-21 23:11:29 +0100 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2014-02-13 11:21:21 +0100 |
commit | e641b987c20832dfaaa51d7792ed928c2b2d2dbf (patch) | |
tree | 1831772b115d772d3fd63ab53858866bc8b8f911 /include/linux/irqchip | |
parent | 3b4df9dbd9bf27a35d5c7d36684d245518e5a939 (diff) | |
download | linux-e641b987c20832dfaaa51d7792ed928c2b2d2dbf.tar.gz linux-e641b987c20832dfaaa51d7792ed928c2b2d2dbf.tar.bz2 linux-e641b987c20832dfaaa51d7792ed928c2b2d2dbf.zip |
irqchip: support cascaded VICs
This adds support for a VIC to be cascaded off another IRQ.
On the Integrator/AP logical module IM-PD1 there is a VIC
cascaded off the central FPGA IRQ controller so this is
needed for that to work out.
In order for the plug-in board to be able to register all
the devices with their IRQs relative to the offset of the
base obtained for the cascaded VIC, the base IRQ number
is passed back to the caller.
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'include/linux/irqchip')
-rw-r--r-- | include/linux/irqchip/arm-vic.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/include/linux/irqchip/arm-vic.h b/include/linux/irqchip/arm-vic.h index e3c82dc95756..ba46c794b4e5 100644 --- a/include/linux/irqchip/arm-vic.h +++ b/include/linux/irqchip/arm-vic.h @@ -29,8 +29,10 @@ struct device_node; struct pt_regs; -void __vic_init(void __iomem *base, int irq_start, u32 vic_sources, - u32 resume_sources, struct device_node *node); +void __vic_init(void __iomem *base, int parent_irq, int irq_start, + u32 vic_sources, u32 resume_sources, struct device_node *node); void vic_init(void __iomem *base, unsigned int irq_start, u32 vic_sources, u32 resume_sources); +int vic_init_cascaded(void __iomem *base, unsigned int parent_irq, + u32 vic_sources, u32 resume_sources); #endif |