Sync the drm-intel-gt-next changes back to drm-intel-next via drm-next.
Showing the changes to include/uapi/drm (2 of 497 files). Show all
Unified · Split
| @@ -834,6 +834,11 @@ struct drm_color_ctm { · 833 unmodified lines | |||
| 834 | /* | 834 | /* |
| 835 | * Conversion matrix in S31.32 sign-magnitude | 835 | * Conversion matrix in S31.32 sign-magnitude |
| 836 | * (not two's complement!) format. | 836 | * (not two's complement!) format. |
| 837 | * | ||
| 838 | * out matrix in | ||
| 839 | * |R| |0 1 2| |R| | ||
| 840 | * |G| = |3 4 5| x |G| | ||
| 841 | * |B| |6 7 8| |B| | ||
| 837 | */ | 842 | */ |
| 838 | __u64 matrix[9]; | 843 | __u64 matrix[9]; |
| 839 | }; | 844 | }; |
| @@ -280,7 +280,16 @@ enum drm_i915_pmu_engine_sample { · 279 unmodified lines | |||
| 280 | #define I915_PMU_ENGINE_SEMA(class, instance) \ | 280 | #define I915_PMU_ENGINE_SEMA(class, instance) \ |
| 281 | __I915_PMU_ENGINE(class, instance, I915_SAMPLE_SEMA) | 281 | __I915_PMU_ENGINE(class, instance, I915_SAMPLE_SEMA) |
| 282 | 282 | ||
| 283 | #define __I915_PMU_OTHER(x) (__I915_PMU_ENGINE(0xff, 0xff, 0xf) + 1 + (x)) | 283 | /* |
| 284 | * Top 4 bits of every non-engine counter are GT id. | ||
| 285 | */ | ||
| 286 | #define __I915_PMU_GT_SHIFT (60) | ||
| 287 | |||
| 288 | #define ___I915_PMU_OTHER(gt, x) \ | ||
| 289 | (((__u64)__I915_PMU_ENGINE(0xff, 0xff, 0xf) + 1 + (x)) | \ | ||
| 290 | ((__u64)(gt) << __I915_PMU_GT_SHIFT)) | ||
| 291 | |||
| 292 | #define __I915_PMU_OTHER(x) ___I915_PMU_OTHER(0, x) | ||
| 284 | 293 | ||
| 285 | #define I915_PMU_ACTUAL_FREQUENCY __I915_PMU_OTHER(0) | 294 | #define I915_PMU_ACTUAL_FREQUENCY __I915_PMU_OTHER(0) |
| 286 | #define I915_PMU_REQUESTED_FREQUENCY __I915_PMU_OTHER(1) | 295 | #define I915_PMU_REQUESTED_FREQUENCY __I915_PMU_OTHER(1) |
| @@ -290,6 +299,12 @@ enum drm_i915_pmu_engine_sample { · 3 unmodified lines | |||
| 290 | 299 | ||
| 291 | #define I915_PMU_LAST /* Deprecated - do not use */ I915_PMU_RC6_RESIDENCY | 300 | #define I915_PMU_LAST /* Deprecated - do not use */ I915_PMU_RC6_RESIDENCY |
| 292 | 301 | ||
| 302 | #define __I915_PMU_ACTUAL_FREQUENCY(gt) ___I915_PMU_OTHER(gt, 0) | ||
| 303 | #define __I915_PMU_REQUESTED_FREQUENCY(gt) ___I915_PMU_OTHER(gt, 1) | ||
| 304 | #define __I915_PMU_INTERRUPTS(gt) ___I915_PMU_OTHER(gt, 2) | ||
| 305 | #define __I915_PMU_RC6_RESIDENCY(gt) ___I915_PMU_OTHER(gt, 3) | ||
| 306 | #define __I915_PMU_SOFTWARE_GT_AWAKE_TIME(gt) ___I915_PMU_OTHER(gt, 4) | ||
| 307 | |||
| 293 | /* Each region is a minimum of 16k, and there are at most 255 of them. | 308 | /* Each region is a minimum of 16k, and there are at most 255 of them. |
| 294 | */ | 309 | */ |
| 295 | #define I915_NR_TEX_REGIONS 255 /* table size 2k - maximum due to use | 310 | #define I915_NR_TEX_REGIONS 255 /* table size 2k - maximum due to use |
| @@ -771,6 +786,25 @@ typedef struct drm_i915_irq_wait { · 475 unmodified lines | |||
| 771 | */ | 786 | */ |
| 772 | #define I915_PARAM_OA_TIMESTAMP_FREQUENCY 57 | 787 | #define I915_PARAM_OA_TIMESTAMP_FREQUENCY 57 |
| 773 | 788 | ||
| 789 | /* | ||
| 790 | * Query the status of PXP support in i915. | ||
| 791 | * | ||
| 792 | * The query can fail in the following scenarios with the listed error codes: | ||
| 793 | * -ENODEV = PXP support is not available on the GPU device or in the | ||
| 794 | * kernel due to missing component drivers or kernel configs. | ||
| 795 | * | ||
| 796 | * If the IOCTL is successful, the returned parameter will be set to one of | ||
| 797 | * the following values: | ||
| 798 | * 1 = PXP feature is supported and is ready for use. | ||
| 799 | * 2 = PXP feature is supported but should be ready soon (pending | ||
| 800 | * initialization of non-i915 system dependencies). | ||
| 801 | * | ||
| 802 | * NOTE: When param is supported (positive return values), user space should | ||
| 803 | * still refer to the GEM PXP context-creation UAPI header specs to be | ||
| 804 | * aware of possible failure due to system state machine at the time. | ||
| 805 | */ | ||
| 806 | #define I915_PARAM_PXP_STATUS 58 | ||
| 807 | |||
| 774 | /* Must be kept compact -- no holes and well documented */ | 808 | /* Must be kept compact -- no holes and well documented */ |
| 775 | 809 | ||
| 776 | /** | 810 | /** |
| @@ -2096,6 +2130,21 @@ struct drm_i915_gem_context_param { · 1319 unmodified lines | |||
| 2096 | * | 2130 | * |
| 2097 | * -ENODEV: feature not available | 2131 | * -ENODEV: feature not available |
| 2098 | * -EPERM: trying to mark a recoverable or not bannable context as protected | 2132 | * -EPERM: trying to mark a recoverable or not bannable context as protected |
| 2133 | * -ENXIO: A dependency such as a component driver or firmware is not yet | ||
| 2134 | * loaded so user space may need to attempt again. Depending on the | ||
| 2135 | * device, this error may be reported if protected context creation is | ||
| 2136 | * attempted very early after kernel start because the internal timeout | ||
| 2137 | * waiting for such dependencies is not guaranteed to be larger than | ||
| 2138 | * required (numbers differ depending on system and kernel config): | ||
| 2139 | * - ADL/RPL: dependencies may take up to 3 seconds from kernel start | ||
| 2140 | * while context creation internal timeout is 250 milisecs | ||
| 2141 | * - MTL: dependencies may take up to 8 seconds from kernel start | ||
| 2142 | * while context creation internal timeout is 250 milisecs | ||
| 2143 | * NOTE: such dependencies happen once, so a subsequent call to create a | ||
| 2144 | * protected context after a prior successful call will not experience | ||
| 2145 | * such timeouts and will not return -ENXIO (unless the driver is reloaded, | ||
| 2146 | * or, depending on the device, resumes from a suspended state). | ||
| 2147 | * -EIO: The firmware did not succeed in creating the protected context. | ||
| 2099 | */ | 2148 | */ |
| 2100 | #define I915_CONTEXT_PARAM_PROTECTED_CONTENT 0xd | 2149 | #define I915_CONTEXT_PARAM_PROTECTED_CONTENT 0xd |
| 2101 | /* Must be kept compact -- no holes and well documented */ | 2150 | /* Must be kept compact -- no holes and well documented */ |