From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mblankhorst.nl ([141.105.120.124]:37798 "EHLO mblankhorst.nl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751774AbbJVL4l (ORCPT ); Thu, 22 Oct 2015 07:56:41 -0400 From: Maarten Lankhorst To: intel-gfx@lists.freedesktop.org Cc: Maarten Lankhorst , stable@vger.kernel.org, Matt Roper Subject: [PATCH 10/11] drm/i915/skl: Update watermarks before the crtc is disabled. Date: Thu, 22 Oct 2015 13:56:35 +0200 Message-Id: <1445514996-18733-11-git-send-email-maarten.lankhorst@linux.intel.com> In-Reply-To: <1445514996-18733-1-git-send-email-maarten.lankhorst@linux.intel.com> References: <1445514996-18733-1-git-send-email-maarten.lankhorst@linux.intel.com> Sender: stable-owner@vger.kernel.org List-ID: On skylake some of the registers are only writable when the correct power wells are enabled. Because of this watermarks have to be updated before the crtc turns off, or you get unclaimed register read and write warnings. This patch needs to be modified slightly to apply to -fixes. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92181 Signed-off-by: Maarten Lankhorst Cc: stable@vger.kernel.org Cc: Matt Roper --- drivers/gpu/drm/i915/intel_display.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 6f92ccf2461c..26931d8eb7ce 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -4761,7 +4761,7 @@ static void intel_post_plane_update(struct intel_crtc_state *old_crtc_state) crtc->wm.cxsr_allowed = true; - if (pipe_config->wm_changed) + if (pipe_config->wm_changed && pipe_config->base.active) intel_update_watermarks(&crtc->base); for_each_plane_in_state(old_state, plane, old_plane_state, i) { @@ -13205,6 +13205,9 @@ static int intel_atomic_commit(struct drm_device *dev, dev_priv->display.crtc_disable(crtc); intel_crtc->active = false; intel_disable_shared_dpll(intel_crtc); + + if (!crtc->state->active) + intel_update_watermarks(crtc); } } -- 2.1.0