irqchip/sirfsoc: Fix generic chip allocation wreckage
authorThomas Gleixner <tglx@linutronix.de>
Mon, 6 Jul 2015 10:18:29 +0000 (10:18 +0000)
committerThomas Gleixner <tglx@linutronix.de>
Sat, 11 Jul 2015 21:14:23 +0000 (23:14 +0200)
commitd452bca82d9ff4f220afa4234418912623db4fe6
tree4e47ebadefea8ade90e145c065d46769bb0f3774
parentb66231183a8542de1414e42326dd1c6bc4af75f4
irqchip/sirfsoc: Fix generic chip allocation wreckage

irq_alloc_domain_generic_chips() can only be called once for an
irqdomain. The sirfsoc init calls it twice and because the return
value is not checked it does not notice the wreckage.

The code works by chance because the first call already allocates two
chips and therefor the second call to sirfsoc_alloc_gc() operates on
the proper generic chip instance.

Use a single call and setup the two chips in the obvious correct way.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Barry Song <baohua@kernel.org>
Cc: linux-arm-kernel@lists.infradead.org
Cc: Olof Johansson <olof@lixom.net>
Link: http://lkml.kernel.org/r/20150706101543.470696950@linutronix.de
drivers/irqchip/irq-sirfsoc.c