From d3decdebdef6207939aa1995d7327822a0267ad4 Mon Sep 17 00:00:00 2001 From: Steve Sakoman Date: Fri, 22 Jun 2012 07:45:57 +0000 Subject: [PATCH] omap: am335x_evm: enable i2c1 channel This patch sets up pinmux, enables fclk, and defines CONFIG_I2C_MULTI_BUS Signed-off-by: Steve Sakoman --- arch/arm/cpu/armv7/am33xx/clock.c | 5 +++++ board/ti/am335x/evm.c | 1 + board/ti/am335x/mux.c | 13 +++++++++++++ include/configs/am335x_evm.h | 1 + 4 files changed, 20 insertions(+) diff --git a/arch/arm/cpu/armv7/am33xx/clock.c b/arch/arm/cpu/armv7/am33xx/clock.c index ddce2138c6..16beb4ff3e 100644 --- a/arch/arm/cpu/armv7/am33xx/clock.c +++ b/arch/arm/cpu/armv7/am33xx/clock.c @@ -133,6 +133,11 @@ static void enable_per_clocks(void) writel(PRCM_MOD_EN, &cmper->gpio3clkctrl); while (readl(&cmper->gpio3clkctrl) != PRCM_MOD_EN) ; + + /* i2c1 */ + writel(PRCM_MOD_EN, &cmper->i2c1clkctrl); + while (readl(&cmper->i2c1clkctrl) != PRCM_MOD_EN) + ; } static void mpu_pll_config(void) diff --git a/board/ti/am335x/evm.c b/board/ti/am335x/evm.c index f2e355c796..0d0affa833 100644 --- a/board/ti/am335x/evm.c +++ b/board/ti/am335x/evm.c @@ -30,6 +30,7 @@ int board_init(void) #ifdef CONFIG_I2C enable_i2c0_pin_mux(); + enable_i2c1_pin_mux(); i2c_init(CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE); #endif diff --git a/board/ti/am335x/mux.c b/board/ti/am335x/mux.c index 9ccb43642b..c696c0fe95 100644 --- a/board/ti/am335x/mux.c +++ b/board/ti/am335x/mux.c @@ -280,6 +280,14 @@ static struct module_pin_mux i2c0_pin_mux[] = { {-1}, }; +static struct module_pin_mux i2c1_pin_mux[] = { + {OFFSET(spi0_d1), (MODE(2) | RXACTIVE | + PULLUDEN | SLEWCTRL)}, /* I2C_DATA */ + {OFFSET(spi0_cs0), (MODE(2) | RXACTIVE | + PULLUDEN | SLEWCTRL)}, /* I2C_SCLK */ + {-1}, +}; + /* * Configure the pin mux for the module */ @@ -310,3 +318,8 @@ void enable_i2c0_pin_mux(void) { configure_module_pin_mux(i2c0_pin_mux); } + +void enable_i2c1_pin_mux(void) +{ + configure_module_pin_mux(i2c1_pin_mux); +} diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h index 89e2aa07b7..2b41c1c9d5 100644 --- a/include/configs/am335x_evm.h +++ b/include/configs/am335x_evm.h @@ -108,6 +108,7 @@ #define CONFIG_HARD_I2C #define CONFIG_SYS_I2C_SPEED 100000 #define CONFIG_SYS_I2C_SLAVE 1 +#define CONFIG_I2C_MULTI_BUS #define CONFIG_DRIVER_OMAP24XX_I2C #define CONFIG_BAUDRATE 115200 -- 2.39.5