From patchwork Fri Jun 19 06:17:55 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mikko Rapeli X-Patchwork-Id: 6644271 Return-Path: X-Original-To: patchwork-dri-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 0E4C5C0020 for ; Fri, 19 Jun 2015 10:57:20 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 2D32B20932 for ; Fri, 19 Jun 2015 10:57:19 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id BC68320935 for ; Fri, 19 Jun 2015 10:57:17 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id F2ECF6E2B5; Fri, 19 Jun 2015 03:57:16 -0700 (PDT) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail.kapsi.fi (mail.kapsi.fi [217.30.184.167]) by gabe.freedesktop.org (Postfix) with ESMTP id E82D96EE95 for ; Thu, 18 Jun 2015 23:18:56 -0700 (PDT) Received: from hsi-kbw-046-005-253-124.hsi8.kabel-badenwuerttemberg.de ([46.5.253.124] helo=localhost.localdomain) by mail.kapsi.fi with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA256:128) (Exim 4.80) (envelope-from ) id 1Z5pdU-0002OR-I2; Fri, 19 Jun 2015 09:18:44 +0300 From: Mikko Rapeli To: linux-kernel@vger.kernel.org, imre.deak@intel.com Subject: [PATCH] drm/i915: enable BIOS hang workaround for Lenovo T60 too Date: Fri, 19 Jun 2015 08:17:55 +0200 Message-Id: <1434694676-2039-1-git-send-email-mikko.rapeli@iki.fi> X-Mailer: git-send-email 2.1.4 X-SA-Exim-Connect-IP: 46.5.253.124 X-SA-Exim-Mail-From: mikko.rapeli@iki.fi X-SA-Exim-Scanned: No (on mail.kapsi.fi); SAEximRunCond expanded to false X-Mailman-Approved-At: Fri, 19 Jun 2015 03:57:13 -0700 Cc: Mikko Rapeli , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, Daniel Vetter X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Spam-Status: No, score=-4.5 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP When trying to hibernate a Lenovo T60 the half moon led keeps blinking and devices does not power off since commit da2bc1b9db3. T60 chip details: 00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GM L Express Integrated Graphics Controller (rev 03) (prog-if 00 [VGA controller]) Subsystem: Lenovo ThinkPad R60/T60/X60 series Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Step ping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- SERR- [disabled] Capabilities: [90] MSI: Enable- Count=1/1 Maskable- 64bit- Address: 00000000 Data: 0000 Capabilities: [d0] Power Management version 2 Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Kernel driver in use: i915 Signed-off-by: Mikko Rapeli --- drivers/gpu/drm/i915/i915_drv.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index ec4d932..36e311e 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c @@ -641,11 +641,12 @@ static int i915_drm_suspend_late(struct drm_device *drm_dev, bool hibernation) * the device even though it's already in D3 and hang the machine. So * leave the device in D0 on those platforms and hope the BIOS will * power down the device properly. Platforms where this was seen: - * Lenovo Thinkpad X301, X61s + * Lenovo Thinkpad X301, X61s, T60 */ if (!(hibernation && drm_dev->pdev->subsystem_vendor == PCI_VENDOR_ID_LENOVO && - INTEL_INFO(dev_priv)->gen == 4)) + ((INTEL_INFO(dev_priv)->gen == 3) || + (INTEL_INFO(dev_priv)->gen == 4))) pci_set_power_state(drm_dev->pdev, PCI_D3hot); return 0;