From patchwork Mon Mar 1 16:37:04 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chase Douglas X-Patchwork-Id: 46566 X-Patchwork-Delegate: apw@canonical.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from chlorine.canonical.com (chlorine.canonical.com [91.189.94.204]) by ozlabs.org (Postfix) with ESMTP id 27E03B7DA4 for ; Tue, 2 Mar 2010 03:37:36 +1100 (EST) Received: from localhost ([127.0.0.1] helo=chlorine.canonical.com) by chlorine.canonical.com with esmtp (Exim 4.69) (envelope-from ) id 1Nm8cd-0005kC-Gm; Mon, 01 Mar 2010 16:37:31 +0000 Received: from adelie.canonical.com ([91.189.90.139]) by chlorine.canonical.com with esmtp (Exim 4.69) (envelope-from ) id 1Nm8cb-0005jY-2n for kernel-team@lists.ubuntu.com; Mon, 01 Mar 2010 16:37:29 +0000 Received: from hutte.canonical.com ([91.189.90.181]) by adelie.canonical.com with esmtp (Exim 4.69 #1 (Debian)) id 1Nm8cb-0008Gu-1F for ; Mon, 01 Mar 2010 16:37:29 +0000 Received: from cpe-75-180-27-10.columbus.res.rr.com ([75.180.27.10] helo=canonical.com) by hutte.canonical.com with esmtpsa (TLS-1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.69) (envelope-from ) id 1Nm8ca-000730-LV for kernel-team@lists.ubuntu.com; Mon, 01 Mar 2010 16:37:29 +0000 From: Chase Douglas To: kernel-team@lists.ubuntu.com Subject: [PATCH 1/1] drm/i915: don't change DRM configuration when releasing load detect pipe Date: Mon, 1 Mar 2010 11:37:04 -0500 Message-Id: <1267461424-18470-2-git-send-email-chase.douglas@canonical.com> X-Mailer: git-send-email 1.6.3.3 In-Reply-To: <1267461424-18470-1-git-send-email-chase.douglas@canonical.com> References: <1267461424-18470-1-git-send-email-chase.douglas@canonical.com> X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.9 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: kernel-team-bounces@lists.ubuntu.com Errors-To: kernel-team-bounces@lists.ubuntu.com From: Jesse Barnes When we get a CRTC to use for load detection, we restore its DPMS state if needed. We shouldn't, however, change the DRM configuration by calling drm_helper_disable_unused_functions when we release the CRTC. Doing so can cause problems with resume, since at suspend or lid close time, X may choose to probe outputs. If it doesn't re-probe them at open or resume time, LVDS won't be restored, since drm_helper_disable_unused_functions will have turned it off, preventing the mode set at lid open from restoring it. Fixes kernel bz #14997. BugLink: http://bugs.launchpad.net/bugs/488328 Cc: stable at kernel.org Tested-by: Takashi Iwai Tested-by: Thorsten Leemhuis Signed-off-by: Jesse Barnes Signed-off-by: Chase Douglas --- drivers/gpu/drm/i915/intel_display.c | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index b00a1aa..0e4af08 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -3619,7 +3619,6 @@ struct drm_crtc *intel_get_load_detect_pipe(struct intel_output *intel_output, void intel_release_load_detect_pipe(struct intel_output *intel_output, int dpms_mode) { struct drm_encoder *encoder = &intel_output->enc; - struct drm_device *dev = encoder->dev; struct drm_crtc *crtc = encoder->crtc; struct drm_encoder_helper_funcs *encoder_funcs = encoder->helper_private; struct drm_crtc_helper_funcs *crtc_funcs = crtc->helper_private; @@ -3629,7 +3628,6 @@ void intel_release_load_detect_pipe(struct intel_output *intel_output, int dpms_ intel_output->base.encoder = NULL; intel_output->load_detect_temp = false; crtc->enabled = drm_helper_crtc_in_use(crtc); - drm_helper_disable_unused_functions(dev); } /* Switch crtc and output back off if necessary */