History

drm/xe/uapi: Document drm_xe_query_gt

Split drm_xe_query_gt out of the gt list one in order to better document it. No functional change at this point. Any actual change to the uapi should come in follow-up additions. v2: s/maks/mask

Rodrigo Vivi committed 3 years ago

Commit 25f656f1 parent e669f101 file · +43 −22Browse files

Showing the changes to include/uapi (1 of 1 file). Show all

Unified · Split

include/uapi/drm/xe_drm.h+43−22
@@ -334,6 +334,47 @@ struct drm_xe_query_config { · 333 unmodified lines
334334 __u64 info[];
335335 };
336336
337+/**
338+ * struct drm_xe_query_gt - describe an individual GT.
339+ *
340+ * To be used with drm_xe_query_gts, which will return a list with all the
341+ * existing GT individual descriptions.
342+ * Graphics Technology (GT) is a subset of a GPU/tile that is responsible for
343+ * implementing graphics and/or media operations.
344+ */
345+struct drm_xe_query_gt {
346+#define XE_QUERY_GT_TYPE_MAIN 0
347+#define XE_QUERY_GT_TYPE_REMOTE 1
348+#define XE_QUERY_GT_TYPE_MEDIA 2
349+ /** @type: GT type: Main, Remote, or Media */
350+ __u16 type;
351+ /** @instance: Instance of this GT in the GT list */
352+ __u16 instance;
353+ /** @clock_freq: A clock frequency for timestamp */
354+ __u32 clock_freq;
355+ /** @features: Reserved for future information about GT features */
356+ __u64 features;
357+ /**
358+ * @native_mem_regions: Bit mask of instances from
359+ * drm_xe_query_mem_usage that lives on the same GPU/Tile and have
360+ * direct access.
361+ */
362+ __u64 native_mem_regions;
363+ /**
364+ * @slow_mem_regions: Bit mask of instances from
365+ * drm_xe_query_mem_usage that this GT can indirectly access, although
366+ * they live on a different GPU/Tile.
367+ */
368+ __u64 slow_mem_regions;
369+ /**
370+ * @inaccessible_mem_regions: Bit mask of instances from
371+ * drm_xe_query_mem_usage that is not accessible by this GT at all.
372+ */
373+ __u64 inaccessible_mem_regions;
374+ /** @reserved: Reserved */
375+ __u64 reserved[8];
376+};
377+
337378 /**
338379 * struct drm_xe_query_gts - describe GTs
339380 *
@@ -344,30 +385,10 @@ struct drm_xe_query_config { · 4 unmodified lines
344385 struct drm_xe_query_gts {
345386 /** @num_gt: number of GTs returned in gts */
346387 __u32 num_gt;
347−
348388 /** @pad: MBZ */
349389 __u32 pad;
350−
351− /**
352− * @gts: The GTs returned for this device
353− *
354− * TODO: convert drm_xe_query_gt to proper kernel-doc.
355− * TODO: Perhaps info about every mem region relative to this GT? e.g.
356− * bandwidth between this GT and remote region?
357− */
358− struct drm_xe_query_gt {
359−#define XE_QUERY_GT_TYPE_MAIN 0
360−#define XE_QUERY_GT_TYPE_REMOTE 1
361−#define XE_QUERY_GT_TYPE_MEDIA 2
362− __u16 type;
363− __u16 instance;
364− __u32 clock_freq;
365− __u64 features;
366− __u64 native_mem_regions; /* bit mask of instances from drm_xe_query_mem_usage */
367− __u64 slow_mem_regions; /* bit mask of instances from drm_xe_query_mem_usage */
368− __u64 inaccessible_mem_regions; /* bit mask of instances from drm_xe_query_mem_usage */
369− __u64 reserved[8];
370− } gts[];
390+ /** @gts: The GT list returned for this device */
391+ struct drm_xe_query_gt gts[];
371392 };
372393
373394 /**

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t