[U-Boot] [PATCH 1/1] TI OMAP3 Use arm init sequence to initialize i2c

Dirk Behme dirk.behme at googlemail.com
Sat Sep 26 07:54:41 CEST 2009


Tom Rix wrote:
> This changes fixes an early i2c error.
> 
> It appears that I2C is working because once a read or write
> error is detected, the omap24xx_i2c driver calls i2c_init
> inside its error handling check.
> 
> While it is ok to attempt error handling this way, the boards
> must not depend on this side effect to initialize it's i2c.
> 
> Instead of explicitly calling i2c_init for every board, use
> the generic arm initialization in lib_arm/board.c. By defining
> the config variable CONFIG_HARD_I2C, the omap3 i2c initialization
> is included in the init_sequence table.
> 
> Run tested on Beagle.
> Compile tested on the omap3's
> 
> Signed-off-by: Tom Rix <Tom.Rix at windriver.com>

Acked-by: Dirk Behme <dirk.behme at googlemail.com>

> ---
>  include/configs/devkit8000.h    |    1 +
>  include/configs/omap3_beagle.h  |    1 +
>  include/configs/omap3_evm.h     |    1 +
>  include/configs/omap3_overo.h   |    1 +
>  include/configs/omap3_pandora.h |    1 +
>  include/configs/omap3_zoom1.h   |    1 +
>  include/configs/omap3_zoom2.h   |    1 +
>  7 files changed, 7 insertions(+), 0 deletions(-)
> 
> diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h
> index cd40da6..a8ac786 100644
> --- a/include/configs/devkit8000.h
> +++ b/include/configs/devkit8000.h
> @@ -98,6 +98,7 @@
>  #define CONFIG_DOS_PARTITION		1
>  
>  /* I2C */
> +#define CONFIG_HARD_I2C			1
>  #define CONFIG_SYS_I2C_SPEED		100000
>  #define CONFIG_SYS_I2C_SLAVE		1
>  #define CONFIG_SYS_I2C_BUS		0
> diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
> index 61629f8..55eeb94 100644
> --- a/include/configs/omap3_beagle.h
> +++ b/include/configs/omap3_beagle.h
> @@ -123,6 +123,7 @@
>  #undef CONFIG_CMD_NFS		/* NFS support			*/
>  
>  #define CONFIG_SYS_NO_FLASH
> +#define CONFIG_HARD_I2C			1
>  #define CONFIG_SYS_I2C_SPEED		100000
>  #define CONFIG_SYS_I2C_SLAVE		1
>  #define CONFIG_SYS_I2C_BUS		0
> diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h
> index 9f0f34b..72e9626 100644
> --- a/include/configs/omap3_evm.h
> +++ b/include/configs/omap3_evm.h
> @@ -121,6 +121,7 @@
>  #undef CONFIG_CMD_IMLS		/* List all found images	*/
>  
>  #define CONFIG_SYS_NO_FLASH
> +#define CONFIG_HARD_I2C			1
>  #define CONFIG_SYS_I2C_SPEED		100000
>  #define CONFIG_SYS_I2C_SLAVE		1
>  #define CONFIG_SYS_I2C_BUS		0
> diff --git a/include/configs/omap3_overo.h b/include/configs/omap3_overo.h
> index 6616b55..c4fd696 100644
> --- a/include/configs/omap3_overo.h
> +++ b/include/configs/omap3_overo.h
> @@ -114,6 +114,7 @@
>  
>  
>  #define CONFIG_SYS_NO_FLASH
> +#define CONFIG_HARD_I2C			1
>  #define CONFIG_SYS_I2C_SPEED		100000
>  #define CONFIG_SYS_I2C_SLAVE		1
>  #define CONFIG_SYS_I2C_BUS		0
> diff --git a/include/configs/omap3_pandora.h b/include/configs/omap3_pandora.h
> index 1cfd7e9..064c0bc 100644
> --- a/include/configs/omap3_pandora.h
> +++ b/include/configs/omap3_pandora.h
> @@ -112,6 +112,7 @@
>  #undef CONFIG_CMD_NFS		/* NFS support			*/
>  
>  #define CONFIG_SYS_NO_FLASH
> +#define CONFIG_HARD_I2C			1
>  #define CONFIG_SYS_I2C_SPEED		100000
>  #define CONFIG_SYS_I2C_SLAVE		1
>  #define CONFIG_SYS_I2C_BUS		0
> diff --git a/include/configs/omap3_zoom1.h b/include/configs/omap3_zoom1.h
> index 61a41e7..b55b8f0 100644
> --- a/include/configs/omap3_zoom1.h
> +++ b/include/configs/omap3_zoom1.h
> @@ -119,6 +119,7 @@
>  #undef CONFIG_CMD_NFS		/* NFS support			*/
>  
>  #define CONFIG_SYS_NO_FLASH
> +#define CONFIG_HARD_I2C			1
>  #define CONFIG_SYS_I2C_SPEED		100000
>  #define CONFIG_SYS_I2C_SLAVE		1
>  #define CONFIG_SYS_I2C_BUS		0
> diff --git a/include/configs/omap3_zoom2.h b/include/configs/omap3_zoom2.h
> index 03f92f5..75ab980 100644
> --- a/include/configs/omap3_zoom2.h
> +++ b/include/configs/omap3_zoom2.h
> @@ -140,6 +140,7 @@
>  #undef CONFIG_CMD_NFS			/* NFS support			*/
>  
>  #define CONFIG_SYS_NO_FLASH
> +#define CONFIG_HARD_I2C			1
>  #define CONFIG_SYS_I2C_SPEED		100000
>  #define CONFIG_SYS_I2C_SLAVE		1
>  #define CONFIG_SYS_I2C_BUS		0



More information about the U-Boot mailing list