Re: [PATCH v2 03/20] drm/i915: Fix noatomic crtc disabling.

Patrik Jakobsson
2015-07-07T12:39:32Z

On Tue, Jul 07, 2015 at 12:22:12PM +0200, Maarten Lankhorst wrote:
> Op 07-07-15 om 11:18 schreef Daniel Vetter:
> > On Tue, Jul 07, 2015 at 09:08:14AM +0200, Maarten Lankhorst wrote:
> >> This should fix suspend on newer platforms.
> > Which patch broke this? Also what is "newer platform" and what exactly got
> > fixed? Please elaborate a bit more in your commit messages, they're too
> > terse.
> There were a lot of warnings about active mismatches and power well not being idle on suspend.
>
> This should fix the power well by disabling the shared dpll and unsetting crtc->active.

This got broken by:

commit eddfcbcdc27fbecb33bff098967bbdd7ca75bfa6
Author: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Date: Mon Jun 15 12:33:53 2015 +0200

drm/i915: Update less state during modeset.

No need to repeatedly call update_watermarks, or update_fbc.
Down to a single call to update_watermarks in .crtc_enable

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Tested-by(IVB): Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>

Unfortunately the patch doesn't fix the CAT_ERR on resume I'm experiencing on
SKL. An additional intel_update_watermarks() is needed to set DDB back to 0,0.
Also this is required in *_crtc_disable() since we forget to do the same thing
there. Not sure we also need to take care of disabling fbc at these places?

-Patrik