]> git.kernelconcepts.de Git - karo-tx-uboot.git/commit
designware_i2c: Added s/w generation of stop bit
authorArmando Visconti <armando.visconti@st.com>
Thu, 6 Dec 2012 00:04:16 +0000 (00:04 +0000)
committerTom Rini <trini@ti.com>
Tue, 11 Dec 2012 20:17:32 +0000 (13:17 -0700)
commit491739bb7456b95bb863421f6cd76af0ff9b797c
treec2bfb6e77985079fc24794cc1c512d621a268000
parentac6e2fe6e4afe54a9c7ef0d93827a86e264814f2
designware_i2c: Added s/w generation of stop bit

In the newer versions of designware i2c IP there is the possibility
of configuring it with IC_EMPTYFIFO_HOLD_MASTER_EN=1, which basically
requires the s/w to generate the stop bit condition directly, as
the h/w will not automatically generate it when TX_FIFO is empty.

To avoid generation of an extra 0x0 byte sent as data, the
IC_STOP command must be sent along with the last IC_CMD.

This patch always writes bit[9] of ic_data_cmd even in the
older versions, assuming that it is a noop there.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
drivers/i2c/designware_i2c.c
drivers/i2c/designware_i2c.h