On Wed, Feb 14, 2018 at 09:19:06AM +0300, Antony Pavlov wrote: > On Tue, 13 Feb 2018 09:19:43 +0100 > Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> wrote: > > > On Fri, Feb 09, 2018 at 02:22:24PM +0300, Antony Pavlov wrote: > > > On Fri, 9 Feb 2018 09:36:36 +0100 > > > Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> wrote: > > > > > > > Hi Antony, > > > > > > > > On Thu, Feb 08, 2018 at 10:48:56AM +0300, Antony Pavlov wrote: > > > > > Sometimes for communication with a simple I2C devices > > > > > (e.g. PCF8574 or TM1650) it's necessary to send only > > > > > one data byte into the I2C device. > > > > > Current i2c_write command makes this impossible because > > > > > you can't just pass 'device address' and 'register number' > > > > > (or 'device address' and 'one data byte') to the command. > > > > > You always have to pass all three parameters: > > > > > 'device address', 'register number' and 'data'. > > > > > > > > > > This commit fixes the problem. > > > > > > > > > > Sample usage: > > > > > > > > > > barebox@barebox sandbox:/ i2c_write -a 0x24 0x01 > > > > > > > > > > Signed-off-by: Antony Pavlov <antonynpavlov@xxxxxxxxx> > > > > > --- > > > > > commands/i2c.c | 8 ++++++-- > > > > > 1 file changed, 6 insertions(+), 2 deletions(-) > > > > > > > > Looks good to me. > > > > > > > > I applied this one despite the [RFC] tag. If for some reason you want to > > > > resend this, feel free to do so, but otherwise consider this applied. > > > > > > Thanks! > > > > > > The patch is short, it's understandable and it fixes the problem. > > > I prefere to apply this patch as is. > > > > > > I see some inconsistency in drivers/i2c/i2c.c. > > > We have i2c_master_send() and i2c_write_reg() functions. > > > These functions are intended to make similar work but they are > > > written in very different style. I suppose that we can rewrite > > > i2c_master_send() (e.g. drop FIXME) and make i2c_write_reg() > > > work on top of i2c_master_send(). Any comments? > > > > Rewrite i2c_master_send()? Do you mean rewrite i2c_write_reg() instead? > > You are right, of course I propose rewrite i2c_write_reg() (there is no > FIXME comment inside i2c_master_send()). Ok, that should work I think. Feel free to propose a patch. Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox