From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: [PATCH 06/19] drm/i915: do adapter power state notification at runtime PM Date: Wed, 27 Nov 2013 18:13:44 -0200 Message-ID: <1385583224-2593-1-git-send-email-przanoni@gmail.com> References: <20131121161427.GI9515@nuc-i3427.alporthouse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail-qe0-f49.google.com (mail-qe0-f49.google.com [209.85.128.49]) by gabe.freedesktop.org (Postfix) with ESMTP id DA8AAFB6D0 for ; Wed, 27 Nov 2013 12:13:56 -0800 (PST) Received: by mail-qe0-f49.google.com with SMTP id w7so7994755qeb.36 for ; Wed, 27 Nov 2013 12:13:56 -0800 (PST) In-Reply-To: <20131121161427.GI9515@nuc-i3427.alporthouse.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces@lists.freedesktop.org Errors-To: intel-gfx-bounces@lists.freedesktop.org To: intel-gfx@lists.freedesktop.org Cc: Jani Nikula , Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org From: Paulo Zanoni Now that we are actually setting the device to the D3 state, we should issue the notification. The opregion spec says we should send the message before the adapter is about to be placed in a lower power state, and after the adapter is placed in a higher power state. Jani originally wrote a similar patch for PC8, but then we discovered that we were not really changing the PCI D states when enabling/disabling PC8, so we had to postpone his patch. v2: - Improve commit message, explaining the expected state. Cc: Jani Nikula Credits-to: Jani Nikula Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/i915_drv.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index d5310a0..6b92929 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c @@ -918,6 +918,7 @@ static int i915_runtime_suspend(struct device *device) dev_priv->pm.suspended = true; + intel_opregion_notify_adapter(dev, PCI_D3cold); pci_save_state(pdev); pci_set_power_state(pdev, PCI_D3cold); @@ -936,6 +937,7 @@ static int i915_runtime_resume(struct device *device) pci_set_power_state(pdev, PCI_D0); pci_restore_state(pdev); + intel_opregion_notify_adapter(dev, PCI_D0); dev_priv->pm.suspended = false; -- 1.8.3.1