All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Chris Wilson <chris@chris-wilson.co.uk>,
	"Gore, Tim" <tim.gore@intel.com>,
	"Thierry, Michel" <michel.thierry@intel.com>,
	"intel-gfx@lists.freedesktop.org"
	<intel-gfx@lists.freedesktop.org>
Subject: Re: [PATCH v2] drm/i915:bxt: implement WaProgramL3SqcReg1DefaultForPerf
Date: Wed, 20 Apr 2016 21:31:57 +0300	[thread overview]
Message-ID: <20160420183157.GF4329@intel.com> (raw)
In-Reply-To: <20160420181932.GI17454@nuc-i3427.alporthouse.com>

On Wed, Apr 20, 2016 at 07:19:32PM +0100, Chris Wilson wrote:
> On Wed, Apr 20, 2016 at 03:51:49PM +0000, Gore, Tim wrote:
> > 
> > Tim Gore 
> > Intel Corporation (UK) Ltd. - Co. Reg. #1134945 - Pipers Way, Swindon SN3 1RJ
> > 
> > 
> > > -----Original Message-----
> > > From: Thierry, Michel
> > > Sent: Wednesday, April 20, 2016 4:00 PM
> > > To: Gore, Tim; intel-gfx@lists.freedesktop.org
> > > Subject: Re: [PATCH v2] drm/i915:bxt: implement
> > > WaProgramL3SqcReg1DefaultForPerf
> > > 
> > > On 4/20/2016 3:23 PM, tim.gore@intel.com wrote:
> > > > From: Tim Gore <tim.gore@intel.com>
> > > >
> > > > This patch applies a performance enhancement workaround based on
> > > > analysis of DX and OCL S-Curve workloads.
> > > >
> > > > v2: Only apply to B0 onwards
> > > >
> > > > Signed-off-by: Tim Gore <tim.gore@intel.com>
> > > > ---
> > > >   drivers/gpu/drm/i915/i915_reg.h | 1 +
> > > >   drivers/gpu/drm/i915/intel_pm.c | 4 ++++
> > > >   2 files changed, 5 insertions(+)
> > > >
> > > > diff --git a/drivers/gpu/drm/i915/i915_reg.h
> > > > b/drivers/gpu/drm/i915/i915_reg.h index f0a6d85..13e154a 100644
> > > > --- a/drivers/gpu/drm/i915/i915_reg.h
> > > > +++ b/drivers/gpu/drm/i915/i915_reg.h
> > > > @@ -6074,6 +6074,7 @@ enum skl_disp_power_wells {
> > > >
> > > >   #define GEN8_L3SQCREG1				_MMIO(0xB100)
> > > >   #define  BDW_WA_L3SQCREG1_DEFAULT		0x784000
> > > > +#define  BXT_WA_L3SQCREG1_DEFAULT		0xF84000
> > > >
> > > >   #define GEN7_L3CNTLREG1				_MMIO(0xB01C)
> > > >   #define  GEN7_WA_FOR_GEN7_L3_CONTROL
> > > 	0x3C47FF8C
> > > > diff --git a/drivers/gpu/drm/i915/intel_pm.c
> > > > b/drivers/gpu/drm/i915/intel_pm.c index b7c2186..eecdc3a6 100644
> > > > --- a/drivers/gpu/drm/i915/intel_pm.c
> > > > +++ b/drivers/gpu/drm/i915/intel_pm.c
> > > > @@ -76,6 +76,10 @@ static void bxt_init_clock_gating(struct drm_device
> > > *dev)
> > > >   	if (IS_BXT_REVID(dev_priv, BXT_REVID_B0, REVID_FOREVER))
> > > >   		I915_WRITE(GEN9_CLKGATE_DIS_0,
> > > I915_READ(GEN9_CLKGATE_DIS_0) |
> > > >   			   PWM1_GATING_DIS | PWM2_GATING_DIS);
> > > > +
> > > > +	/* WaProgramL3SqcReg1DefaultForPerf:bxt */
> > > > +	if (IS_BXT_REVID(dev, BXT_REVID_B0, REVID_FOREVER))
> > > > +		I915_WRITE(GEN8_L3SQCREG1,
> > > BXT_WA_L3SQCREG1_DEFAULT);
> > > >   }
> > > >
> > > >   static void i915_pineview_get_mem_freq(struct drm_device *dev)
> > > >
> > > 
> > > Isnt it better to add this to bxt_init_workarounds() instead of
> > > bxt_init_clock_gating()?
> > 
> > There is an equivalent Wa for bdw in bdw_init_clock_gating, so I just tried to
> > stay consistent with that. I'm not sure if this W/a will persist across
> > suspend/resume. bxt_init_workarounds only gets called after reset, not
> > on resume as far as I know. I'll investigate further
> 
> init_clock_gating() is called on init/reset/resume. Use it to set global
> registers. (Once upon a time it did only setup the clock gatings...)

It's not called on reset. Or at least that was the case last time I
looked. Which is a rather big problem. My old idea was that we'd move
anything that gets clobbered by a GPU reset out from init_clock_gating
into some more suitable place that does get called on reset.

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2016-04-20 18:32 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-20 14:23 [PATCH v2] drm/i915:bxt: implement WaProgramL3SqcReg1DefaultForPerf tim.gore
2016-04-20 15:00 ` Michel Thierry
2016-04-20 15:51   ` Gore, Tim
2016-04-20 18:19     ` Chris Wilson
2016-04-20 18:31       ` Ville Syrjälä [this message]
2016-04-20 18:47         ` Chris Wilson
2016-04-21  8:19           ` Gore, Tim
2016-04-21  9:16             ` Daniel Vetter
2016-04-21  9:15           ` Daniel Vetter
2016-04-21 12:40 ` ✗ Fi.CI.BAT: failure for drm/i915:bxt: implement WaProgramL3SqcReg1DefaultForPerf (rev2) Patchwork

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=20160420183157.GF4329@intel.com \
    --to=ville.syrjala@linux.intel.com \
    --cc=chris@chris-wilson.co.uk \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=michel.thierry@intel.com \
    --cc=tim.gore@intel.com \
    /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.