All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 4/7] drm/i915: Disable SF pipelined attribute fetch for SNB
Date: Sat, 8 Feb 2014 21:57:55 +0200	[thread overview]
Message-ID: <20140208195755.GE3891@intel.com> (raw)
In-Reply-To: <20140208172803.GG17001@phenom.ffwll.local>

On Sat, Feb 08, 2014 at 06:28:03PM +0100, Daniel Vetter wrote:
> On Fri, Feb 07, 2014 at 12:14:47PM -0800, Kenneth Graunke wrote:
> > On 02/04/2014 11:59 AM, ville.syrjala@linux.intel.com wrote:
> > > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > > 
> > > According to Bspec we need to disable SF pipelined attribute fetch
> > > whenever SF outputs exceed 16 and normal clip mode is used. A quick
> > > glance at Mesa suggests that these conditions could happen. So let's
> > > just always set the magic bit.
> > > 
> > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > > ---
> > >  drivers/gpu/drm/i915/i915_reg.h | 3 ++-
> > >  drivers/gpu/drm/i915/intel_pm.c | 8 ++++++++
> > >  2 files changed, 10 insertions(+), 1 deletion(-)
> > > 
> > > diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> > > index 7aa2cf5..0334507 100644
> > > --- a/drivers/gpu/drm/i915/i915_reg.h
> > > +++ b/drivers/gpu/drm/i915/i915_reg.h
> > > @@ -790,7 +790,8 @@
> > >  #define _3D_CHICKEN3	0x02090
> > >  #define  _3D_CHICKEN_SF_DISABLE_OBJEND_CULL		(1 << 10)
> > >  #define  _3D_CHICKEN3_SF_DISABLE_FASTCLIP_CULL		(1 << 5)
> > > -#define  _3D_CHICKEN_SDE_LIMIT_FIFO_POLY_DEPTH(x)	((x)<<1)
> > > +#define  _3D_CHICKEN_SDE_LIMIT_FIFO_POLY_DEPTH(x)	((x)<<1) /* gen8+ */
> > > +#define  _3D_CHICKEN3_SF_DISABLE_PIPELINED_ATTR_FETCH	(1 << 1) /* gen6 */
> > >  
> > >  #define MI_MODE		0x0209c
> > >  # define VS_TIMER_DISPATCH				(1 << 6)
> > > diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> > > index 6a09281..7247084 100644
> > > --- a/drivers/gpu/drm/i915/intel_pm.c
> > > +++ b/drivers/gpu/drm/i915/intel_pm.c
> > > @@ -4683,6 +4683,14 @@ static void gen6_init_clock_gating(struct drm_device *dev)
> > >  		   _MASKED_BIT_ENABLE(_3D_CHICKEN3_SF_DISABLE_FASTCLIP_CULL));
> > >  
> > >  	/*
> > > +	 * Bspec says:
> > > +	 * "This bit must be set if 3DSTATE_CLIP clip mode is set to normal and
> > > +	 * 3DSTATE_SF number of SF output attributes is more than 16."
> > > +	 */
> > > +	I915_WRITE(_3D_CHICKEN3,
> > > +		   _MASKED_BIT_ENABLE(_3D_CHICKEN3_SF_DISABLE_PIPELINED_ATTR_FETCH));
> > > +
> > > +	/*
> > >  	 * According to the spec the following bits should be
> > >  	 * set in order to enable memory self-refresh and fbc:
> > >  	 * The bit21 and bit22 of 0x42000
> > > 
> > 
> > I'm almost positive Mesa will hit this case.  Nice catch!
> > 
> > Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
> 
> Queued for -next, thanks for the patch. Any chance that this would apply
> to one of our leftover snb gpu hang issues?

Unfortunately BSpec doesn't say what might happen if we don't set the
bit, nor did I find anything relevant in the w/a database.

-- 
Ville Syrjälä
Intel OTC

  reply	other threads:[~2014-02-08 19:57 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-04 19:59 [PATCH 0/7] drm/i915: Some more w/a'ish stuff ville.syrjala
2014-02-04 19:59 ` [PATCH 1/7] drm/i915: Fix SNB GT_MODE register setup ville.syrjala
2014-02-04 21:23   ` Chris Wilson
2014-02-05  9:27     ` Ville Syrjälä
2014-02-05 10:06       ` Chris Wilson
2014-02-05 10:43         ` [PATCH] drm/i915: Add a comment about WIZ hashing vs. thread counts ville.syrjala
2014-02-05 10:57           ` Chris Wilson
2014-02-04 19:59 ` [PATCH 2/7] drm/i915: Assume we implement WaStripsFansDisableFastClipPerformanceFix:snb ville.syrjala
2014-02-04 19:59 ` [PATCH 3/7] drm/i915: There's no need to mask all 3D_CHICKEN bits on SNB ville.syrjala
2014-02-04 19:59 ` [PATCH 4/7] drm/i915: Disable SF pipelined attribute fetch for SNB ville.syrjala
2014-02-07 20:14   ` Kenneth Graunke
2014-02-08 17:28     ` Daniel Vetter
2014-02-08 19:57       ` Ville Syrjälä [this message]
2014-02-04 19:59 ` [PATCH 5/7] drm/i915: Change IVB WIZ hashing mode to 16x4 ville.syrjala
2014-02-04 19:59 ` [PATCH 6/7] drm/i915: Change HSW " ville.syrjala
2014-02-04 19:59 ` [PATCH 7/7] drm/i915: Change BDW " ville.syrjala
2014-02-27 14:07 ` [PATCH 0/7] drm/i915: Some more w/a'ish stuff Antti Koskipää
2014-03-04 14:40   ` Daniel Vetter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140208195755.GE3891@intel.com \
    --to=ville.syrjala@linux.intel.com \
    --cc=daniel@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.