linux/arch/arm/plat-versatile
Linus Walleij 3108e6ab21 ARM: 7389/2: plat-versatile: modernize FPGA IRQ controller
This does two things to the FPGA IRQ controller in the versatile
family:

- Convert to MULTI_IRQ_HANDLER so we can drop the entry macro
  from the Integrator. The C IRQ handler was inspired from
  arch/arm/common/vic.c, recent bug discovered in this handler was
  accounted for.
- Convert to using IRQ domains so we can get rid of the NO_IRQ
  mess and proceed with device tree and such stuff.

As part of the exercise, bump all the low IRQ numbers on the
Integrator PIC to start from 1 rather than 0, since IRQ 0 is
now NO_IRQ. The Linux IRQ numbers are thus entirely decoupled
from the hardware IRQ numbers in this controller.

I was unable to split this patch. The main reason is the half-done
conversion to device tree in Versatile.

Tested on Integrator/AP and Integrator/CP.

Cc: Grant Likely <grant.likely@secretlab.ca>
Acked-by: Rob Herring <rob.herring@calxeda.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2012-05-04 16:53:37 +01:00
..
include/plat ARM: 7389/2: plat-versatile: modernize FPGA IRQ controller 2012-05-04 16:53:37 +01:00
clcd.c ARM: add versatile family consolidated CLCD support 2011-02-19 11:09:12 +00:00
clock.c
fpga-irq.c ARM: 7389/2: plat-versatile: modernize FPGA IRQ controller 2012-05-04 16:53:37 +01:00
headsmp.S ARM: versatile: Add missing ENDPROC to headsmp.S 2012-01-16 08:35:25 -06:00
Kconfig ARM: 7389/2: plat-versatile: modernize FPGA IRQ controller 2012-05-04 16:53:37 +01:00
leds.c ARM: 6235/2: driver for the LEDs found in the later ARM refdesigns 2010-07-26 10:48:29 +01:00
Makefile ARM: plat-versatile: convert to twd_local_timer_register() interface 2012-03-13 13:29:58 +00:00
platsmp.c ARM: 7293/1: logical_cpu_map: decouple CPU mapping from SMP 2012-01-23 10:20:05 +00:00
sched-clock.c ARM: 7205/2: sched_clock: allow sched_clock to be selected at runtime 2011-12-18 23:00:26 +00:00