summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2014-08-18 12:41:57 +1000
committerBen Skeggs <bskeggs@redhat.com>2014-09-15 22:24:58 +1000
commita2410f5a0fcb6326fe8da41a4e8dcdc116436c74 (patch)
tree34d8eabe99d9938a68116222c5a291ea261c3aef /drivers/gpu/drm
parent4417be553c348540ec2c8acd423af2ec8e87cde5 (diff)
downloadop-kernel-dev-a2410f5a0fcb6326fe8da41a4e8dcdc116436c74.zip
op-kernel-dev-a2410f5a0fcb6326fe8da41a4e8dcdc116436c74.tar.gz
drm/nouveau/pwr: wait for scrubbers to finish before uploading new ucode
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r--drivers/gpu/drm/nouveau/core/subdev/pwr/base.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/gpu/drm/nouveau/core/subdev/pwr/base.c b/drivers/gpu/drm/nouveau/core/subdev/pwr/base.c
index 477c9a2..0ab55f2 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/pwr/base.c
+++ b/drivers/gpu/drm/nouveau/core/subdev/pwr/base.c
@@ -203,9 +203,8 @@ _nouveau_pwr_init(struct nouveau_object *object)
nv_wait(ppwr, 0x10a04c, 0xffffffff, 0x00000000);
nv_mask(ppwr, 0x000200, 0x00002000, 0x00000000);
nv_mask(ppwr, 0x000200, 0x00002000, 0x00002000);
-
- /* At least one GM107 needs this delay after reset */
- udelay(20);
+ nv_rd32(ppwr, 0x000200);
+ nv_wait(ppwr, 0x10a10c, 0x00000006, 0x00000000);
/* upload data segment */
nv_wr32(ppwr, 0x10a1c0, 0x01000000);
OpenPOWER on IntegriCloud