linux/arch/arm/common
H Hartley Sweeten c8c3dcb9df [ARM] locomo: fix unpaired spin_lock_irqsave
The function locomo_m62332_senddata sends a three byte i2c message to
a M62332 DAC. This entire function is guarded with a spin_lock_irqsave
at the start of the function and a spin_unlock_irqrestore at the end.

As each byte is transferred, the i2c ACK from the DAC is checked.
Currently, if the ACK is missing the function simply returns without
the unlock. It also leaves the i2c bus in an invalid state since the
last byte transferred did not have a "stop" condition and leave the
bus idle.

Fix this by adding an exit path using goto.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-03-22 12:03:09 +08:00
..
Kconfig Merge branch 'for-rmk' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6 into devel 2009-06-14 11:00:16 +01:00
Makefile [ARM] pxa/sharpsl_pm: merge the two sharpsl_pm.c since it's now pxa specific 2009-06-11 22:20:22 +08:00
clkdev.c Merge branch 'for-next' into for-linus 2010-03-08 16:55:37 +01:00
dmabounce.c Merge branches 'at91', 'cache', 'cup', 'ep93xx', 'ixp4xx', 'nuc', 'pending-dma-streaming', 'u300' and 'umc' into devel 2010-02-25 22:06:43 +00:00
gic.c [ARM] 5556/1: Fix the irq_desc.cpu references 2009-06-19 15:11:16 +01:00
icst307.c [ARM] Off-by-one in arch/arm/common/icst* 2006-09-27 23:17:54 +01:00
icst525.c [ARM] Off-by-one in arch/arm/common/icst* 2006-09-27 23:17:54 +01:00
it8152.c dma-mapping: arm: use generic pci_set_dma_mask and pci_set_consistent_dma_mask 2010-03-12 15:52:42 -08:00
locomo.c [ARM] locomo: fix unpaired spin_lock_irqsave 2010-03-22 12:03:09 +08:00
sa1111.c [ARM] sa1111: allow cascaded IRQs to be used by platforms 2010-03-02 07:40:51 +08:00
scoop.c [ARM] pxa: enable check_scoop_reg() only if CONFIG_PM is set. 2010-03-02 07:40:52 +08:00
sharpsl_param.c [ARM] 4733/1: export sharpsl_param 2008-10-03 10:18:35 +01:00
time-acorn.c [ARM] Convert asm/io.h to linux/io.h 2008-09-06 12:10:45 +01:00
uengine.c [ARM] Convert asm/io.h to linux/io.h 2008-09-06 12:10:45 +01:00
via82c505.c [ARM] Convert asm/io.h to linux/io.h 2008-09-06 12:10:45 +01:00
vic.c ARM: 5881/1: vic.c: reorganize code 2010-01-20 12:28:29 +00:00