If you keep getting interrupts over and over again, I would guess the interrupt is set to level instead of edge.
Note that the i2c driver can't set the edge/level (restriction of use the ARM GIC driver).
So, we manually change the interrupt to edge in the board-rskrza1.c file:
/* Set up IRQ for touchscreen */
{
/* Manually set IRQ1 for 'low level' trigger in Interrupt Control Register 1 */
void __iomem *irc1 = IOMEM(0xfcfef802);
__raw_writew((__raw_readw(irc1) & ~(0x3 << 2)), irc1);
r7s72100_pfc_pin_assign(P4_9, ALT8, DIIO_PBDC_DIS); /* IRQ1 */
}
Since you are using IRQ6, you're code will be "(0x3 << 12)"
__raw_writew((__raw_readw(irc1) & ~(0x3 << 2)), irc1);