dect
/
linux-2.6
Archived
13
0
Fork 0
This repository has been archived on 2022-02-17. You can view files and clone it, but cannot push or open issues or pull requests.
linux-2.6/arch/arm/mach-shmobile/include/mach
Magnus Damm 1cf215a5b4 ARM: mach-shmobile: INTC interrupt priority level demux fix
Fix interrupt priority level handling on SH-Mobile ARM.

SH-Mobile ARM platforms using multiple interrupt priority
levels need this patch to fix a potential dead lock that
may occur if multiple interrupts with different levels
are pending simultaneously.

The default INTC configuration is to use the same priority
level for all interrupts, so this issue does not trigger by
default. It is however common for board code to override the
interrupt priority for certain interrupt sources depending
on the application. Without this fix such boards may lock up.

In detail, this patch updates the INTC code in entry-macro.S
to make sure that the INTLVLA register gets set as expected.

To trigger this bug modify the board specific code to adjust
the interrupt priority level for the ethernet chip. After
changing the priority level simply use flood ping to drown
the board with interrupts.

This patch applies to INTCA-based processors such as sh7372,
sh7377 and sh7372. GIC-based processors are not affected.

Suitable for v2.6.37-rc and stable from v2.6.34 to v2.6.36.

Cc: stable@kernel.org
Signed-off-by: Magnus Damm <damm@opensource.se>
Tested-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2010-12-17 19:42:47 +09:00
..
clkdev.h ARM: mach-shmobile: SH-Mobile G3 support. 2010-02-08 12:44:11 +09:00
common.h ARM: mach-shmobile: sh7377 clock framework V2 2010-05-22 17:23:14 +09:00
dma.h ARM: mach-shmobile: SH-Mobile G3 support. 2010-02-08 12:44:11 +09:00
entry-macro.S ARM: mach-shmobile: INTC interrupt priority level demux fix 2010-12-17 19:42:47 +09:00
gpio.h ARM: mach-shmobile: Allow GPIO chips to register IRQ mappings. 2010-11-04 12:19:11 +09:00
hardware.h ARM: mach-shmobile: SH-Mobile G3 support. 2010-02-08 12:44:11 +09:00
io.h ARM: mach-shmobile: SH-Mobile G3 support. 2010-02-08 12:44:11 +09:00
irqs.h Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2010-08-04 11:56:17 +09:00
memory.h ARM: mach-shmobile: Set CONSISTENT_DMA_SIZE to 158 MB 2010-05-20 12:51:24 +09:00
sh7367.h ARM: mach-shmobile: sh7367 and G3EVM pinmux support 2010-02-12 14:10:47 +09:00
sh7372.h ARM: mach-shmobile: clock-sh7372: Add FSIDIV clock support 2010-10-31 10:40:45 -04:00
sh7377.h ARM: mach-shmobile: sh7377 and G4EVM pinmux support 2010-02-15 13:43:37 +09:00
system.h ARM: mach-shmobile: SH-Mobile G3 support. 2010-02-08 12:44:11 +09:00
timex.h ARM: mach-shmobile: SH-Mobile G3 support. 2010-02-08 12:44:11 +09:00
uncompress.h ARM: mach-shmobile: SH-Mobile G3 support. 2010-02-08 12:44:11 +09:00
vmalloc.h ARM: mach-shmobile: fix compile warning in mm/init.c 2010-12-17 19:41:13 +09:00