mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 22:21:40 +00:00
[media] saa7164: Improvements for I2C handling"
This reverts commit ad90b6b0f1
.
This patch breaks I2C communication towards Si2168. After reverting and
applying the other patch in this series the I2C communication is
correct.
Signed-off-by: Olli Salonen <olli.salonen@iki.fi>
Reviewed-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
This commit is contained in:
parent
d976872891
commit
5dce1ee611
@ -1385,8 +1385,7 @@ int saa7164_api_i2c_read(struct saa7164_i2c *bus, u8 addr, u32 reglen, u8 *reg,
|
||||
* 08... register address
|
||||
*/
|
||||
memset(buf, 0, sizeof(buf));
|
||||
if (reg)
|
||||
memcpy((buf + 2 * sizeof(u32) + 0), reg, reglen);
|
||||
memcpy((buf + 2 * sizeof(u32) + 0), reg, reglen);
|
||||
*((u32 *)(buf + 0 * sizeof(u32))) = reglen;
|
||||
*((u32 *)(buf + 1 * sizeof(u32))) = datalen;
|
||||
|
||||
@ -1475,14 +1474,6 @@ int saa7164_api_i2c_write(struct saa7164_i2c *bus, u8 addr, u32 datalen,
|
||||
* 04-07 dest bytes to write
|
||||
* 08... register address
|
||||
*/
|
||||
if (datalen == 1) {
|
||||
/* Workaround for issues with i2c components
|
||||
* that issue writes with no data. IE: SI2168/2157
|
||||
* Increase reglen by 1, strobe out an additional byte,
|
||||
* ignored by SI2168/2157.
|
||||
*/
|
||||
datalen++;
|
||||
}
|
||||
*((u32 *)(buf + 0 * sizeof(u32))) = reglen;
|
||||
*((u32 *)(buf + 1 * sizeof(u32))) = datalen - reglen;
|
||||
memcpy((buf + 2 * sizeof(u32)), data, datalen);
|
||||
|
Loading…
Reference in New Issue
Block a user