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

From: Wolfram Sang
Date: Tue Jul 10 2018 - 14:50:53 EST



> > > + 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.

Attachment: signature.asc
Description: PGP signature