• Suman Anna's avatar
    irqchip/irq-pruss-intc: Add logic for handling reserved interrupts · 6016f32d
    Suman Anna authored
    The PRUSS INTC has a fixed number of output interrupt lines that are
    connected to a number of processors or other PRUSS instances or other
    devices (like DMA) on the SoC. The output interrupt lines 2 through 9
    are usually connected to the main Arm host processor and are referred
    to as host interrupts 0 through 7 from ARM/MPU perspective.
    
    All of these 8 host interrupts are not always exclusively connected
    to the Arm interrupt controller. Some SoCs have some interrupt lines
    not connected to the Arm interrupt controller at all, while a few others
    have the interrupt lines connected to multiple processors in which they
    need to be partitioned as per SoC integration needs. For example, AM437x
    and 66AK2G SoCs have 2 PRUSS instances each and have the host interrupt 5
    connected to the other PRUSS, while AM335x has host interrupt 0 shared
    between MPU and TSC_ADC and host interrupts 6 & 7 shared between MPU and
    a DMA controller.
    
    Add logic to the PRUSS INTC driver to ignore both these shared and
    invalid interrupts.
    Co-developed-by: default avatarGrzegorz Jaszczyk <grzegorz.jaszczyk@linaro.org>
    Signed-off-by: default avatarSuman Anna <s-anna@ti.com>
    Signed-off-by: default avatarGrzegorz Jaszczyk <grzegorz.jaszczyk@linaro.org>
    Signed-off-by: default avatarMarc Zyngier <maz@kernel.org>
    6016f32d
irq-pruss-intc.c 16.2 KB