mirror of
https://github.com/torvalds/linux.git
synced 2026-05-22 22:22:08 +02: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