drm/nouveau/ibus/gk20a: use udelay() in interrupt context
authorAlexandre Courbot <gnurou@gmail.com>
Wed, 6 Jul 2016 14:04:56 +0000 (23:04 +0900)
committerBen Skeggs <bskeggs@redhat.com>
Wed, 12 Oct 2016 07:29:02 +0000 (17:29 +1000)
gk20a_ibus_init_ibus_ring() can be called from gk20a_ibus_intr(), in
non-interruptible context. Replace use of usleep_range() with udelay().

Reported-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gk20a.c

index b7159b338fac06af9db9c83ca82b189d718d35b0..1a4ab825852ce2bf6649c28b8deacd9ace6f91ef 100644 (file)
@@ -29,7 +29,7 @@ gk20a_ibus_init_ibus_ring(struct nvkm_subdev *ibus)
        nvkm_mask(device, 0x137250, 0x3f, 0);
 
        nvkm_mask(device, 0x000200, 0x20, 0);
-       usleep_range(20, 30);
+       udelay(20);
        nvkm_mask(device, 0x000200, 0x20, 0x20);
 
        nvkm_wr32(device, 0x12004c, 0x4);