This allows accessing the EEPROM on the Olimex A20-OLinuXino-MICRO using the i2c command.
Signed-off-by: Jonathan Liu <net...@gmail.com> --- arch/arm/include/asm/arch-sunxi/gpio.h | 2 ++ arch/arm/include/asm/arch-sunxi/i2c.h | 4 ++++ board/sunxi/board.c | 6 ++++++ include/configs/sunxi-common.h | 4 ++++ 4 files changed, 16 insertions(+) diff --git a/arch/arm/include/asm/arch-sunxi/gpio.h b/arch/arm/include/asm/arch-sunxi/gpio.h index 46a111e..7a866b4 100644 --- a/arch/arm/include/asm/arch-sunxi/gpio.h +++ b/arch/arm/include/asm/arch-sunxi/gpio.h @@ -123,6 +123,8 @@ enum sunxi_gpio_number { #define SUN7I_GPA0_GMAC 5 #define SUNXI_GPB0_TWI0 2 +#define SUNXI_GPB0_TWI1 2 +#define SUNXI_GPB0_TWI2 2 #define SUN4I_GPB22_UART0_TX 2 #define SUN4I_GPB23_UART0_RX 2 diff --git a/arch/arm/include/asm/arch-sunxi/i2c.h b/arch/arm/include/asm/arch-sunxi/i2c.h index dc5406b..d1708d1 100644 --- a/arch/arm/include/asm/arch-sunxi/i2c.h +++ b/arch/arm/include/asm/arch-sunxi/i2c.h @@ -8,7 +8,11 @@ #include <asm/arch/cpu.h> +#ifdef CONFIG_SPL_BUILD #define CONFIG_I2C_MVTWSI_BASE SUNXI_TWI0_BASE +#else +#define CONFIG_I2C_MVTWSI_BASE SUNXI_TWI1_BASE +#endif /* This is abp0-clk on sun4i/5i/7i / abp1-clk on sun6i/sun8i which is 24MHz */ #define CONFIG_SYS_TCLK 24000000 diff --git a/board/sunxi/board.c b/board/sunxi/board.c index 6c362a3..c9035ba 100644 --- a/board/sunxi/board.c +++ b/board/sunxi/board.c @@ -129,9 +129,15 @@ int board_mmc_init(bd_t *bis) void i2c_init_board(void) { +#ifdef CONFIG_SPL_BUILD sunxi_gpio_set_cfgpin(SUNXI_GPB(0), SUNXI_GPB0_TWI0); sunxi_gpio_set_cfgpin(SUNXI_GPB(1), SUNXI_GPB0_TWI0); clock_twi_onoff(0, 1); +#else + sunxi_gpio_set_cfgpin(SUNXI_GPB(18), SUNXI_GPB0_TWI1); + sunxi_gpio_set_cfgpin(SUNXI_GPB(19), SUNXI_GPB0_TWI1); + clock_twi_onoff(1, 1); +#endif } #if defined(CONFIG_SPL_BUILD) || defined(CONFIG_SUN6I) || defined(CONFIG_SUN8I) diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h index e11c4ee..19ae9c9 100644 --- a/include/configs/sunxi-common.h +++ b/include/configs/sunxi-common.h @@ -320,7 +320,11 @@ /* No CONFIG_SYS_I2C as we use the non converted mvtwsi driver */ #define CONFIG_HARD_I2C #define CONFIG_SYS_I2C_SUNXI +#ifdef CONFIG_SPL_BUILD #define CONFIG_SYS_I2C_SPEED 400000 +#else +#define CONFIG_SYS_I2C_SPEED 100000 +#endif #define CONFIG_SYS_I2C_SLAVE 0x7f #define CONFIG_CMD_I2C -- 1.9.2 -- You received this message because you are subscribed to the Google Groups "linux-sunxi" group. To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.