[PATCH i-g-t] lib/rendercopy_gen9: Use AUX_NONE for platforms with unified compression

Zbigniew Kempczyński zbigniew.kempczynski at intel.com
Thu Jun 27 07:56:37 UTC 2024


On Tue, Jun 25, 2024 at 11:17:33AM -0700, Matt Roper wrote:
> On Tue, Jun 25, 2024 at 11:16:50AM +0200, Zbigniew Kempczyński wrote:
> > For non-MSAA surfaces when unified compression is configured in PAT
> > auxiliary surfaces must be set to AUX_NONE. I haven't noticed this
> > on Xe2+ before as it setting was silently ignored by hardware but
> > setting to AUX_CCS_E is incorrect and may fail on newer platforms.
> 
> Matches bspec 57023; 0x5 is no longer listed as a valid setting for this
> field from Xe2 onward.
> 
> On Xe1 platforms, does this field still apply for platforms that use
> FlatCCS rather than AuxCCS?  It's unclear to me whether the setting is
> correct for DG2 or not.

To get the compression on Xe1 (DG2) setting aux-mode to AUX_CCS_E in surface
state is mandatory.

--
Zbigniew

> 
> 
> Matt
> 
> > 
> > Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
> > Cc: Stuart Summers <stuart.summers at intel.com>
> > ---
> >  lib/rendercopy_gen9.c | 5 ++++-
> >  1 file changed, 4 insertions(+), 1 deletion(-)
> > 
> > diff --git a/lib/rendercopy_gen9.c b/lib/rendercopy_gen9.c
> > index 726f1a087b..62a365f3c2 100644
> > --- a/lib/rendercopy_gen9.c
> > +++ b/lib/rendercopy_gen9.c
> > @@ -229,7 +229,10 @@ gen9_bind_buf(struct intel_bb *ibb, const struct intel_buf *buf, int is_dst,
> >  	if (buf->compression == I915_COMPRESSION_MEDIA)
> >  		ss->ss7.tgl.media_compression = 1;
> >  	else if (buf->compression == I915_COMPRESSION_RENDER) {
> > -		ss->ss6.aux_mode = 0x5; /* AUX_CCS_E */
> > +		if (AT_LEAST_GEN(ibb->devid, 20))
> > +			ss->ss6.aux_mode = 0x0; /* AUX_NONE, unified compression */
> > +		else
> > +			ss->ss6.aux_mode = 0x5; /* AUX_CCS_E */
> >  
> >  		if (buf->ccs[0].stride) {
> >  
> > -- 
> > 2.34.1
> > 
> 
> -- 
> Matt Roper
> Graphics Software Engineer
> Linux GPU Platform Enablement
> Intel Corporation


More information about the igt-dev mailing list