[Intel-gfx] [PATCH] drm/i915: Engine discovery query
Chris Wilson
chris at chris-wilson.co.uk
Thu Mar 14 14:55:47 UTC 2019
Quoting Tvrtko Ursulin (2019-03-14 14:44:19)
> From: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
>
> Engine discovery query allows userspace to enumerate engines, probe their
> configuration features, all without needing to maintain the internal PCI
> ID based database.
>
> A new query for the generic i915 query ioctl is added named
> DRM_I915_QUERY_ENGINE_INFO, together with accompanying structure
> drm_i915_query_engine_info. The address of latter should be passed to the
> kernel in the query.data_ptr field, and should be large enough for the
> kernel to fill out all known engines as struct drm_i915_engine_info
> elements trailing the query.
>
> As with other queries, setting the item query length to zero allows
> userspace to query minimum required buffer size.
>
> Enumerated engines have common type mask which can be used to query all
> hardware engines, versus engines userspace can submit to using the execbuf
> uAPI.
> + for_each_engine(engine, i915, id) {
> + info.engine_class = engine->uabi_class;
> + info.engine_instance = engine->instance;
> + info.capabilities = engine->uabi_capabilities;
I would love to be able to find out engine->mmio_base,
engine->context_size, and maybe engine->hw_id?
Pretty please.
Or maybe you want to distinguish between uapi info and hw info. Which
would be reasonable.
-Chris
More information about the Intel-gfx
mailing list