alistair23-linux/drivers/i2c
Esben Haabendal bed4ff1ed4 i2c: imx: Fix race condition in dma read
This fixes a race condition, where the DMAEN bit ends up being set after
I2C slave has transmitted a byte following the dummy read.  When that
happens, an interrupt is generated instead, and no DMA request is generated
to kickstart the DMA read, and a timeout happens after DMA_TIMEOUT (1 sec).

Fixed by setting the DMAEN bit before the dummy read.

Signed-off-by: Esben Haabendal <eha@deif.com>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Cc: stable@kernel.org
2018-08-20 11:13:09 +02:00
..
algos i2c: algos: bit: mention our experience about initial states 2018-06-29 08:19:51 +02:00
busses i2c: imx: Fix race condition in dma read 2018-08-20 11:13:09 +02:00
muxes Merge branch 'i2c-mux/for-next' of https://github.com/peda-r/i2c-mux into i2c/for-4.19 2018-08-04 23:05:11 +02:00
i2c-boardinfo.c i2c: i2c-boardinfo: fix memory leaks on devinfo 2017-11-27 19:14:29 +01:00
i2c-core-acpi.c i2c: core: ACPI: Log device not acking errors at dbg loglevel 2018-04-30 10:53:31 +02:00
i2c-core-base.c i2c: core: Parse SDA hold time from firmware 2018-08-08 22:28:52 +02:00
i2c-core-of.c i2c: Export of_i2c_get_board_info() 2018-05-22 13:42:16 +02:00
i2c-core-slave.c i2c: remove i2c_lock_adapter and use i2c_lock_bus directly 2018-07-13 00:09:37 +02:00
i2c-core-smbus.c i2c: smbus: add unlocked __i2c_smbus_xfer variant 2018-07-03 22:57:25 +02:00
i2c-core.h i2c: make i2c_check_addr_validity() static 2018-03-24 14:07:23 +01:00
i2c-dev.c treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
i2c-mux.c i2c: mux: make use of __i2c_smbus_xfer 2018-07-03 22:57:55 +02:00
i2c-slave-eeprom.c
i2c-smbus.c
i2c-stub.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
Kconfig
Makefile