[PATCH] i2c: davinci: use mdelay() for multi-millisecond waits
Bhimeswararao Matsa
bhimeswararao.matsa at gmail.com
Fri Aug 29 04:11:30 CEST 2025
Signed-off-by: Bhimeswararao Matsa <bhimeswararao.matsa at gmail.com>
---
drivers/i2c/davinci_i2c.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/drivers/i2c/davinci_i2c.c b/drivers/i2c/davinci_i2c.c
index 9bba0600e3e..ffd0dd0b282 100644
--- a/drivers/i2c/davinci_i2c.c
+++ b/drivers/i2c/davinci_i2c.c
@@ -51,7 +51,7 @@ static int _wait_for_bus(struct i2c_regs *i2c_base)
}
REG(&(i2c_base->i2c_stat)) = stat;
- udelay(50000);
+ mdelay(50);
}
REG(&(i2c_base->i2c_stat)) = 0xffff;
@@ -63,7 +63,7 @@ static int _poll_i2c_irq(struct i2c_regs *i2c_base, int mask)
int stat, timeout;
for (timeout = 0; timeout < 10; timeout++) {
- udelay(1000);
+ mdelay(1);
stat = REG(&(i2c_base->i2c_stat));
if (stat & mask)
return stat;
@@ -81,7 +81,7 @@ static void _flush_rx(struct i2c_regs *i2c_base)
REG(&(i2c_base->i2c_drr));
REG(&(i2c_base->i2c_stat)) = I2C_STAT_RRDY;
- udelay(1000);
+ mdelay(1);
}
}
@@ -105,7 +105,7 @@ static void _davinci_i2c_init(struct i2c_regs *i2c_base,
{
if (REG(&(i2c_base->i2c_con)) & I2C_CON_EN) {
REG(&(i2c_base->i2c_con)) = 0;
- udelay(50000);
+ mdelay(50);
}
_davinci_i2c_setspeed(i2c_base, speed);
@@ -120,7 +120,7 @@ static void _davinci_i2c_init(struct i2c_regs *i2c_base,
/* Now enable I2C controller (get it out of reset) */
REG(&(i2c_base->i2c_con)) = I2C_CON_EN;
- udelay(1000);
+ mdelay(1);
}
static int _davinci_i2c_read(struct i2c_regs *i2c_base, u8 chip,
@@ -319,7 +319,7 @@ static int _davinci_i2c_probe_chip(struct i2c_regs *i2c_base, u8 chip)
REG(&(i2c_base->i2c_sa)) = chip;
REG(&(i2c_base->i2c_con)) = (I2C_CON_EN | I2C_CON_MST | I2C_CON_STT |
I2C_CON_STP);
- udelay(50000);
+ mdelay(50);
if (!(REG(&(i2c_base->i2c_stat)) & I2C_STAT_NACK)) {
rc = 0;
@@ -328,7 +328,7 @@ static int _davinci_i2c_probe_chip(struct i2c_regs *i2c_base, u8 chip)
} else {
REG(&(i2c_base->i2c_stat)) = 0xffff;
REG(&(i2c_base->i2c_con)) |= I2C_CON_STP;
- udelay(20000);
+ mdelay(20);
if (_wait_for_bus(i2c_base))
return 1;
}
--
2.43.0
More information about the U-Boot
mailing list