[igt-dev] [PATCH i-g-t] i915/gem_engine_topology: Support gem_list_engines on platforms prior to MTL

Dixit, Ashutosh ashutosh.dixit at intel.com
Sat May 20 00:21:42 UTC 2023


On Fri, 19 May 2023 05:45:25 -0700, Kamil Konieczny wrote:
>

Hi Kamil,

>
> On 2023-05-19 at 01:30:49 -0700, Ashutosh Dixit wrote:
> > gem_list_engines() should list engines correctly on platforms prior to
> > MTL. But at present it doesn't, it only supports MTL, and it skips on the
> ----------------------------------------------------- ^
> s/, and/ and/
>
> > 'igt_require(IS_METEORLAKE)' check for prior platforms. Fix this by
> -- ^
>
> imho better:
> s/skips on the ... prior platforms/skips on other platforms/
>
> > modifying gem_engine_to_gt_map() to return gt 0 for prior platforms,
> > because the only multi-gt platform supported at present in MTL.
> --------------------------------------------------------- ^
> s/in/is/

I will fix up the comments before merging.

> We do support multi-gpu, for example two or more DG2 or ATS-M cards ?

Thanks for reviewing, but I don't understand this question. All this
gem_list_engines stuff is used for listing the engines for a gt (and for a
class), so it's all within a single gpu (see
e.g. intel_ctx_create_for_gt()). Multiple devices is a separate issue. But
may be I am misunderstanding?

>
> >
> > Fixes: d2f39ce8186a ("lib/i915/gem_engine_topology: list engines specific to gt")
> > Signed-off-by: Ashutosh Dixit <ashutosh.dixit at intel.com>
>
> Reviewed-by: Kamil Konieczny <kamil.konieczny at linux.intel.com>

Thanks.
--
Ashutosh

>
> Regards,
> Kamil
>
> > ---
> >  lib/i915/gem_engine_topology.c | 8 ++++++--
> >  1 file changed, 6 insertions(+), 2 deletions(-)
> >
> > diff --git a/lib/i915/gem_engine_topology.c b/lib/i915/gem_engine_topology.c
> > index 6c8929ec591a..7c6cd9ba97db 100644
> > --- a/lib/i915/gem_engine_topology.c
> > +++ b/lib/i915/gem_engine_topology.c
> > @@ -372,8 +372,12 @@ mtl_engine_to_gt_map(const struct i915_engine_class_instance *e)
> >
> >  static int gem_engine_to_gt_map(int i915, const struct i915_engine_class_instance *engine)
> >  {
> > -	igt_require(IS_METEORLAKE(intel_get_drm_devid(i915)));
> > -	return mtl_engine_to_gt_map(engine);
> > +	uint32_t devid = intel_get_drm_devid(i915);
> > +
> > +	/* Only MTL multi-gt supported at present */
> > +	igt_require(intel_graphics_ver(devid) <= IP_VER(12, 70));
> > +
> > +	return IS_METEORLAKE(devid) ? mtl_engine_to_gt_map(engine) : 0;
> >  }
> >
> >  /**
> > --
> > 2.38.0
> >


More information about the igt-dev mailing list