OSDN Git Service

i2c: designware: prevent early stop on TX FIFO empty
authorAndrew Jackson <Andrew.Jackson@arm.com>
Fri, 7 Nov 2014 12:10:44 +0000 (12:10 +0000)
committerWolfram Sang <wsa@the-dreams.de>
Fri, 21 Nov 2014 07:06:32 +0000 (08:06 +0100)
commitd39f77b06a712fcba6185a20bb209e357923d980
tree96a079b1aec111f9a8c5f526f1197c3ceebbc296
parent27caca9d2e01c92b26d0690f065aad093fea01c7
i2c: designware: prevent early stop on TX FIFO empty

If the Designware core is configured with IC_EMPTYFIFO_HOLD_MASTER_EN
set to zero, allowing the TX FIFO to become empty causes a STOP
condition to be generated on the I2C bus. If the transmit FIFO
threshold is set too high, an erroneous STOP condition can be
generated on long transfers - particularly where the interrupt
latency is extended.

Signed-off-by: Andrew Jackson <Andrew.Jackson@arm.com>
Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com>
Tested-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
drivers/i2c/busses/i2c-designware-core.c