diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2019-03-25 13:28:20 -0400 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2019-03-28 13:31:56 -0400 |
commit | 82392516e9e0818cd2227cf9a16205c90a6cacfa (patch) | |
tree | edcaf0a1e9facafdfeb9ecfb8e145c376726306d /tools | |
parent | 949af89af02c2d66db973c5bca01b7858e1ce0ba (diff) |
tools headers uapi: Update drm/i915_drm.h
To get the changes in:
e46c2e99f600 ("drm/i915: Expose RPCS (SSEU) configuration to userspace (Gen11 only)")
That don't cause changes in the generated perf binaries.
To silence this perf build warning:
Warning: Kernel ABI header at 'tools/include/uapi/drm/i915_drm.h' differs from latest version at 'include/uapi/drm/i915_drm.h'
diff -u tools/include/uapi/drm/i915_drm.h include/uapi/drm/i915_drm.h
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://lkml.kernel.org/n/tip-h6bspm1nomjnpr90333rrx7q@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/include/uapi/drm/i915_drm.h | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/tools/include/uapi/drm/i915_drm.h b/tools/include/uapi/drm/i915_drm.h index 298b2e197744..397810fa2d33 100644 --- a/tools/include/uapi/drm/i915_drm.h +++ b/tools/include/uapi/drm/i915_drm.h | |||
@@ -1486,9 +1486,73 @@ struct drm_i915_gem_context_param { | |||
1486 | #define I915_CONTEXT_MAX_USER_PRIORITY 1023 /* inclusive */ | 1486 | #define I915_CONTEXT_MAX_USER_PRIORITY 1023 /* inclusive */ |
1487 | #define I915_CONTEXT_DEFAULT_PRIORITY 0 | 1487 | #define I915_CONTEXT_DEFAULT_PRIORITY 0 |
1488 | #define I915_CONTEXT_MIN_USER_PRIORITY -1023 /* inclusive */ | 1488 | #define I915_CONTEXT_MIN_USER_PRIORITY -1023 /* inclusive */ |
1489 | /* | ||
1490 | * When using the following param, value should be a pointer to | ||
1491 | * drm_i915_gem_context_param_sseu. | ||
1492 | */ | ||
1493 | #define I915_CONTEXT_PARAM_SSEU 0x7 | ||
1489 | __u64 value; | 1494 | __u64 value; |
1490 | }; | 1495 | }; |
1491 | 1496 | ||
1497 | /** | ||
1498 | * Context SSEU programming | ||
1499 | * | ||
1500 | * It may be necessary for either functional or performance reason to configure | ||
1501 | * a context to run with a reduced number of SSEU (where SSEU stands for Slice/ | ||
1502 | * Sub-slice/EU). | ||
1503 | * | ||
1504 | * This is done by configuring SSEU configuration using the below | ||
1505 | * @struct drm_i915_gem_context_param_sseu for every supported engine which | ||
1506 | * userspace intends to use. | ||
1507 | * | ||
1508 | * Not all GPUs or engines support this functionality in which case an error | ||
1509 | * code -ENODEV will be returned. | ||
1510 | * | ||
1511 | * Also, flexibility of possible SSEU configuration permutations varies between | ||
1512 | * GPU generations and software imposed limitations. Requesting such a | ||
1513 | * combination will return an error code of -EINVAL. | ||
1514 | * | ||
1515 | * NOTE: When perf/OA is active the context's SSEU configuration is ignored in | ||
1516 | * favour of a single global setting. | ||
1517 | */ | ||
1518 | struct drm_i915_gem_context_param_sseu { | ||
1519 | /* | ||
1520 | * Engine class & instance to be configured or queried. | ||
1521 | */ | ||
1522 | __u16 engine_class; | ||
1523 | __u16 engine_instance; | ||
1524 | |||
1525 | /* | ||
1526 | * Unused for now. Must be cleared to zero. | ||
1527 | */ | ||
1528 | __u32 flags; | ||
1529 | |||
1530 | /* | ||
1531 | * Mask of slices to enable for the context. Valid values are a subset | ||
1532 | * of the bitmask value returned for I915_PARAM_SLICE_MASK. | ||
1533 | */ | ||
1534 | __u64 slice_mask; | ||
1535 | |||
1536 | /* | ||
1537 | * Mask of subslices to enable for the context. Valid values are a | ||
1538 | * subset of the bitmask value return by I915_PARAM_SUBSLICE_MASK. | ||
1539 | */ | ||
1540 | __u64 subslice_mask; | ||
1541 | |||
1542 | /* | ||
1543 | * Minimum/Maximum number of EUs to enable per subslice for the | ||
1544 | * context. min_eus_per_subslice must be inferior or equal to | ||
1545 | * max_eus_per_subslice. | ||
1546 | */ | ||
1547 | __u16 min_eus_per_subslice; | ||
1548 | __u16 max_eus_per_subslice; | ||
1549 | |||
1550 | /* | ||
1551 | * Unused for now. Must be cleared to zero. | ||
1552 | */ | ||
1553 | __u32 rsvd; | ||
1554 | }; | ||
1555 | |||
1492 | enum drm_i915_oa_format { | 1556 | enum drm_i915_oa_format { |
1493 | I915_OA_FORMAT_A13 = 1, /* HSW only */ | 1557 | I915_OA_FORMAT_A13 = 1, /* HSW only */ |
1494 | I915_OA_FORMAT_A29, /* HSW only */ | 1558 | I915_OA_FORMAT_A29, /* HSW only */ |