Commit f3f2f54e authored by Martin Peres's avatar Martin Peres Committed by Ben Skeggs

drm/nv04/pm: recalibrate timer on nvclk changes

Signed-off-by: default avatarMartin Peres <martin.peres@ensi-bourges.fr>
Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 591b06d7
...@@ -68,6 +68,7 @@ void ...@@ -68,6 +68,7 @@ void
nv04_pm_clock_set(struct drm_device *dev, void *pre_state) nv04_pm_clock_set(struct drm_device *dev, void *pre_state)
{ {
struct drm_nouveau_private *dev_priv = dev->dev_private; struct drm_nouveau_private *dev_priv = dev->dev_private;
struct nouveau_timer_engine *ptimer = &dev_priv->engine.timer;
struct nv04_pm_state *state = pre_state; struct nv04_pm_state *state = pre_state;
u32 reg = state->pll.reg; u32 reg = state->pll.reg;
...@@ -85,6 +86,9 @@ nv04_pm_clock_set(struct drm_device *dev, void *pre_state) ...@@ -85,6 +86,9 @@ nv04_pm_clock_set(struct drm_device *dev, void *pre_state)
nv_mask(dev, 0x1002c0, 0, 1 << 8); nv_mask(dev, 0x1002c0, 0, 1 << 8);
} }
if (reg == NV_PRAMDAC_NVPLL_COEFF)
ptimer->init(dev);
kfree(state); kfree(state);
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment