summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/nouveau/nv50_pm.c
diff options
context:
space:
mode:
authorMartin Peres <martin.peres@ensi-bourges.fr>2012-01-09 15:23:10 +1000
committerBen Skeggs <bskeggs@redhat.com>2012-03-13 17:08:38 +1000
commitc57ebf5ef3588d21031f12e39131d79071269845 (patch)
treea86aaf855e14b30ca8d9ec28827826e85d70a46c /drivers/gpu/drm/nouveau/nv50_pm.c
parent496a73bbecb81e6753715995e4519d152f814667 (diff)
downloadtalos-op-linux-c57ebf5ef3588d21031f12e39131d79071269845.tar.gz
talos-op-linux-c57ebf5ef3588d21031f12e39131d79071269845.zip
drm/nv50/pm: wait for all fifo-connected engines to idle before reclocking
Signed-off-by: Martin Peres <martin.peres@labri.fr> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/nv50_pm.c')
-rw-r--r--drivers/gpu/drm/nouveau/nv50_pm.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/nv50_pm.c b/drivers/gpu/drm/nouveau/nv50_pm.c
index 0f2632638c92..e677310c8f57 100644
--- a/drivers/gpu/drm/nouveau/nv50_pm.c
+++ b/drivers/gpu/drm/nouveau/nv50_pm.c
@@ -798,6 +798,8 @@ nv50_pm_clocks_set(struct drm_device *dev, void *data)
nv_mask(dev, 0x002504, 0x00000001, 0x00000001);
if (!nv_wait(dev, 0x002504, 0x00000010, 0x00000010))
goto resume;
+ if (!nv_wait(dev, 0x00251c, 0x0000003f, 0x0000003f))
+ goto resume;
/* program memory clock, if necessary - must come before engine clock
* reprogramming due to how we construct the hwsq scripts in pre()
OpenPOWER on IntegriCloud