[U-Boot] [PATCH 09/13 v5] ARM: OMAP3: Add I2C support
Jean-Christophe PLAGNIOL-VILLARD
plagnioj at jcrosoft.com
Mon Nov 3 01:18:42 CET 2008
On 19:38 Sun 02 Nov , dirk.behme at googlemail.com wrote:
> Subject: [PATCH 09/13 v5] ARM: OMAP3: Add I2C support
>
> From: Dirk Behme <dirk.behme at gmail.com>
>
> Add I2C support
>
> Signed-off-by: Dirk Behme <dirk.behme at gmail.com>
>
> ---
> Changes in version v5:
>
> - Split functional changes and coding style clean up as proposed by Jean-Christophe PLAGNIOL-VILLARD.
>
> Changes in version v2:
>
> - Remove SMC911X network init as proposed by Ben Warren. Thanks!
>
> drivers/i2c/Makefile | 1 +
> drivers/i2c/omap24xx_i2c.c | 24 ++++++++++++++++++++++++
> 2 files changed, 25 insertions(+)
>
> Index: u-boot-main/drivers/i2c/Makefile
> ===================================================================
> --- u-boot-main.orig/drivers/i2c/Makefile
> +++ u-boot-main/drivers/i2c/Makefile
> @@ -29,6 +29,7 @@ COBJS-$(CONFIG_FSL_I2C) += fsl_i2c.o
> COBJS-$(CONFIG_I2C_MXC) += mxc_i2c.o
> COBJS-$(CONFIG_DRIVER_OMAP1510_I2C) += omap1510_i2c.o
> COBJS-$(CONFIG_DRIVER_OMAP24XX_I2C) += omap24xx_i2c.o
> +COBJS-$(CONFIG_DRIVER_OMAP34XX_I2C) += omap24xx_i2c.o
> COBJS-$(CONFIG_SOFT_I2C) += soft_i2c.o
> COBJS-$(CONFIG_TSI108_I2C) += tsi108_i2c.o
>
> Index: u-boot-main/drivers/i2c/omap24xx_i2c.c
> ===================================================================
> --- u-boot-main.orig/drivers/i2c/omap24xx_i2c.c
> +++ u-boot-main/drivers/i2c/omap24xx_i2c.c
> @@ -25,6 +25,8 @@
> #include <asm/arch/i2c.h>
> #include <asm/io.h>
>
> +#define inb(a) __raw_readb(a)
> +#define outb(a, v) __raw_writeb(a, v)
> #define inw(a) __raw_readw(a)
> #define outw(a,v) __raw_writew(a,v)
This 4 macro is supposed to be defined in io.h
>
> @@ -112,7 +114,11 @@ static int i2c_read_byte (u8 devaddr, u8
>
> status = wait_for_pin ();
> if (status & I2C_STAT_RRDY) {
> +#if defined(CONFIG_OMAP243X) || defined(CONFIG_OMAP34XX)
> + *value = inb(I2C_DATA);
please respect the file style, add a space before '('
and so on
> +#else
> *value = inw (I2C_DATA);
> +#endif
> udelay (20000);
Best Regards,
J.
More information about the U-Boot
mailing list