From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jesse Barnes Subject: Re: [PATCH] drm/i915: initialize gen6 rps work queue for Ironlake+ Date: Wed, 18 May 2011 13:51:43 -0700 Message-ID: <20110518135143.503d78ba@jbarnes-desktop> References: <20110518092107.36dfeecd@jbarnes-desktop> <4DD3F5DC.904@freedesktop.org> <20110518102227.55d69f59@jbarnes-desktop> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from oproxy6-pub.bluehost.com (oproxy6-pub.bluehost.com [67.222.54.6]) by gabe.freedesktop.org (Postfix) with SMTP id 532F69F03E for ; Wed, 18 May 2011 13:51:56 -0700 (PDT) In-Reply-To: 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: Keith Packard Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org On Wed, 18 May 2011 13:42:54 -0700 Keith Packard wrote: > On Wed, 18 May 2011 10:22:27 -0700, Jesse Barnes wrote: > > > The work queue is only used on gen6, but gen6 and ilk share an irq > > handler. I could make the work queue init conditional on gen6 though, > > if that's what you're thinking. > > Probably a good idea, mostly as documentation for which chips it is used > on? Here you go. Jesse >>From e0f3a48a7ef22cc8dc5c3c0a05756f7bce46d68c Mon Sep 17 00:00:00 2001 From: Jesse Barnes Date: Wed, 18 May 2011 13:49:41 -0700 Subject: [PATCH] drm/i915: initialize gen6 rps work queue on Sandy Bridge and Ivy Bridge It's not used on Ironlake, but is used on later generations, so make sure it exists before we try to use it in the interrupt handlers. Signed-off-by: Jesse Barnes --- drivers/gpu/drm/i915/i915_irq.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c index 349a03e..b79619a 100644 --- a/drivers/gpu/drm/i915/i915_irq.c +++ b/drivers/gpu/drm/i915/i915_irq.c @@ -1736,6 +1736,8 @@ void ironlake_irq_preinstall(struct drm_device *dev) INIT_WORK(&dev_priv->hotplug_work, i915_hotplug_work_func); INIT_WORK(&dev_priv->error_work, i915_error_work_func); + if (IS_GEN6(dev) || IS_IVYBRIDGE(dev)) + INIT_WORK(&dev_priv->rps_work, gen6_pm_rps_work); I915_WRITE(HWSTAM, 0xeffe); @@ -1887,7 +1889,6 @@ void i915_driver_irq_preinstall(struct drm_device * dev) INIT_WORK(&dev_priv->hotplug_work, i915_hotplug_work_func); INIT_WORK(&dev_priv->error_work, i915_error_work_func); - INIT_WORK(&dev_priv->rps_work, gen6_pm_rps_work); if (I915_HAS_HOTPLUG(dev)) { I915_WRITE(PORT_HOTPLUG_EN, 0); -- 1.7.4.1