Thread (18 messages) 18 messages, 4 authors, 2018-07-11

Re: [PATCH v11 5/8] i2c: fsi: Add transfer implementation

From: Wolfram Sang <hidden>
Date: 2018-07-10 18:50:52
Also in: linux-i2c, lkml

quoted
quoted
+	cmd |= FIELD_PREP(I2C_CMD_ADDR, msg->addr >> 1);
I just noticed this and wonder: Don't you need the LSB of the address?
It is not the RW flag, this is encoded in msg->flags.
So, the hardware interprets the LSB as the RW flag. It wouldn't be possible
to have a device addressed with the LSB set on this I2C master.
But msg->addr is 7 bit and LSB aligned. If I am not horribly wrong, with
the above code, an EEPROM at 0x50 would show up as 0x28 with your
driver?
Indeed, real 10-bit addresses require some additional manipulation of this
I2C master in order to work. We don't support it right now.
Then you should remove the associated FUNC flag.

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help