remarkable-linux/drivers/i2c
Sonic Zhang a20a64d226 i2c: i2c-bfin-twi: Improve the patch for bug "Illegal i2c bus lock upon certain transfer scenarios".
For transfer counts > 255 bytes i2c-bfin-twi sets the data
transfer counter DCNT to 0xFF indicating unlimited transfers.
It then uses a flag iface->manual_stop to manually issue the STOP
condition, once the required amount of bytes are received.

We found that on I2C receive operation issuing the STOP condition
together with a FULL RCV FIFO (2bytes) will cause SDA and SCL be
constantly driven low.

This patch stops receiving operation immediately in last rx interrupt.
This patch also wakes up waiting process when transfer completes.
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
2012-07-13 08:27:31 +02:00
..
algos i2c: Split I2C_M_NOSTART support out of I2C_FUNC_PROTOCOL_MANGLING 2012-05-30 10:55:34 +02:00
busses i2c: i2c-bfin-twi: Improve the patch for bug "Illegal i2c bus lock upon certain transfer scenarios". 2012-07-13 08:27:31 +02:00
muxes i2c: Add generic I2C multiplexer using pinctrl API 2012-06-04 16:49:43 +02:00
i2c-boardinfo.c i2c: Update the FSF address 2012-03-26 21:47:19 +02:00
i2c-core.c i2c: implement i2c_verify_adapter 2012-05-12 14:28:16 +02:00
i2c-core.h i2c: Update the FSF address 2012-03-26 21:47:19 +02:00
i2c-dev.c i2c-dev: Add support for I2C_M_RECV_LEN 2012-05-30 10:55:34 +02:00
i2c-mux.c i2c/of: Automatically populate i2c mux busses from device tree data. 2012-05-12 14:28:16 +02:00
i2c-smbus.c i2c: Update the FSF address 2012-03-26 21:47:19 +02:00
Kconfig i2c: muxes are not EXPERIMENTAL anymore 2012-05-12 14:28:16 +02:00
Makefile i2c: Deprecate i2c_driver.attach_adapter and .detach_adapter 2011-03-20 14:50:53 +01:00