diff options
| author | Mohsan Habibi <mohsan@motorola.com> | 2014-06-23 18:18:09 -0400 |
|---|---|---|
| committer | Mohsan Habibi <mohsan@motorola.com> | 2014-06-26 02:58:18 -0400 |
| commit | 712386f64eaa872d712570f99a70b4aa9c7db834 (patch) | |
| tree | 15201bbfd6303a51bb3ca6b90b340aa7c2a1855f | |
| parent | 169059690f51fbe5ea598bec10c1c82cd582db1b (diff) | |
| download | olio-linux-3.10-712386f64eaa872d712570f99a70b4aa9c7db834.tar.xz olio-linux-3.10-712386f64eaa872d712570f99a70b4aa9c7db834.zip | |
IKXCLOCK-2527 i2c: omap: use usleep_range instead of msleep
Using msleep for low values such as 1ms will often sleep longer than
~20ms, which is a unnecessarily high delay time, especially in
situations such as waiting for the bus to become free where we want
to resume i2c as soon as it is ready, not 20ms later.
Change-Id: If1f32c3ed3b6c3c109c85392442babc3c95ce030
Signed-off-by: Mohsan Habibi <mohsan@motorola.com>
| -rw-r--r-- | drivers/i2c/busses/i2c-omap.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/i2c/busses/i2c-omap.c b/drivers/i2c/busses/i2c-omap.c index 8d7c61c3832..ca702aa7f81 100644 --- a/drivers/i2c/busses/i2c-omap.c +++ b/drivers/i2c/busses/i2c-omap.c @@ -322,7 +322,7 @@ static int omap_i2c_reset(struct omap_i2c_dev *dev) "for controller reset\n"); return -ETIMEDOUT; } - msleep(1); + usleep_range(1000, 2000); } /* SYSC register is cleared by the reset; rewrite it */ @@ -459,7 +459,7 @@ static int omap_i2c_wait_for_bb(struct omap_i2c_dev *dev) dev_warn(dev->dev, "timeout waiting for bus ready\n"); return -ETIMEDOUT; } - msleep(1); + usleep_range(1000, 2000); } return 0; @@ -644,7 +644,7 @@ omap_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], int num) OMAP_I2C_SYSTEST_FREE | (2 << OMAP_I2C_SYSTEST_TMODE_SHIFT)); omap_i2c_write_reg(dev, OMAP_I2C_SYSTEST_REG, val); - msleep(1); + usleep_range(1000, 2000); omap_i2c_init(dev); r = omap_i2c_wait_for_bb(dev); if (r < 0) { |