[U-Boot] [PATCH 1/2] cmd_eeprom: make it possible to define the used i2c bus
Stefano Babic
sbabic at denx.de
Tue Feb 17 10:38:32 CET 2015
Hi Christian,
On 11/02/2015 15:19, Christian Gmeiner wrote:
> A SoC like the i.MX6 supports more then one i2c bus. In oder to be
> able to use the eeprom command add a new define to specify the
> i2c bus to use. If CONFIG_SYS_I2C_EEPROM_BUS is not defined there
> is no functional change, else a call to i2c_set_bus_num(..) is
> done before calling i2c_read(..) and i2c_write(..).
>
> Signed-off-by: Christian Gmeiner <christian.gmeiner at gmail.com>
> ---
> README | 3 +++
> common/cmd_eeprom.c | 6 ++++++
> 2 files changed, 9 insertions(+)
>
> diff --git a/README b/README
> index ba57dc5..f38ab15 100644
> --- a/README
> +++ b/README
> @@ -4341,6 +4341,9 @@ to save the current settings.
> If defined, specified the chip address of the EEPROM device.
> The default address is zero.
>
> + - CONFIG_SYS_I2C_EEPROM_BUS:
> + If defined, specified the i2c bus of the EEPROM device.
> +
Thanks to fix this as well ;-)
> - CONFIG_SYS_EEPROM_PAGE_WRITE_BITS:
> If defined, the number of bits used to address bytes in a
> single page in the EEPROM device. A 64 byte page, for example
> diff --git a/common/cmd_eeprom.c b/common/cmd_eeprom.c
> index 29f0f1f..e9904cd 100644
> --- a/common/cmd_eeprom.c
> +++ b/common/cmd_eeprom.c
> @@ -161,6 +161,9 @@ int eeprom_read (unsigned dev_addr, unsigned offset, uchar *buffer, unsigned cnt
> #if defined(CONFIG_SPI) && !defined(CONFIG_ENV_EEPROM_IS_ON_I2C)
> spi_read (addr, alen, buffer, len);
> #else
> +#if defined(CONFIG_SYS_I2C_EEPROM_BUS)
> + i2c_set_bus_num(CONFIG_SYS_I2C_EEPROM_BUS);
> +#endif
> if (i2c_read(addr[0], offset, alen - 1, buffer, len))
> rcode = 1;
> #endif
> @@ -339,6 +342,9 @@ int eeprom_write (unsigned dev_addr, unsigned offset, uchar *buffer, unsigned cn
> /* Write is enabled ... now write eeprom value.
> */
> #endif
> +#if defined(CONFIG_SYS_I2C_EEPROM_BUS)
> + i2c_set_bus_num(CONFIG_SYS_I2C_EEPROM_BUS);
> +#endif
> if (i2c_write(addr[0], offset, alen - 1, buffer, len))
> rcode = 1;
>
>
Acked-by: Stefano Babic <sbabic at denx.de>
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
More information about the U-Boot
mailing list