android_kernel_samsung_msm8976/arch/arm/mach-shmobile
Geert Uytterhoeven 77287a2cab ARM: shmobile: sh73a0 legacy: Set .control_parent for all irqpin instances
commit b0ddb319db3d7a1943445f0de0a45c07a7f3457a upstream.

The sh73a0 INTC can't mask interrupts properly most likely due to a
hardware bug. Set the .control_parent flag to delegate masking to the
parent interrupt controller, like was already done for irqpin1.

Without this, accessing the three-axis digital accelerometer ADXL345
on kzm9g through /dev/input/event1 causes an interrupt storm, which
requires a power-cycle to recover from.

This was inspired by a patch for arch/arm/boot/dts/sh73a0.dtsi from
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Fixes: 341eb5465f ("ARM: shmobile: INTC External IRQ pin driver on sh73a0")
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-01-27 07:52:33 -08:00
..
include/mach ARM: arm-soc platform updates for 3.10, part 3 2013-05-07 11:02:18 -07:00
board-ag5evm.c
board-ap4evb.c
board-ape6evm.c ARM: shmobile: APE6EVM LAN9220 support 2013-04-03 10:50:43 +09:00
board-armadillo800eva.c ARM: shmobile: armadillo: Fix coherent DMA mask 2014-01-15 15:28:51 -08:00
board-bockw.c ARM: shmobile: bockw: add SMSC ethernet support 2013-04-05 11:32:53 +09:00
board-bonito.c
board-kota2.c
board-kzm9d.c ARM: convert arm/arm64 arch timer to use CLKSRC_OF init 2013-04-11 15:11:15 -05:00
board-kzm9g-reference.c ARM: shmobile: kzm9g-reference: fix device-tree bindings and device names 2013-03-21 22:03:50 +09:00
board-kzm9g.c ARM: shmobile: kzm9g: Fix coherent DMA mask 2014-01-15 15:28:51 -08:00
board-lager.c ARM: shmobile: use r8a7790 timer setup code on Lager 2013-04-09 21:40:59 +09:00
board-mackerel.c ARM: shmobile: mackerel: Fix coherent DMA mask 2014-01-15 15:28:51 -08:00
board-marzen-reference.c ARM: shmobile: marzen: Reference DT implementation 2013-03-18 21:27:02 +09:00
board-marzen.c ARM: shmobile: marzen: Use error values in usb_power_* 2013-05-22 15:43:16 +09:00
clock-emev2.c
clock-r8a73a4.c ARM: shmobile: r8a73a4: add thermal driver support 2013-04-02 10:58:25 +09:00
clock-r8a7740.c ARM: shmobile: r8a7740: use fixed ratio clock 2013-04-02 11:02:17 +09:00
clock-r8a7778.c ARM: shmobile: R8A7778: add Ether support 2013-04-05 10:57:05 +09:00
clock-r8a7779.c ARM: shmobile: R8A7779: add Ether support 2013-04-05 10:47:03 +09:00
clock-r8a7790.c ARM: shmobile: r8a7790 SCIF support 2013-04-02 11:02:20 +09:00
clock-sh73a0.c ARM: shmobile: sh73a0: use fixed ratio clock 2013-04-02 11:02:17 +09:00
clock-sh7372.c ARM: shmobile: sh7372: use fixed ratio clock 2013-04-02 11:02:16 +09:00
clock.c ARM: shmobile: add struct clk_ratio and fixed ratio clock macro 2013-04-02 11:02:16 +09:00
console.c
cpuidle.c ARM: shmobile: cpuidle: use init/exit common routine 2013-04-23 13:45:22 +02:00
entry-intc.S
headsmp-scu.S
headsmp.S
intc-r8a7740.c ARM: shmobile: r8a7740: Migrate from INTC to GIC 2013-04-02 11:02:09 +09:00
intc-r8a7779.c ARM: shmobile: Make r8a7779 INTC irqpin platform data static 2013-03-18 21:26:06 +09:00
intc-sh73a0.c
intc-sh7372.c
Kconfig ARM: arm-soc board specific changes for 3.10, part 1 2013-05-04 12:34:30 -07:00
Makefile ARM: shmobile: Initial r8a7790 Lager board support 2013-04-03 10:50:43 +09:00
Makefile.boot
platsmp.c
pm-r8a7740.c
pm-r8a7779.c
pm-rmobile.c
pm-sh73a0.c
pm-sh7372.c cpuidle: remove en_core_tk_irqen flag 2013-04-23 13:45:22 +02:00
setup-emev2.c ARM: shmobile: emev2 GIO3 resource fix 2013-07-21 18:21:35 -07:00
setup-r8a73a4.c ARM: shmobile: r8a73a4: Fix resources for SCIFB0 2013-07-21 18:21:35 -07:00
setup-r8a7740.c ARM: arm-soc: late cleanups 2013-05-07 11:22:14 -07:00
setup-r8a7778.c ARM: shmobile: R8A7778: add Ether support 2013-04-05 10:57:05 +09:00
setup-r8a7779.c Renesas ARM r8a7779 SoC update for v3.10 2013-04-09 14:43:00 +02:00
setup-r8a7790.c ARM: shmobile: force enable of r8a7790 arch timer 2013-04-09 21:37:36 +09:00
setup-sh73a0.c ARM: shmobile: sh73a0 legacy: Set .control_parent for all irqpin instances 2015-01-27 07:52:33 -08:00
setup-sh7372.c ARM: convert arm/arm64 arch timer to use CLKSRC_OF init 2013-04-11 15:11:15 -05:00
sh-gpio.h
sleep-sh7372.S
smp-emev2.c Merge branch 'gic/cleanup' into next/soc 2013-04-28 15:06:56 -07:00
smp-r8a7779.c Merge branch 'gic/cleanup' into next/soc 2013-04-28 15:06:56 -07:00
smp-sh73a0.c Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2013-05-03 09:13:19 -07:00
suspend.c arm: Use generic idle loop 2013-04-08 17:39:24 +02:00
timer.c ARM: convert arm/arm64 arch timer to use CLKSRC_OF init 2013-04-11 15:11:15 -05:00