[PATCH 08/17] drm/xe/oa: OA stream initialization (OAG)
Dixit, Ashutosh
ashutosh.dixit at intel.com
Sat Jan 20 02:49:22 UTC 2024
On Tue, 19 Dec 2023 18:31:45 -0800, Umesh Nerlige Ramappa wrote:
>
Hi Umesh,
> > diff --git a/drivers/gpu/drm/xe/regs/xe_gt_regs.h b/drivers/gpu/drm/xe/regs/xe_gt_regs.h
> > index d318ec0efd7db..1b98b609f7fda 100644
> > --- a/drivers/gpu/drm/xe/regs/xe_gt_regs.h
> > +++ b/drivers/gpu/drm/xe/regs/xe_gt_regs.h
> > @@ -156,6 +156,8 @@
> >
> > #define SQCNT1 XE_REG_MCR(0x8718)
> > #define XELPMP_SQCNT1 XE_REG(0x8718)
> > +#define SQCNT1_PMON_ENABLE REG_BIT(30)
> > +#define SQCNT1_OABPC REG_BIT(29)
> > #define ENFORCE_RAR REG_BIT(23)
>
> REG_BIT(29) indentation seems to be off
Indentation is ok, I've explained this elsewhere.
> > +static int xe_oa_emit_oa_config(struct xe_oa_stream *stream)
> > +{
> > +#define NOA_PROGRAM_ADDITIONAL_DELAY_US 500
> > + struct xe_oa_config_bo *oa_bo;
> > + int err, us = NOA_PROGRAM_ADDITIONAL_DELAY_US;
> > +
> > + oa_bo = xe_oa_alloc_config_buffer(stream);
> > + if (IS_ERR(oa_bo)) {
> > + err = PTR_ERR(oa_bo);
> > + goto exit;
> > + }
> > +
> > + err = xe_oa_submit_bb(stream, oa_bo->bb);
> > +
> > + /* Additional empirical delay needed for NOA programming after registers are written */
> > + usleep_range(us, 2 * us);
>
> Are we planning to signal user fence or something to indicate completion? I
> haven't tracked that aspect much.
Yes that's the plan. This usleep() will be removed when we implement that.
>
> The reset is familiar and lgtm,
>
> Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa at intel.com>
Thanks.
--
Ashutosh
More information about the Intel-xe
mailing list