summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWolfgang Denk <wd@denx.de>2010-03-30 22:21:24 +0200
committerWolfgang Denk <wd@denx.de>2010-03-30 22:21:24 +0200
commit7d3ef4fa20a048008b979466f1326992aadad8ce (patch)
treed780e37d72bb4c7caa28414ea122228751f85b98
parent24de2f4be00f81c58270d0df47296bf3a3601cef (diff)
parent1a332da61df9c38b567359af114daeaaaefaead8 (diff)
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx
-rw-r--r--cpu/ppc4xx/i2c.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/cpu/ppc4xx/i2c.c b/cpu/ppc4xx/i2c.c
index 7976e75e0b..9b86187a79 100644
--- a/cpu/ppc4xx/i2c.c
+++ b/cpu/ppc4xx/i2c.c
@@ -93,7 +93,7 @@ static void _i2c_bus_reset(void)
void i2c_init(int speed, int slaveaddr)
{
- struct ppc4xx_i2c *i2c = (struct ppc4xx_i2c *)I2C_BASE_ADDR;
+ struct ppc4xx_i2c *i2c;
int val, divisor;
int bus;
@@ -109,6 +109,9 @@ void i2c_init(int speed, int slaveaddr)
for (bus = 0; bus < CONFIG_SYS_MAX_I2C_BUS; bus++) {
I2C_SET_BUS(bus);
+ /* Set i2c pointer after calling I2C_SET_BUS() */
+ i2c = (struct ppc4xx_i2c *)I2C_BASE_ADDR;
+
/* Handle possible failed I2C state */
/* FIXME: put this into i2c_init_board()? */
_i2c_bus_reset();