@@ -806,6 +806,12 @@ typedef struct drm_i915_irq_wait {
806806 */
807807#define I915_PARAM_PXP_STATUS 58
808808
809+ /*
810+ * Query if kernel allows marking a context to send a Freq hint to SLPC. This
811+ * will enable use of the strategies allowed by the SLPC algorithm.
812+ */
813+ #define I915_PARAM_HAS_CONTEXT_FREQ_HINT 59
814+
809815/* Must be kept compact -- no holes and well documented */
810816
811817/**
@@ -2148,6 +2154,15 @@ struct drm_i915_gem_context_param {
21482154 * -EIO: The firmware did not succeed in creating the protected context.
21492155 */
21502156#define I915_CONTEXT_PARAM_PROTECTED_CONTENT 0xd
2157+
2158+ /*
2159+ * I915_CONTEXT_PARAM_LOW_LATENCY:
2160+ *
2161+ * Mark this context as a low latency workload which requires aggressive GT
2162+ * frequency scaling. Use I915_PARAM_HAS_CONTEXT_FREQ_HINT to check if the kernel
2163+ * supports this per context flag.
2164+ */
2165+ #define I915_CONTEXT_PARAM_LOW_LATENCY 0xe
21512166/* Must be kept compact -- no holes and well documented */
21522167
21532168 /** @value: Context parameter value to be set or queried */
@@ -2623,19 +2638,29 @@ struct drm_i915_reg_read {
26232638 *
26242639 */
26252640
2641+ /*
2642+ * struct drm_i915_reset_stats - Return global reset and other context stats
2643+ *
2644+ * Driver keeps few stats for each contexts and also global reset count.
2645+ * This struct can be used to query those stats.
2646+ */
26262647struct drm_i915_reset_stats {
2648+ /** @ctx_id: ID of the requested context */
26272649 __u32 ctx_id ;
2650+
2651+ /** @flags: MBZ */
26282652 __u32 flags ;
26292653
2630- /* All resets since boot/module reload, for all contexts */
2654+ /** @reset_count: All resets since boot/module reload, for all contexts */
26312655 __u32 reset_count ;
26322656
2633- /* Number of batches lost when active in GPU, for this context */
2657+ /** @batch_active: Number of batches lost when active in GPU, for this context */
26342658 __u32 batch_active ;
26352659
2636- /* Number of batches lost pending for execution, for this context */
2660+ /** @batch_pending: Number of batches lost pending for execution, for this context */
26372661 __u32 batch_pending ;
26382662
2663+ /** @pad: MBZ */
26392664 __u32 pad ;
26402665};
26412666
0 commit comments