> -----Original Message----- > From: Heiko Schocher [mailto:[email protected]] > Sent: 31 October 2017 06:28 > To: Martyn Welch <[email protected]> > Cc: [email protected]; Han, Nandor (GE Healthcare) > <[email protected]>; Martyn Welch <[email protected]>; > Stefano Babic <[email protected]> > Subject: EXT: Re: [PATCH 1/7] imx: mxc_i2c: tweak the i2c transfer method > > Hello Martyn, > > Am 26.10.2017 um 16:47 schrieb Martyn Welch: > > From: Nandor Han <[email protected]> > > > > Tweak the i2c transfer to work for devices that want to read data > > without addressing a register. > > > > Signed-off-by: Nandor Han <[email protected]> > > Signed-off-by: Martyn Welch <[email protected]> > > Cc: Heiko Schocher <[email protected]> > > Cc: Stefano Babic <[email protected]> > > Signed-off-by: Martyn Welch <[email protected]> > > --- > > drivers/i2c/mxc_i2c.c | 25 +++++++++++++++---------- > > 1 file changed, 15 insertions(+), 10 deletions(-) > > > > diff --git a/drivers/i2c/mxc_i2c.c b/drivers/i2c/mxc_i2c.c index > > abf1da2..01f268b 100644 > > --- a/drivers/i2c/mxc_i2c.c > > +++ b/drivers/i2c/mxc_i2c.c > > @@ -317,16 +317,19 @@ static int i2c_init_transfer_(struct mxc_i2c_bus > *i2c_bus, u8 chip, > > temp |= I2CR_MTX | I2CR_TX_NO_AK; > > writeb(temp, base + (I2CR << reg_shift)); > > > > - /* write slave address */ > > - ret = tx_byte(i2c_bus, chip << 1); > > - if (ret < 0) > > - return ret; > > - > > - while (alen--) { > > - ret = tx_byte(i2c_bus, (addr >> (alen * 8)) & 0xff); > > + if (alen != -1) { > > I prefer here a "if (alen >= 0) {"
In normal cases yes. It looks that i2c framework doesn't support requesting data from i2c without addressing the slave. In this case -1 is used to specify that address is not needed. > > Thanks! > > bye, > Heiko > -- > DENX Software Engineering GmbH, Managing Director: Wolfgang Denk > HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany > Phone: +49-8142-66989-52 Fax: +49-8142-66989-80 Email: [email protected] _______________________________________________ U-Boot mailing list [email protected] https://lists.denx.de/listinfo/u-boot

