• Felix Fietkau's avatar
    MIPS: Lantiq: Fix cascaded IRQ setup · 6c356eda
    Felix Fietkau authored
    With the IRQ stack changes integrated, the XRX200 devices started
    emitting a constant stream of kernel messages like this:
    
    [  565.415310] Spurious IRQ: CAUSE=0x1100c300
    
    This is caused by IP0 getting handled by plat_irq_dispatch() rather than
    its vectored interrupt handler, which is fixed by commit de856416e714
    ("MIPS: IRQ Stack: Fix erroneous jal to plat_irq_dispatch").
    
    Fix plat_irq_dispatch() to handle non-vectored IPI interrupts correctly
    by setting up IP2-6 as proper chained IRQ handlers and calling do_IRQ
    for all MIPS CPU interrupts.
    Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
    Acked-by: default avatarJohn Crispin <john@phrozen.org>
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/15077/
    [james.hogan@imgtec.com: tweaked commit message]
    Signed-off-by: default avatarJames Hogan <james.hogan@imgtec.com>
    6c356eda
irq.c 11.1 KB