diff --git a/drivers/i2c/i2c_core.c b/drivers/i2c/i2c_core.c index e1767f4bd4546aa53459ee52a708fb41a88dcb43..18d6736601c161f45cb7d81b5eae53bdeaaf6b0b 100644 --- a/drivers/i2c/i2c_core.c +++ b/drivers/i2c/i2c_core.c @@ -349,7 +349,7 @@ unsigned int i2c_set_bus_speed(unsigned int speed) return 0; ret = I2C_ADAP->set_bus_speed(I2C_ADAP, speed); if (gd->flags & GD_FLG_RELOC) - I2C_ADAP->speed = ret; + I2C_ADAP->speed = (ret == 0) ? speed : 0; return ret; }