X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=drivers%2Fi2c%2Fmvtwsi.c;h=38bca897458661aa652e635bc252895fecdad812;hb=004b4cdaeca45d4702f0494f517b6fc472ccf4a1;hp=30bee0d52e598d281df2679c7a5a0bce7865e70a;hpb=02b0895c215e252cff50d9edf53a972d2bbbfd30;p=u-boot diff --git a/drivers/i2c/mvtwsi.c b/drivers/i2c/mvtwsi.c index 30bee0d52e..38bca89745 100644 --- a/drivers/i2c/mvtwsi.c +++ b/drivers/i2c/mvtwsi.c @@ -487,11 +487,14 @@ static uint __twsi_i2c_set_bus_speed(struct mvtwsi_registers *twsi, static void __twsi_i2c_init(struct mvtwsi_registers *twsi, int speed, int slaveadd, uint *actual_speed) { + uint tmp_speed; + /* Reset controller */ twsi_reset(twsi); /* Set speed */ + tmp_speed = __twsi_i2c_set_bus_speed(twsi, speed); if (actual_speed) - *actual_speed = __twsi_i2c_set_bus_speed(twsi, speed); + *actual_speed = tmp_speed; /* Set slave address; even though we don't use it */ writel(slaveadd, &twsi->slave_address); writel(0, &twsi->xtnd_slave_addr);