ARM: mach-shmobile: sh73a0 PINT IRQ base fix
Magnus Damm
maintainerPATCH 1/1 ARM: mach-shmobile: sh73a0 PINT IRQ base fix
From: Magnus Damm <[email protected]>
Bump up the sh73a0 PINT IRQ base from 768 to 800 to avoid collision with INTCS vectors for IRQ16->IRQ32 at 0x3xxx.
Without this fix the sh73a0 IRQ pin handling code collides with the PINT code which results in hangs on Kota2 during boot.
---
arch/arm/mach-shmobile/include/mach/sh73a0.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
arch/arm/mach-shmobile/include/mach/sh73a0.h +3 -3
@@ -515,8 +515,8 @@ enum { SHDMA_SLAVE_MMCIF_RX, }; -/* PINT interrupts are located at Linux IRQ 768 and up */ -#define SH73A0_PINT0_IRQ (irq) ((irq) + 768) -#define SH73A0_PINT1_IRQ (irq) ((irq) + 800) +/* PINT interrupts are located at Linux IRQ 800 and up */ +#define SH73A0_PINT0_IRQ (irq) ((irq) + 800) +#define SH73A0_PINT1_IRQ (irq) ((irq) + 832)#endif /* __ASM_SH73A0_H__ */
Quoted 5 lines · Magnus Damm
Bump up the sh73a0 PINT IRQ base from 768 to 800 to avoid collision with INTCS vectors for
IRQ16->IRQ32at 0x3xxx.Without this fix the sh73a0 IRQ pin handling code collides with the PINT code which results in hangs on Kota2 during boot.
Quoted 6 lines · Magnus Damm
Fix the sh73a0 external IRQ pin code to properly support
CONFIG_SPARSE_IRQ=yby allocating IRQ descriptors for the cascaded IRQs associated with external IRQ pins.Without this fix it is impossible to request
IRQ0->IRQ31on the Kota2 board when sparse IRQs are enabled.
Quoted 3 lines · Magnus Damm
Now when GPIO IRQs are supported on sh73a0 modify the Kota2 board code to switch from the polled "gpio-keys-polled" driver to the IRQ driven "gpio-keys" driver.
All applied, thanks.