diff options
author | Aniroop Mathur <a.mathur@samsung.com> | 2016-12-18 18:27:16 -0500 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2016-12-18 18:55:57 -0500 |
commit | 67626c9323027534496d21cf32793121662d03c0 (patch) | |
tree | 7442a44ff9d4912fcf7e33bd2457a87f1defe7a5 | |
parent | 41c567a5d7d1a986763e58c3394782813c3bcb03 (diff) |
Input: synaptics_i2c - change msleep to usleep_range for small msecs
msleep(1~20) may not do what the caller intends, and will often sleep longer.
(~20 ms actual sleep for any value given in the 1~20ms range)
This is not the desired behaviour for many cases like device resume time,
device suspend time, device enable time, retry logic, etc.
Thus, change msleep to usleep_range for precise wakeups.
Signed-off-by: Aniroop Mathur <a.mathur@samsung.com>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
-rw-r--r-- | drivers/input/mouse/synaptics_i2c.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/input/mouse/synaptics_i2c.c b/drivers/input/mouse/synaptics_i2c.c index aa7c5da60800..cb2bf203f4ca 100644 --- a/drivers/input/mouse/synaptics_i2c.c +++ b/drivers/input/mouse/synaptics_i2c.c | |||
@@ -29,7 +29,7 @@ | |||
29 | * after soft reset, we should wait for 1 ms | 29 | * after soft reset, we should wait for 1 ms |
30 | * before the device becomes operational | 30 | * before the device becomes operational |
31 | */ | 31 | */ |
32 | #define SOFT_RESET_DELAY_MS 3 | 32 | #define SOFT_RESET_DELAY_US 3000 |
33 | /* and after hard reset, we should wait for max 500ms */ | 33 | /* and after hard reset, we should wait for max 500ms */ |
34 | #define HARD_RESET_DELAY_MS 500 | 34 | #define HARD_RESET_DELAY_MS 500 |
35 | 35 | ||
@@ -311,7 +311,7 @@ static int synaptics_i2c_reset_config(struct i2c_client *client) | |||
311 | if (ret) { | 311 | if (ret) { |
312 | dev_err(&client->dev, "Unable to reset device\n"); | 312 | dev_err(&client->dev, "Unable to reset device\n"); |
313 | } else { | 313 | } else { |
314 | msleep(SOFT_RESET_DELAY_MS); | 314 | usleep_range(SOFT_RESET_DELAY_US, SOFT_RESET_DELAY_US + 100); |
315 | ret = synaptics_i2c_config(client); | 315 | ret = synaptics_i2c_config(client); |
316 | if (ret) | 316 | if (ret) |
317 | dev_err(&client->dev, "Unable to config device\n"); | 317 | dev_err(&client->dev, "Unable to config device\n"); |