Commit f8eab9c3 authored by Wolfgang Denk's avatar Wolfgang Denk
Browse files

Merge branch 'master' of git://git.denx.de/u-boot-i2c

parents 6b67962f e7de18af
......@@ -49,10 +49,13 @@
#ifdef CONFIG_SYS_I2C_MX31_PORT1
#define I2C_BASE 0x43f80000
#define I2C_CLK_OFFSET 26
#elif defined (CONFIG_SYS_I2C_MX31_PORT2)
#define I2C_BASE 0x43f98000
#define I2C_CLK_OFFSET 28
#elif defined (CONFIG_SYS_I2C_MX31_PORT3)
#define I2C_BASE 0x43f84000
#define I2C_CLK_OFFSET 30
#else
#error "define CONFIG_SYS_I2C_MX31_PORTx to use the mx31 I2C driver"
#endif
......@@ -72,6 +75,9 @@ void i2c_init(int speed, int unused)
int freq = mx31_get_ipg_clk();
int i;
/* start the required I2C clock */
__REG(CCM_CGR0) = __REG(CCM_CGR0) | (3 << I2C_CLK_OFFSET);
for (i = 0; i < 0x1f; i++)
if (freq / div[i] <= speed)
break;
......
......@@ -159,14 +159,7 @@ static inline u8 i2c_reg_read(u8 addr, u8 reg)
printf("%s: addr=0x%02x, reg=0x%02x\n", __func__, addr, reg);
#endif
#ifdef CONFIG_BLACKFIN
/* This ifdef will become unneccessary in a future version of the
* blackfin I2C driver.
*/
i2c_read(addr, reg, 0, &buf, 1);
#else
i2c_read(addr, reg, 1, &buf, 1);
#endif
return buf;
}
......@@ -183,14 +176,7 @@ static inline void i2c_reg_write(u8 addr, u8 reg, u8 val)
__func__, addr, reg, val);
#endif
#ifdef CONFIG_BLACKFIN
/* This ifdef will become unneccessary in a future version of the
* blackfin I2C driver.
*/
i2c_write(addr, reg, 0, &val, 1);
#else
i2c_write(addr, reg, 1, &val, 1);
#endif
}
/*
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment