diff options
author | Simon Glass <sjg@chromium.org> | 2020-02-13 13:24:55 -0700 |
---|---|---|
committer | Heiko Schocher <hs@denx.de> | 2020-02-18 08:16:45 +0100 |
commit | 64d44c4e9f4fe048aca69db7b6a208ab9e55f9b2 (patch) | |
tree | ab51d2e21217e4a56847d09e186796815f05a943 /drivers/i2c | |
parent | f2a73d6867ef973fbb8471cc87058205999b5e5c (diff) | |
download | u-boot-64d44c4e9f4fe048aca69db7b6a208ab9e55f9b2.tar.gz |
i2c: designware_i2c: Correct the selection of speed mode
Unfortunately a recent change adjusted the order of the checks here such
that 400MHz now shows up as fast-plus speed (1Mbps). Fix it.
Signed-off-by: Simon Glass <sjg@chromium.org>
Fixes: d96440d1e3 ("i2c: designware_i2c: Add support for fast-plus speed")
Diffstat (limited to 'drivers/i2c')
-rw-r--r-- | drivers/i2c/designware_i2c.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/i2c/designware_i2c.c b/drivers/i2c/designware_i2c.c index e1d5aeb19d..0b5e70af59 100644 --- a/drivers/i2c/designware_i2c.c +++ b/drivers/i2c/designware_i2c.c @@ -212,9 +212,9 @@ static int calc_bus_speed(struct dw_i2c *priv, int speed, ulong bus_clk, if (speed >= I2C_SPEED_HIGH_RATE && (!scl_sda_cfg || scl_sda_cfg->has_high_speed)) i2c_spd = IC_SPEED_MODE_HIGH; - else if (speed >= I2C_SPEED_FAST_RATE) - i2c_spd = IC_SPEED_MODE_FAST_PLUS; else if (speed >= I2C_SPEED_FAST_PLUS_RATE) + i2c_spd = IC_SPEED_MODE_FAST_PLUS; + else if (speed >= I2C_SPEED_FAST_RATE) i2c_spd = IC_SPEED_MODE_FAST; else i2c_spd = IC_SPEED_MODE_STANDARD; |