linux/drivers/sh/intc
Paul Mundt 1026023705 sh: intc: Handle domain association for sparseirq pre-allocated vectors.
Presently it's assumed that the irqdomain code handles the irq_desc
allocation for us, but this isn't necessarily the case when we've
pre-allocated IRQs via sparseirq. Previously we had a -EEXIST check in
the code that attempted to trap these cases and simply update them
in-place, but this behaviour was inadvertently lost in the transition to
irqdomains.

This simply restores the previous behaviour, first attempting to let the
irqdomain core fetch the allocation for us, and falling back to an
in-place domain association in the extant IRQ case. Fixes up regressions
on platforms that pre-allocate legacy IRQs (specifically ARM-based
SH-Mobile platforms, as SH stopped pre-allocating vectors some time ago).

Reported-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-08-09 13:21:05 +09:00
..
access.c sh: intc: Split up the INTC code. 2010-10-05 22:10:30 +09:00
balancing.c sh: intc: remove dependency on NR_IRQS 2012-01-25 20:37:48 -06:00
chip.c sh: intc: optimize intc IRQ lookup 2012-01-24 17:41:55 +09:00
core.c sh: intc: Handle domain association for sparseirq pre-allocated vectors. 2012-08-09 13:21:05 +09:00
handle.c SuperH updates for 3.4 merge window 2012-03-30 00:09:17 -07:00
internals.h sh: intc: initial irqdomain support. 2012-08-01 17:13:46 +09:00
irqdomain.c sh: intc: initial irqdomain support. 2012-08-01 17:13:46 +09:00
Kconfig sh: intc: initial irqdomain support. 2012-08-01 17:13:46 +09:00
Makefile sh: intc: initial irqdomain support. 2012-08-01 17:13:46 +09:00
userimask.c sh: intc - convert sysdev_class to a regular subsystem 2011-12-21 15:09:52 -08:00
virq-debugfs.c sh: intc: Split up the INTC code. 2010-10-05 22:10:30 +09:00
virq.c sh: intc: Allocate subgroup virq backing desc directly. 2012-06-13 12:08:36 +09:00