Provide information on the types of topology masks that can be queried and add some examples.
Showing the changes to include/uapi (1 of 1 file). Show all
Unified · Split
| @@ -212,6 +212,9 @@ struct drm_xe_query_gts { · 211 unmodified lines | |||
| 212 | /** | 212 | /** |
| 213 | * struct drm_xe_query_topology_mask - describe the topology mask of a GT | 213 | * struct drm_xe_query_topology_mask - describe the topology mask of a GT |
| 214 | * | 214 | * |
| 215 | * This is the hardware topology which reflects the internal physical | ||
| 216 | * structure of the GPU. | ||
| 217 | * | ||
| 215 | * If a query is made with a struct drm_xe_device_query where .query | 218 | * If a query is made with a struct drm_xe_device_query where .query |
| 216 | * is equal to DRM_XE_DEVICE_QUERY_GT_TOPOLOGY, then the reply uses | 219 | * is equal to DRM_XE_DEVICE_QUERY_GT_TOPOLOGY, then the reply uses |
| 217 | * struct drm_xe_query_topology_mask in .data. | 220 | * struct drm_xe_query_topology_mask in .data. |
| @@ -220,8 +223,29 @@ struct drm_xe_query_topology_mask { · 2 unmodified lines | |||
| 220 | /** @gt_id: GT ID the mask is associated with */ | 223 | /** @gt_id: GT ID the mask is associated with */ |
| 221 | __u16 gt_id; | 224 | __u16 gt_id; |
| 222 | 225 | ||
| 226 | /* | ||
| 227 | * To query the mask of Dual Sub Slices (DSS) available for geometry | ||
| 228 | * operations. For example a query response containing the following | ||
| 229 | * in mask: | ||
| 230 | * DSS_GEOMETRY ff ff ff ff 00 00 00 00 | ||
| 231 | * means 32 DSS are available for geometry. | ||
| 232 | */ | ||
| 223 | #define XE_TOPO_DSS_GEOMETRY (1 << 0) | 233 | #define XE_TOPO_DSS_GEOMETRY (1 << 0) |
| 234 | /* | ||
| 235 | * To query the mask of Dual Sub Slices (DSS) available for compute | ||
| 236 | * operations. For example a query response containing the following | ||
| 237 | * in mask: | ||
| 238 | * DSS_COMPUTE ff ff ff ff 00 00 00 00 | ||
| 239 | * means 32 DSS are available for compute. | ||
| 240 | */ | ||
| 224 | #define XE_TOPO_DSS_COMPUTE (1 << 1) | 241 | #define XE_TOPO_DSS_COMPUTE (1 << 1) |
| 242 | /* | ||
| 243 | * To query the mask of Execution Units (EU) available per Dual Sub | ||
| 244 | * Slices (DSS). For example a query response containing the following | ||
| 245 | * in mask: | ||
| 246 | * EU_PER_DSS ff ff 00 00 00 00 00 00 | ||
| 247 | * means each DSS has 16 EU. | ||
| 248 | */ | ||
| 225 | #define XE_TOPO_EU_PER_DSS (1 << 2) | 249 | #define XE_TOPO_EU_PER_DSS (1 << 2) |
| 226 | /** @type: type of mask */ | 250 | /** @type: type of mask */ |
| 227 | __u16 type; | 251 | __u16 type; |