[Intel-xe] [PATCH v2 12/14] drm/xe/uapi: Add Tile ID information to the GT info query

Souza, Jose jose.souza at intel.com
Fri Nov 24 18:45:04 UTC 2023


On Wed, 2023-11-22 at 14:38 +0000, Francois Dugast wrote:
> From: Rodrigo Vivi <rodrigo.vivi at intel.com>
> 
> As an information only. So Userspace can use this information
> and be able to correlate different GTs.
> 
> Make API symmetric between Engine and GT info.
> 
> There's no need right now to include a tile_query entry
> since there's no other information that we need from tile
> that is not already exposed through different queries.
> 
> However, this could be added later if we have different Tile
> information that could matter to userspace. But let's keep
> the API ready for a direct reference to Tile ID based on
> the GT entry.
> 
> Signed-off-by: Francois Dugast <francois.dugast at intel.com>
> Signed-off-by: Rodrigo Vivi <rodrigo.vivi at intel.com>
> ---
>  drivers/gpu/drm/xe/xe_query.c | 1 +
>  include/uapi/drm/xe_drm.h     | 2 ++
>  2 files changed, 3 insertions(+)
> 
> diff --git a/drivers/gpu/drm/xe/xe_query.c b/drivers/gpu/drm/xe/xe_query.c
> index 77cab66d337f..095f1b8c2290 100644
> --- a/drivers/gpu/drm/xe/xe_query.c
> +++ b/drivers/gpu/drm/xe/xe_query.c
> @@ -376,6 +376,7 @@ static int query_gt_list(struct xe_device *xe, struct drm_xe_device_query *query
>  			gt_list->gt_list[id].type = DRM_XE_QUERY_GT_TYPE_MEDIA;
>  		else
>  			gt_list->gt_list[id].type = DRM_XE_QUERY_GT_TYPE_MAIN;
> +		gt_list->gt_list[id].tile_id = gt_to_tile(gt)->id;
>  		gt_list->gt_list[id].gt_id = gt->info.id;
>  		gt_list->gt_list[id].reference_clock = gt->info.reference_clock;
>  		if (!IS_DGFX(xe))
> diff --git a/include/uapi/drm/xe_drm.h b/include/uapi/drm/xe_drm.h
> index 4bad84e7793f..b0ef1f62fd99 100644
> --- a/include/uapi/drm/xe_drm.h
> +++ b/include/uapi/drm/xe_drm.h
> @@ -377,6 +377,8 @@ struct drm_xe_gt {
>  #define DRM_XE_QUERY_GT_TYPE_MEDIA		1
>  	/** @type: GT type: Main or Media */
>  	__u16 type;
> +	/** @tile_id: Tile ID where this GT lives (Information only) */
> +	__u16 tile_id;
>  	/** @gt_id: Unique ID of this GT within the PCI Device */
>  	__u16 gt_id;
>  	/** @reference_clock: A clock frequency for timestamp */

change is good but it broke the alignment of a struct that was aligned 


More information about the Intel-xe mailing list