Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757172AbcDDXgX (ORCPT ); Mon, 4 Apr 2016 19:36:23 -0400 Received: from mx1.redhat.com ([209.132.183.28]:38929 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756966AbcDDXf7 (ORCPT ); Mon, 4 Apr 2016 19:35:59 -0400 From: Lyude To: intel-gfx@lists.freedesktop.org Cc: Rob Clark , Lyude , Daniel Vetter , Jani Nikula , David Airlie , dri-devel@lists.freedesktop.org (open list:INTEL DRM DRIVERS (excluding Poulsbo, Moorestow...), linux-kernel@vger.kernel.org (open list)) Subject: [PATCH] drm/i915/skl: Disable underrun reporting on MST unplug Date: Mon, 4 Apr 2016 19:35:42 -0400 Message-Id: <1459812942-21728-1-git-send-email-cpaul@redhat.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1306 Lines: 37 Unplugging MST displays usually causes underruns, so turn off underrun reporting so people don't report false positives. Signed-off-by: Lyude --- drivers/gpu/drm/i915/intel_display.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 6e0d828..fa8a72b 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -5146,6 +5146,10 @@ static void haswell_crtc_disable(struct drm_crtc *crtc) if (intel_crtc->config->has_pch_encoder) intel_set_pch_fifo_underrun_reporting(dev_priv, TRANSCODER_A, false); + else if (intel_crtc->config->dp_encoder_is_mst) + intel_set_cpu_fifo_underrun_reporting(dev_priv, + intel_crtc->pipe, false); + for_each_encoder_on_crtc(dev, crtc, encoder) { intel_opregion_notify_encoder(encoder, false); @@ -5182,7 +5186,10 @@ static void haswell_crtc_disable(struct drm_crtc *crtc) intel_set_pch_fifo_underrun_reporting(dev_priv, TRANSCODER_A, true); - } + } else if (intel_crtc->config->dp_encoder_is_mst) + intel_set_cpu_fifo_underrun_reporting(dev_priv, + intel_crtc->pipe, true); + } static void i9xx_pfit_enable(struct intel_crtc *crtc) -- 2.5.5