summaryrefslogtreecommitdiffstats
path: root/drivers/irqchip/irq-atmel-aic5.c
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2015-07-06 15:32:25 +0200
committerThomas Gleixner <tglx@linutronix.de>2015-07-11 23:14:23 +0200
commitb66231183a8542de1414e42326dd1c6bc4af75f4 (patch)
tree7f857d7181876b84ca9c0019d30be36dd4cae7b7 /drivers/irqchip/irq-atmel-aic5.c
parentd6ac4ffc61ace6ed6f183e9fd7f207c0ddafb897 (diff)
downloadlinux-stable-b66231183a8542de1414e42326dd1c6bc4af75f4.tar.gz
linux-stable-b66231183a8542de1414e42326dd1c6bc4af75f4.tar.bz2
linux-stable-b66231183a8542de1414e42326dd1c6bc4af75f4.zip
irqchip/dw-apb-ictl: Fix generic domain chip wreckage
The num_ct argument of irq_alloc_domain_generic_chips() tells the core code how many chip types (for different control flows, e.g. edge/level) should be allocated. It does not control how many generic chip instances are created because that's determined from the irq domain size and the number of interrupts per chip. The dw-apb init abuses the num_ct argument for allocating one or two chip types depending on the number of interrupts. That's completely wrong because the alternate type is never used. This code was obviously never tested on a system which has more than 32 interrupts as that would have never worked due to the unitialized second generic chip instance. Hand in the proper num_ct=1 and fixup the chip initialization along with the interrupt handler. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Tested-by: Jisheng Zhang <jszhang@marvell.com> Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Jason Cooper <jason@lakedaemon.net> Link: http://lkml.kernel.org/r/20150706101543.373582262@linutronix.de
Diffstat (limited to 'drivers/irqchip/irq-atmel-aic5.c')
0 files changed, 0 insertions, 0 deletions