nv40_sensor_setup() is never called in atomic context.
It calls mdelay() to busily wait, which is not necessary.
mdelay() can be replaced with msleep().

This is found by a static analysis tool named DCNS written by myself

Signed-off-by: Jia-Ju Bai <baijiaju1...@gmail.com>
---
 drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv40.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv40.c 
b/drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv40.c
index 2c92ffb5f9d0..36c4b8865083 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv40.c
+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv40.c
@@ -59,11 +59,11 @@ nv40_sensor_setup(struct nvkm_therm *therm)
        if (style == NEW_STYLE) {
                nvkm_mask(device, 0x15b8, 0x80000000, 0);
                nvkm_wr32(device, 0x15b0, 0x80003fff);
-               mdelay(20); /* wait for the temperature to stabilize */
+               msleep(20); /* wait for the temperature to stabilize */
                return nvkm_rd32(device, 0x15b4) & 0x3fff;
        } else if (style == OLD_STYLE) {
                nvkm_wr32(device, 0x15b0, 0xff);
-               mdelay(20); /* wait for the temperature to stabilize */
+               msleep(20); /* wait for the temperature to stabilize */
                return nvkm_rd32(device, 0x15b4) & 0xff;
        } else
                return -ENODEV;
-- 
2.17.0

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to