OSDN Git Service

thermal: rcar_thermal: Use usleep_range() instead of udelay()
authorGeert Uytterhoeven <geert+renesas@glider.be>
Wed, 15 Jan 2020 12:54:17 +0000 (13:54 +0100)
committerDaniel Lezcano <daniel.lezcano@linaro.org>
Mon, 27 Jan 2020 10:41:08 +0000 (11:41 +0100)
rcar_thermal_update_temp() takes a mutex, so it is always called in a
context that can sleep.  Hence replace the 300 µs busy loop by a call to
usleep_range(), to allow other threads to run.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lore.kernel.org/r/20200115125417.5263-1-geert+renesas@glider.be
drivers/thermal/rcar_thermal.c

index d0873de..a8dd96d 100644 (file)
@@ -219,7 +219,7 @@ static int rcar_thermal_update_temp(struct rcar_thermal_priv *priv)
                 * to get stable temperature.
                 * see "Usage Notes" on datasheet
                 */
-               udelay(300);
+               usleep_range(300, 400);
 
                new = rcar_thermal_read(priv, THSSR) & CTEMP;
                if (new == old) {