From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: [PATCH 12/19] drm/i915: extract ibx_irq_uninstall Date: Wed, 22 Jan 2014 17:52:30 -0200 Message-ID: <1390420357-23669-13-git-send-email-przanoni@gmail.com> References: <1390420357-23669-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-yk0-f169.google.com (mail-yk0-f169.google.com [209.85.160.169]) by gabe.freedesktop.org (Postfix) with ESMTP id E16F51059D9 for ; Wed, 22 Jan 2014 11:53:32 -0800 (PST) Received: by mail-yk0-f169.google.com with SMTP id q9so1092055ykb.0 for ; Wed, 22 Jan 2014 11:53:32 -0800 (PST) In-Reply-To: <1390420357-23669-1-git-send-email-przanoni@gmail.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: Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org From: Paulo Zanoni Just like ibx_irq_preinstall. We'll call this from somewhere else in the next patch. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/i915_irq.c | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c index 175d592..128dbbc 100644 --- a/drivers/gpu/drm/i915/i915_irq.c +++ b/drivers/gpu/drm/i915/i915_irq.c @@ -2676,7 +2676,6 @@ static void ironlake_irq_preinstall(struct drm_device *dev) I915_WRITE(HWSTAM, 0xeffe); GEN5_IRQ_RESET(DE); - if (IS_GEN7(dev)) I915_WRITE(GEN7_ERR_INT, 0xffffffff); @@ -2992,6 +2991,19 @@ static int gen8_irq_postinstall(struct drm_device *dev) return 0; } +static void ibx_irq_uninstall(struct drm_device *dev) +{ + struct drm_i915_private *dev_priv = dev->dev_private; + + if (HAS_PCH_NOP(dev)) + return; + + GEN5_IRQ_RESET(SDE); + + if (HAS_PCH_CPT(dev) || HAS_PCH_LPT(dev)) + I915_WRITE(SERR_INT, 0xffffffff); +} + static void gen8_irq_uninstall(struct drm_device *dev) { struct drm_i915_private *dev_priv = dev->dev_private; @@ -3058,12 +3070,7 @@ static void ironlake_irq_uninstall(struct drm_device *dev) gen5_gt_irq_reset(dev); - if (HAS_PCH_NOP(dev)) - return; - - GEN5_IRQ_RESET(SDE); - if (HAS_PCH_CPT(dev) || HAS_PCH_LPT(dev)) - I915_WRITE(SERR_INT, 0xffffffff); + ibx_irq_uninstall(dev); } static void i8xx_irq_preinstall(struct drm_device * dev) -- 1.8.4.2