[PATCH i-g-t 2/2] lib/intel_blt: use BYTE_COPY mode on xe2

Zbigniew Kempczyński zbigniew.kempczynski at intel.com
Thu Jan 25 06:04:06 UTC 2024


On Wed, Jan 24, 2024 at 08:37:54AM +0000, Matthew Auld wrote:
> On 24/01/2024 04:56, Zbigniew Kempczyński wrote:
> > On Tue, Jan 23, 2024 at 06:33:23PM +0000, Matthew Auld wrote:
> > > Currently we see various CAT errors and timeouts on xe2 when running
> > > xe_copy_basic. If selecting PAGE_COPY mode for MEM_COPY, the page size
> > > is defined as 256B block as xe2. Also the width should be defined in
> > > number of pages, and not bytes, which likely explains the CAT errors.
> > > However the caller in xe_copy_basic is not using a size that is aligned
> > > to 256B, so rather just select the more general BYTE_COPY mode instead,
> > > which should work for any reasonable number of bytes.
> > > 
> > > BSpec: 57561
> > > Signed-off-by: Matthew Auld <matthew.auld at intel.com>
> > > Cc: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
> > > ---
> > >   lib/intel_blt.c | 2 +-
> > >   1 file changed, 1 insertion(+), 1 deletion(-)
> > > 
> > > diff --git a/lib/intel_blt.c b/lib/intel_blt.c
> > > index e41e261ea..25d251c4f 100644
> > > --- a/lib/intel_blt.c
> > > +++ b/lib/intel_blt.c
> > > @@ -1613,7 +1613,7 @@ static void emit_blt_mem_copy(int fd, uint64_t ahnd, const struct blt_mem_data *
> > >   	optype = mem->src.type == M_MATRIX ? 1 << 17 : 0;
> > >   	i = 0;
> > > -	batch[i++] = MEM_COPY_CMD | (1 << 19) | optype;
> > > +	batch[i++] = MEM_COPY_CMD | optype;
> > >   	batch[i++] = mem->src.width - 1;
> > >   	batch[i++] = mem->src.height - 1;
> > >   	batch[i++] = mem->src.pitch - 1;
> > > -- 
> > > 2.43.0
> > > 
> > 
> > +Sai
> > 
> > At first glance I don't like removing (1 << 19). For M_MATRIX
> > we require BYTE_COPY. I'm not sure Sai is working on such tests
> > but we discussed offline sometime I would like to have such
> > tests here.
> 
> This patch is enabling BYTE_COPY mode. Setting bit 19 turns on the PAGE_COPY
> mode.  Matrix Copy looks to require BYTE_COPY. Also there doesn't seem to be
> a bit 19 on PVC, it seems to only support byte copy.

You're right. I incorrectly read spec and I've thought 1 << 19 enables BYTE_COPY.

>From me then:

Acked-by: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>

--
Zbigniew

> 
> > 
> > --
> > Zbigniew


More information about the igt-dev mailing list