mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-03 19:36:39 +07:00
[media] cx231xx: fix i2c debug prints
Do not shift the already 7bit i2c address. Print a message also for write+read transactions. For write+read, print the read buffer correctly instead of using the write buffer. Signed-off-by: Matthias Schwarzott <zzam@gentoo.org> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
This commit is contained in:
parent
5765f33c6c
commit
1134e9d193
@ -371,9 +371,9 @@ static int cx231xx_i2c_xfer(struct i2c_adapter *i2c_adap,
|
||||
mutex_lock(&dev->i2c_lock);
|
||||
for (i = 0; i < num; i++) {
|
||||
|
||||
addr = msgs[i].addr >> 1;
|
||||
addr = msgs[i].addr;
|
||||
|
||||
dprintk2(2, "%s %s addr=%x len=%d:",
|
||||
dprintk2(2, "%s %s addr=0x%x len=%d:",
|
||||
(msgs[i].flags & I2C_M_RD) ? "read" : "write",
|
||||
i == num - 1 ? "stop" : "nonstop", addr, msgs[i].len);
|
||||
if (!msgs[i].len) {
|
||||
@ -395,13 +395,21 @@ static int cx231xx_i2c_xfer(struct i2c_adapter *i2c_adap,
|
||||
} else if (i + 1 < num && (msgs[i + 1].flags & I2C_M_RD) &&
|
||||
msgs[i].addr == msgs[i + 1].addr
|
||||
&& (msgs[i].len <= 2) && (bus->nr < 3)) {
|
||||
/* write bytes */
|
||||
if (i2c_debug >= 2) {
|
||||
for (byte = 0; byte < msgs[i].len; byte++)
|
||||
printk(" %02x", msgs[i].buf[byte]);
|
||||
}
|
||||
/* read bytes */
|
||||
dprintk2(2, "plus %s %s addr=0x%x len=%d:",
|
||||
(msgs[i+1].flags & I2C_M_RD) ? "read" : "write",
|
||||
i+1 == num - 1 ? "stop" : "nonstop", addr, msgs[i+1].len);
|
||||
rc = cx231xx_i2c_recv_bytes_with_saddr(i2c_adap,
|
||||
&msgs[i],
|
||||
&msgs[i + 1]);
|
||||
if (i2c_debug >= 2) {
|
||||
for (byte = 0; byte < msgs[i].len; byte++)
|
||||
printk(" %02x", msgs[i].buf[byte]);
|
||||
for (byte = 0; byte < msgs[i+1].len; byte++)
|
||||
printk(" %02x", msgs[i+1].buf[byte]);
|
||||
}
|
||||
i++;
|
||||
} else {
|
||||
|
Loading…
Reference in New Issue
Block a user