• Benjamin Herrenschmidt's avatar
    [POWERPC] Cell interrupt rework · 2e194583
    Benjamin Herrenschmidt authored
    This patch reworks the cell iic interrupt handling so that:
    
     - Node ID is back in the interrupt number (only one IRQ host is created
    for all nodes). This allows interrupts from sources on another node to
    be routed non-locally. This will allow possibly one day to fix maxcpus=1
    or 2 and still get interrupts from devices on BE 1. (A bit more fixing
    is needed for that) and it will allow us to implement actual affinity
    control of external interrupts.
    
     - Added handling of the IO exceptions interrupts (badly named, but I
    re-used the name initially used by STI). Those are the interrupts
    exposed by IIC_ISR and IIC_IRR, such as the IOC translation exception,
    performance monitor, etc... Those get their special numbers in the IRQ
    number space and are internally implemented as a cascade on unit 0xe,
    class 1 of each node.
    Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
    Acked-by: default avatarArnd Bergmann <arnd.bergmann@de.ibm.com>
    Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
    2e194583
spu_base.c 17.6 KB