I've been digging through the interrupt code trying to figure out what
would be required to make it "generic irq" clean. I have a couple of
questions that I haven't been able to answer myself.
1) I count 24 different versions of plat_irq_dispatch, many of them only
seem to vary in the use and priority of the 8 sources in the cause
register. Is this really the case or am I missing something subtle?
2) Why isn't plat_irq_dispatch looping until all active interrupts are
I already have what I believe is a generic plat_irq_dispatch that finds
the highest priority irq in (almost) constant time. It needs one block
of defines to identify the 8 sources and another block to set the