On Tue, 11 Dec 2012 12:01:43 +0000 Chris Wilson <chris at chris-wilson.co.uk> wrote: > It operates at twice the declared latency, so double the latency value > used for the cursor watermark calculation. > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50248 > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk> > CC: Jesse Barnes <jbarnes at virtuousgeek.org> > --- > drivers/gpu/drm/i915/intel_pm.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c > index 1e61f5e..20daf58 100644 > --- a/drivers/gpu/drm/i915/intel_pm.c > +++ b/drivers/gpu/drm/i915/intel_pm.c > @@ -1289,6 +1289,7 @@ static void valleyview_update_wm(struct drm_device *dev) > struct drm_i915_private *dev_priv = dev->dev_private; > int planea_wm, planeb_wm, cursora_wm, cursorb_wm; > int plane_sr, cursor_sr; > + int ignore_plane_sr, ignore_cursor_sr; > unsigned int enabled = 0; > > vlv_update_drain_latency(dev); > @@ -1311,7 +1312,12 @@ static void valleyview_update_wm(struct drm_device *dev) > sr_latency_ns, > &valleyview_wm_info, > &valleyview_cursor_wm_info, > - &plane_sr, &cursor_sr)) > + &plane_sr, &ignore_cursor_sr) && > + g4x_compute_srwm(dev, ffs(enabled) - 1, > + 2*sr_latency_ns, > + &valleyview_wm_info, > + &valleyview_cursor_wm_info, > + &ignore_plane_sr, &cursor_sr)) > I915_WRITE(FW_BLC_SELF_VLV, FW_CSPWRDWNEN); > else > I915_WRITE(FW_BLC_SELF_VLV, Reviewed-by: Jesse Barnes <jbarnes at virtuousgeek.org> Probably need to add a comment in here somewhere, along the lines of "watch out for minotaurs" or "bring string". -- Jesse Barnes, Intel Open Source Technology Center