提交 b16af29a 编写于 作者: I Igor M. Liplianin 提交者: Mauro Carvalho Chehab

[media] dw2102: i2c transfer corrected for yet another cards

Related to Acorp DS120 and some revisions of DVBWorld DW2102.
If you read three or more registers at one time, you get wrong value for third etc.
Actually, it didn't affect the driver as it reads registers only by one at a time.
But it needs to correct.
Signed-off-by: NIgor M. Liplianin <liplianin@me.by>
Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
上级 a84adf40
...@@ -156,8 +156,7 @@ static int dw2102_i2c_transfer(struct i2c_adapter *adap, struct i2c_msg msg[], ...@@ -156,8 +156,7 @@ static int dw2102_i2c_transfer(struct i2c_adapter *adap, struct i2c_msg msg[],
/* read stv0299 register */ /* read stv0299 register */
value = msg[0].buf[0];/* register */ value = msg[0].buf[0];/* register */
for (i = 0; i < msg[1].len; i++) { for (i = 0; i < msg[1].len; i++) {
value = value + i; ret = dw210x_op_rw(d->udev, 0xb5, value + i, 0,
ret = dw210x_op_rw(d->udev, 0xb5, value, 0,
buf6, 2, DW210X_READ_MSG); buf6, 2, DW210X_READ_MSG);
msg[1].buf[i] = buf6[0]; msg[1].buf[i] = buf6[0];
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册