Rob Herring
authored
Commit "ARM: gic: add irq_domain support" (b49b6ff) breaks SPARSE_IRQ
on platforms with GIC. When SPARSE_IRQ is enabled, all NR_IRQS or
mach_desc->nr_irqs will be allocated by arch_probe_nr_irqs(). This caused
irq_alloc_descs to allocate irq_descs after the pre-allocated space.
Make irq_alloc_descs search for an exact irq range and assume it has
been pre-allocated on failure. For DT probing dynamic allocation is used.
DT enabled platforms should set their nr_irqs to NR_IRQ_LEGACY and have all
irq_chips allocate their irq_descs with irq_alloc_descs if SPARSE_IRQ is
enabled.
gic_init irq_start param is changed to be signed with negative meaning do
dynamic Linux irq assigment.
Signed-off-by:
Rob Herring <rob.herring@calxeda.com>
Name | Last commit | Last update |
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
dmabounce.c | ||
gic.c | ||
icst.c | ||
it8152.c | ||
locomo.c | ||
pl330.c | ||
sa1111.c | ||
scoop.c | ||
sharpsl_param.c | ||
time-acorn.c | ||
timer-sp.c | ||
uengine.c | ||
via82c505.c | ||
vic.c |