[PATCH] drm/xe/xe2_lpg: Add workaround 14021567978

Matt Roper matthew.d.roper at intel.com
Fri Apr 5 14:31:02 UTC 2024


On Fri, Apr 05, 2024 at 01:55:43AM -0700, Upadhyay, Tejas wrote:
> 
> 
> > -----Original Message-----
> > From: Roper, Matthew D <matthew.d.roper at intel.com>
> > Sent: Thursday, April 4, 2024 9:03 PM
> > To: Upadhyay, Tejas <tejas.upadhyay at intel.com>
> > Cc: intel-xe at lists.freedesktop.org; De Marchi, Lucas
> > <lucas.demarchi at intel.com>
> > Subject: Re: [PATCH] drm/xe/xe2_lpg: Add workaround 14021567978
> > 
> > On Thu, Apr 04, 2024 at 03:05:29PM +0530, Tejas Upadhyay wrote:
> > > Workaround 14021567978 applies to RenderCS xe2_lpg
> > 
> > This is one of those rare workarounds that's documented as not only applying
> > to the single platform that has the record in the WA database, but also
> > carrying forward to all future platforms forever (at least until they make a
> > permanent documentation change).  Since this starts with the Xe2 family in
> > general (not specific to LNL or BMG) and goes forever, it might be best to write
> > the bounds as
> 
> But this 14021567978  is only talking about xe2_lpg. Even if it applies to future platforms, we will have new WA #s for them which then we can mark with "#WA1, #WA2" and modify version range. Should not we go buy WA#s to keep track?

Not in this case.  When an item in the workaround database gets marked
with "driver_change_required" rather than the usual permanent/temporary
workaround status, it means that they don't plan to continue tracking it
on a platform-by-platform basis anymore.  Instead they're just going to
update the bspec details to make it the official "proper programming"
for all platforms going forward.

In this case the register now has a new note on the register page that
says "SW must set this bit to 1" if you view the page without any
filters.  Unfortunately they screwed up some of the tagging on that page
and the whole bit goes missing if you try to use the LNL or BMG filters
at the moment.


Matt

> 
> Thanks,
> Tejas
> > 
> >         GRAPHICS_VERSION_RANGE(2000, XE_RTP_END_VERSION_UNDEFINED);
> > 
> > Also, it's still technically considered a "workaround" due to being documented
> > in the workaround database with a lineage number, rather than a tuning
> > setting documented on bspec 72161, so we should probably keep this in
> > xe_wa.c instead of xe_tuning.c.
> > 
> > 
> > Matt
> > 
> > >
> > > Signed-off-by: Tejas Upadhyay <tejas.upadhyay at intel.com>
> > > ---
> > >  drivers/gpu/drm/xe/xe_tuning.c | 7 +++++++
> > >  1 file changed, 7 insertions(+)
> > >
> > > diff --git a/drivers/gpu/drm/xe/xe_tuning.c
> > > b/drivers/gpu/drm/xe/xe_tuning.c index bb6db2817ada..cc65e5b4353b
> > > 100644
> > > --- a/drivers/gpu/drm/xe/xe_tuning.c
> > > +++ b/drivers/gpu/drm/xe/xe_tuning.c
> > > @@ -93,6 +93,13 @@ static const struct xe_rtp_entry_sr lrc_tunings[] = {
> > >
> > REG_FIELD_PREP(L3_PWM_TIMER_INIT_VAL_MASK, 0x7f)))
> > >  	},
> > >
> > > +	/* Xe2_LPG */
> > > +
> > > +	{ XE_RTP_NAME("Tuning: TBIMR fast clip"),
> > > +	  XE_RTP_RULES(GRAPHICS_VERSION(2004),
> > ENGINE_CLASS(RENDER)),
> > > +	  XE_RTP_ACTIONS(SET(CHICKEN_RASTER_2, TBIMR_FAST_CLIP))
> > > +	},
> > > +
> > >  	{}
> > >  };
> > >
> > > --
> > > 2.25.1
> > >
> > 
> > --
> > Matt Roper
> > Graphics Software Engineer
> > Linux GPU Platform Enablement
> > Intel Corporation

-- 
Matt Roper
Graphics Software Engineer
Linux GPU Platform Enablement
Intel Corporation


More information about the Intel-xe mailing list