[U-Boot] [PATCH V3] cmd_i2c: Provide option for bulk 'i2c write' in one transaction

Simon Glass sjg at chromium.org
Wed Feb 4 01:41:06 CET 2015


Hi Masahiro,

On 3 February 2015 at 01:35, Masahiro Yamada <yamada.m at jp.panasonic.com> wrote:
> Hi Simon,
>
>
> On Tue, 3 Feb 2015 10:10:02 +0200
> "Lubomir Popov" <lpopov at mm-sol.com> wrote:
>
>> Hi Simon,
>>
>> > Hi,
>> >
>> > On 30 January 2015 at 10:56, Lubomir Popov <lpopov at mm-sol.com> wrote:
>> >> I2C chips do exist that require a write of some multi-byte data to occur in
>> >> a single bus transaction (aka atomic transfer), otherwise either the write
>> >> does not come into effect at all, or normal operation of internal circuitry
>> >> cannot be guaranteed. The current implementation of the 'i2c write' command
>> >> (transfer of multiple bytes from a memory buffer) in fact performs a separate
>> >> transaction for each byte to be written and thus cannot support such types of
>> >> I2C slave devices.
>> >>
>> >> This patch provides an alternative by allowing 'i2c write' to execute the
>> >> write transfer of the given number of bytes in a single bus transaction if
>> >> the '-s' option is specified as a final command argument. Else the current
>> >> re-addressing method is used.
>> >>
>> >> Signed-off-by: Lubomir Popov <l-popov at ti.com>
>
>
>
>
> Can we support "pagesize" property in Driver Model I2C?
>
> The binding information is written in
> Documentation/devicetree/bindings/eeprom.txt  of Linux Kernel.
>
> If it is possible, it would help make the write access faster.
> (Sorry, I have not taken a close look.)
>
> Perhaps, it may also satisfy Lubomir's demand ??
>

I think this is slightly different - some devices cannot support
writes with more than one data value at a time - they require a
separate address cycle before each data value.

Regards,
Simon


More information about the U-Boot mailing list