i2c: brcmstb: Fix START and STOP conditions
authorJaedon Shin <jaedon.shin@gmail.com>
Fri, 3 Mar 2017 01:55:03 +0000 (10:55 +0900)
committerWolfram Sang <wsa@the-dreams.de>
Wed, 8 Mar 2017 17:00:49 +0000 (18:00 +0100)
commit2de3ec4f1d4ba6ee380478055104eb918bd50cce
tree591c46dc7de5b2a23ef5124fb10590090e5fdbf9
parent02dbfa5e5583523035f05636c614a0eca77f1aab
i2c: brcmstb: Fix START and STOP conditions

The BSC data buffers to send and receive data are each of size 32 bytes
or 8 bytes 'xfersz' depending on SoC. The problem observed for all the
combined message transfer was if length of data transfer was a multiple
of 'xfersz' a repeated START was being transmitted by BSC driver. Fixed
this by appropriately setting START/STOP conditions for such transfers.

Fixes: dd1aa2524bc5 ("i2c: brcmstb: Add Broadcom settop SoC i2c controller driver")
Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
Acked-by: Kamal Dasu <kdasu.kdev@gmail.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
drivers/i2c/busses/i2c-brcmstb.c