linux/drivers/mfd
Russell King 1cef8e4107 mfd: twl4030 irq fixes
The TWL4030 IRQ handler has a bug which leads to spinlock lock-up. It is
calling the 'unmask' function in a process context. :The mask/unmask/ack
functions are only designed to be called from the IRQ handler code,
or the proper API interfaces found in linux/interrupt.h.

Also there is no need to have IRQ chaining mechanism. The right way to
handle this is to claim the parent interrupt as a standard interrupt
and arrange for handle_twl4030_pih to take care of the rest of the devices.

Mail thread on this issue can be found at:
http://marc.info/?l=linux-arm-kernel&m=124629940123396&w=2

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Tested-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2009-08-04 20:31:32 +02:00
..
ab3100-core.c
asic3.c
da903x.c
dm355evm_msp.c
ezx-pcap.c
htc-egpio.c
htc-pasic3.c
Kconfig
Makefile
mcp-core.c
mcp-sa11x0.c
mcp.h
menelaus.c
mfd-core.c
pcf50633-adc.c
pcf50633-core.c
pcf50633-gpio.c
sm501.c
t7l66xb.c
tc6387xb.c
tc6393xb.c
tps65010.c
twl4030-core.c
twl4030-irq.c mfd: twl4030 irq fixes 2009-08-04 20:31:32 +02:00
ucb1x00-assabet.c
ucb1x00-core.c
ucb1x00-ts.c
ucb1x00.h
ucb1400_core.c
wm8350-core.c
wm8350-gpio.c
wm8350-i2c.c
wm8350-regmap.c
wm8400-core.c