@@ -766,6 +766,8 @@ struct drm_prime_handle {
#define DRM_IOCTL_MODE_OBJ_SETPROPERTY DRM_IOWR(0xBA, struct drm_mode_obj_set_property)
#define DRM_IOCTL_MODE_CURSOR2 DRM_IOWR(0xBB, struct drm_mode_cursor2)
#define DRM_IOCTL_MODE_ATOMIC DRM_IOWR(0xBC, struct drm_mode_atomic)
+#define DRM_IOCTL_MODE_CREATEPROPBLOB DRM_IOWR(0xBD, struct drm_mode_create_blob)
+#define DRM_IOCTL_MODE_DESTROYPROPBLOB DRM_IOWR(0xBE, struct drm_mode_destroy_blob)
/**
* Device specific ioctls should only be in their respective headers
@@ -544,4 +544,26 @@ struct drm_mode_atomic {
__u64 user_data;
};
-#endif
+#define DRM_MODE_BLOB_TYPE_MODE 1 /**< drm_mode_modeinfo */
+
+/**
+ * Create a new 'blob' data property, copying length bytes from data pointer,
+ * and returning new blob ID.
+ */
+struct drm_mode_create_blob {
+ __u32 type;
+ __u32 length;
+ /** Pointer to data to create blob. */
+ __u64 data;
+ /** Return: new property ID. */
+ __u32 blob_id;
+};
+
+/**
+ * Destroy a user-created blob property.
+ */
+struct drm_mode_destroy_blob {
+ __u32 blob_id;
+};
+
+#endif
Signed-off-by: Daniel Stone <daniels@collabora.com> --- include/drm/drm.h | 2 ++ include/drm/drm_mode.h | 24 +++++++++++++++++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) \ No newline at end of file