linux/arch/sh
Geert Uytterhoeven ab8aa4f095 sh: mach-r2d: Handle virq offset in cascaded IRL demux
When booting rts7751r2dplus_defconfig on QEMU, the system hangs due to
an interrupt storm on IRQ 20.  IRQ 20 aka event 0x280 is a cascaded IRL
interrupt, which maps to IRQ_VOYAGER, the interrupt used by the Silicon
Motion SM501 multimedia companion chip.  As rts7751r2d_irq_demux() does
not take into account the new virq offset, the interrupt is no longer
translated, leading to an unhandled interrupt.

Fix this by taking into account the virq offset when translating
cascaded IRL interrupts.

Fixes: a8ac296114 ("sh: Avoid using IRQ0 on SH3 and SH4")
Reported-by: Guenter Roeck <linux@roeck-us.net>
Closes: https://lore.kernel.org/r/fbfea3ad-d327-4ad5-ac9c-648c7ca3fe1f@roeck-us.net
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Tested-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/2c99d5df41c40691f6c407b7b6a040d406bc81ac.1688901306.git.geert+renesas@glider.be
Signed-off-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
2023-07-13 08:37:26 +02:00
..
boards sh: mach-r2d: Handle virq offset in cascaded IRL demux 2023-07-13 08:37:26 +02:00
boot sh: Use generic GCC library routines 2023-04-25 09:16:47 +02:00
cchips treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
configs mm, treewide: redefine MAX_ORDER sanely 2023-04-05 19:42:46 -07:00
drivers sh: dma: Correct the number of DMA channels for SH7709 2023-07-05 18:58:14 +02:00
include sh: Provide unxlate_dev_mem_ptr() in asm/io.h 2023-07-05 19:04:51 +02:00
kernel sh: Avoid using IRQ0 on SH3 and SH4 2023-06-11 18:22:47 +02:00
lib sh: Use generic GCC library routines 2023-04-25 09:16:47 +02:00
math-emu sh: math-emu: fix macro redefined warning 2023-03-23 10:00:03 +01:00
mm sh: drop ranges for definition of ARCH_FORCE_MAX_ORDER 2023-04-18 16:29:46 -07:00
tools sh: Remove SH5-based Cayman platform 2020-08-14 22:05:06 -04:00
Kbuild sh: Move build rule for cchips/hd6446x/ to arch/sh/Kbuild 2023-07-05 18:55:18 +02:00
Kconfig sh updates for v6.4 2023-04-27 17:41:23 -07:00
Kconfig.cpu docs: move superh documentation under Documentation/arch/ 2023-03-30 13:00:35 -06:00
Kconfig.debug sh: mcount.S: fix build error when PRINTK is not enabled 2023-03-23 10:02:02 +01:00
Makefile sh: Remove compiler flag duplication 2023-07-05 18:55:25 +02:00