From: Sylvain Lemieux <slemi...@tycoint.com> The HCLK is not constant and can take different value; use the api function to get the value of the HCLK for the I2C clock high and low computation.
Signed-off-by: Sylvain Lemieux <slemi...@tycoint.com> --- drivers/i2c/lpc32xx_i2c.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/i2c/lpc32xx_i2c.c b/drivers/i2c/lpc32xx_i2c.c index 78d26e4..98106fa 100644 --- a/drivers/i2c/lpc32xx_i2c.c +++ b/drivers/i2c/lpc32xx_i2c.c @@ -72,7 +72,7 @@ static unsigned int lpc32xx_i2c_set_bus_speed(struct i2c_adapter *adap, if (speed == 0) return -EINVAL; - half_period = (105000000 / speed) / 2; + half_period = (get_hclk_clk_rate() / speed) / 2; if ((half_period > 255) || (half_period < 0)) return -EINVAL; -- 1.8.3.1 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot