[Mesa-dev] [PATCH 2/7] drm-uapi: Update vc4 header with syncobj submit support

Stefan Schake stschake at gmail.com
Sat Apr 21 22:41:20 UTC 2018


Signed-off-by: Stefan Schake <stschake at gmail.com>
---
The kernel side has not landed yet, so this is provisional.

 include/drm-uapi/vc4_drm.h | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/include/drm-uapi/vc4_drm.h b/include/drm-uapi/vc4_drm.h
index 4117117b42..0b348bebee 100644
--- a/include/drm-uapi/vc4_drm.h
+++ b/include/drm-uapi/vc4_drm.h
@@ -173,6 +173,8 @@ struct drm_vc4_submit_cl {
 #define VC4_SUBMIT_CL_FIXED_RCL_ORDER			(1 << 1)
 #define VC4_SUBMIT_CL_RCL_ORDER_INCREASING_X		(1 << 2)
 #define VC4_SUBMIT_CL_RCL_ORDER_INCREASING_Y		(1 << 3)
+#define VC4_SUBMIT_CL_IMPORT_SYNCOBJ			(1 << 4)
+#define VC4_SUBMIT_CL_EXPORT_SYNCOBJ			(1 << 5)
 	__u32 flags;
 
 	/* Returned value of the seqno of this render job (for the
@@ -183,6 +185,18 @@ struct drm_vc4_submit_cl {
 	/* ID of the perfmon to attach to this job. 0 means no perfmon. */
 	__u32 perfmonid;
 
+	/* Syncobj handle to wait on. Set together with IMPORT_SYNCOBJ flag.
+	 * If set, processing of this render job will not start until the
+	 * syncobj is signalled.
+	 */
+	__u32 in_sync;
+
+	/* Syncobj handle to export fence to. Set together with EXPORT_SYNCOBJ
+	 * flag. If set, the fence in the syncobj will be replaced with a fence
+	 * that signals upon completion of this render job.
+	 */
+	__u32 out_sync;
+
 	/* Unused field to align this struct on 64 bits. Must be set to 0.
 	 * If one ever needs to add an u32 field to this struct, this field
 	 * can be used.
@@ -324,6 +338,7 @@ struct drm_vc4_get_hang_state {
 #define DRM_VC4_PARAM_SUPPORTS_FIXED_RCL_ORDER	6
 #define DRM_VC4_PARAM_SUPPORTS_MADVISE		7
 #define DRM_VC4_PARAM_SUPPORTS_PERFMON		8
+#define DRM_VC4_PARAM_SUPPORTS_SYNCOBJ		9
 
 struct drm_vc4_get_param {
 	__u32 param;
-- 
2.14.1



More information about the mesa-dev mailing list