From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: [PATCH 4/6] drm/i915: initialize the Haswell SRD interrupts Date: Wed, 5 Jun 2013 14:21:54 -0300 Message-ID: <1370452916-3406-5-git-send-email-przanoni@gmail.com> References: <1370452916-3406-1-git-send-email-przanoni@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail-gh0-f171.google.com (mail-gh0-f171.google.com [209.85.160.171]) by gabe.freedesktop.org (Postfix) with ESMTP id 91DB5E62A1 for ; Wed, 5 Jun 2013 10:22:27 -0700 (PDT) Received: by mail-gh0-f171.google.com with SMTP id f15so195039ghb.2 for ; Wed, 05 Jun 2013 10:22:27 -0700 (PDT) In-Reply-To: <1370452916-3406-1-git-send-email-przanoni@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org To: intel-gfx@lists.freedesktop.org Cc: Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org From: Paulo Zanoni Same reasons as the other ones: we're not using them so we don't want them, and this is a preparation for when we enable package C8+ states. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/i915_irq.c | 11 ++++++++++- drivers/gpu/drm/i915/i915_reg.h | 3 +++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c index 33f404e..c21055e 100644 --- a/drivers/gpu/drm/i915/i915_irq.c +++ b/drivers/gpu/drm/i915/i915_irq.c @@ -2548,11 +2548,14 @@ static void ivybridge_irq_preinstall(struct drm_device *dev) I915_WRITE(GEN6_PMIER, 0x0); POSTING_READ(GEN6_PMIER); - /* Audio */ + /* Audio and PSR */ if (IS_HASWELL(dev)) { I915_WRITE(AUDIMR, 0xffffffff); I915_WRITE(AUDIER, 0x0); POSTING_READ(AUDIER); + + I915_WRITE(SRDIMR, 0xffffffff); + POSTING_READ(SRDIMR); } ibx_irq_preinstall(dev); @@ -2758,6 +2761,9 @@ static int ivybridge_irq_postinstall(struct drm_device *dev) if (IS_HASWELL(dev)) { I915_WRITE(AUDIIR, I915_READ(AUDIIR)); POSTING_READ(AUDIIR); + + I915_WRITE(SRDIIR, I915_READ(SRDIIR)); + POSTING_READ(SRDIIR); } ibx_irq_postinstall(dev); @@ -2872,6 +2878,9 @@ static void ironlake_irq_uninstall(struct drm_device *dev) I915_WRITE(AUDIMR, 0xffffffff); I915_WRITE(AUDIER, 0x0); I915_WRITE(AUDIIR, I915_READ(AUDIIR)); + + I915_WRITE(SRDIMR, 0xffffffff); + I915_WRITE(SRDIIR, I915_READ(SRDIIR)); } if (HAS_PCH_NOP(dev)) diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h index d7f272a..f996e9f 100644 --- a/drivers/gpu/drm/i915/i915_reg.h +++ b/drivers/gpu/drm/i915/i915_reg.h @@ -3737,6 +3737,9 @@ #define AUDIIR 0x44088 #define AUDIER 0x4408c +#define SRDIMR 0x64834 +#define SRDIIR 0x64838 + #define ILK_DISPLAY_CHICKEN2 0x42004 /* Required on all Ironlake and Sandybridge according to the B-Spec. */ #define ILK_ELPIN_409_SELECT (1 << 25) -- 1.8.1.2