Message ID | 1460633942-24013-1-git-send-email-ville.syrjala@linux.intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Thu, Apr 14, 2016 at 02:39:02PM +0300, ville.syrjala@linux.intel.com wrote: > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > HSW still has the wake FIFO, so let's check it. > > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> > Cc: Deepak S <deepak.s@linux.intel.com> > Fixes: 05a2fb157e44 ("drm/i915: Consolidate forcewake code") > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Oh and I guess we might want Cc: stable@vger.kernel.org > --- > drivers/gpu/drm/i915/intel_uncore.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c > index 4db21ef36b16..4f1dfe616856 100644 > --- a/drivers/gpu/drm/i915/intel_uncore.c > +++ b/drivers/gpu/drm/i915/intel_uncore.c > @@ -1265,7 +1265,11 @@ static void intel_uncore_fw_domains_init(struct drm_device *dev) > } else if (IS_HASWELL(dev) || IS_BROADWELL(dev)) { > dev_priv->uncore.funcs.force_wake_get = > fw_domains_get_with_thread_status; > - dev_priv->uncore.funcs.force_wake_put = fw_domains_put; > + if (IS_HASWELL(dev)) > + dev_priv->uncore.funcs.force_wake_put = > + fw_domains_put_with_fifo; > + else > + dev_priv->uncore.funcs.force_wake_put = fw_domains_put; > fw_domain_init(dev_priv, FW_DOMAIN_ID_RENDER, > FORCEWAKE_MT, FORCEWAKE_ACK_HSW); > } else if (IS_IVYBRIDGE(dev)) { > -- > 2.7.4
ville.syrjala@linux.intel.com writes: > [ text/plain ] > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > HSW still has the wake FIFO, so let's check it. > > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> > Cc: Deepak S <deepak.s@linux.intel.com> > Fixes: 05a2fb157e44 ("drm/i915: Consolidate forcewake code") > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com> > --- > drivers/gpu/drm/i915/intel_uncore.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c > index 4db21ef36b16..4f1dfe616856 100644 > --- a/drivers/gpu/drm/i915/intel_uncore.c > +++ b/drivers/gpu/drm/i915/intel_uncore.c > @@ -1265,7 +1265,11 @@ static void intel_uncore_fw_domains_init(struct drm_device *dev) > } else if (IS_HASWELL(dev) || IS_BROADWELL(dev)) { > dev_priv->uncore.funcs.force_wake_get = > fw_domains_get_with_thread_status; > - dev_priv->uncore.funcs.force_wake_put = fw_domains_put; > + if (IS_HASWELL(dev)) > + dev_priv->uncore.funcs.force_wake_put = > + fw_domains_put_with_fifo; > + else > + dev_priv->uncore.funcs.force_wake_put = fw_domains_put; > fw_domain_init(dev_priv, FW_DOMAIN_ID_RENDER, > FORCEWAKE_MT, FORCEWAKE_ACK_HSW); > } else if (IS_IVYBRIDGE(dev)) { > -- > 2.7.4
On Thu, Apr 14, 2016 at 02:51:02PM +0300, Mika Kuoppala wrote: > ville.syrjala@linux.intel.com writes: > > > [ text/plain ] > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > > > HSW still has the wake FIFO, so let's check it. > > > > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> > > Cc: Deepak S <deepak.s@linux.intel.com> > > Fixes: 05a2fb157e44 ("drm/i915: Consolidate forcewake code") > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com> Oh my. This could help explain some of the instablity on Haswell... Cc: stable@vger.kernel.org Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> -Chris
On Thu, Apr 14, 2016 at 02:51:02PM +0300, Mika Kuoppala wrote: > ville.syrjala@linux.intel.com writes: > > > [ text/plain ] > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > > > HSW still has the wake FIFO, so let's check it. > > > > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> > > Cc: Deepak S <deepak.s@linux.intel.com> > > Fixes: 05a2fb157e44 ("drm/i915: Consolidate forcewake code") > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com> Pushed to dinq. Thanks for the review. > > > --- > > drivers/gpu/drm/i915/intel_uncore.c | 6 +++++- > > 1 file changed, 5 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c > > index 4db21ef36b16..4f1dfe616856 100644 > > --- a/drivers/gpu/drm/i915/intel_uncore.c > > +++ b/drivers/gpu/drm/i915/intel_uncore.c > > @@ -1265,7 +1265,11 @@ static void intel_uncore_fw_domains_init(struct drm_device *dev) > > } else if (IS_HASWELL(dev) || IS_BROADWELL(dev)) { > > dev_priv->uncore.funcs.force_wake_get = > > fw_domains_get_with_thread_status; > > - dev_priv->uncore.funcs.force_wake_put = fw_domains_put; > > + if (IS_HASWELL(dev)) > > + dev_priv->uncore.funcs.force_wake_put = > > + fw_domains_put_with_fifo; > > + else > > + dev_priv->uncore.funcs.force_wake_put = fw_domains_put; > > fw_domain_init(dev_priv, FW_DOMAIN_ID_RENDER, > > FORCEWAKE_MT, FORCEWAKE_ACK_HSW); > > } else if (IS_IVYBRIDGE(dev)) { > > -- > > 2.7.4
diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c index 4db21ef36b16..4f1dfe616856 100644 --- a/drivers/gpu/drm/i915/intel_uncore.c +++ b/drivers/gpu/drm/i915/intel_uncore.c @@ -1265,7 +1265,11 @@ static void intel_uncore_fw_domains_init(struct drm_device *dev) } else if (IS_HASWELL(dev) || IS_BROADWELL(dev)) { dev_priv->uncore.funcs.force_wake_get = fw_domains_get_with_thread_status; - dev_priv->uncore.funcs.force_wake_put = fw_domains_put; + if (IS_HASWELL(dev)) + dev_priv->uncore.funcs.force_wake_put = + fw_domains_put_with_fifo; + else + dev_priv->uncore.funcs.force_wake_put = fw_domains_put; fw_domain_init(dev_priv, FW_DOMAIN_ID_RENDER, FORCEWAKE_MT, FORCEWAKE_ACK_HSW); } else if (IS_IVYBRIDGE(dev)) {