#define DRM_IOCTL_XE_WAIT_USER_FENCE           DRM_IOWR(DRM_COMMAND_BASE + DRM_XE_WAIT_USER_FENCE, struct drm_xe_wait_user_fence)
 #define DRM_IOCTL_XE_VM_MADVISE                        DRM_IOW( DRM_COMMAND_BASE + DRM_XE_VM_MADVISE, struct drm_xe_vm_madvise)
 
-struct drm_xe_engine_class_instance {
-       __u16 engine_class;
-
-#define DRM_XE_ENGINE_CLASS_RENDER             0
-#define DRM_XE_ENGINE_CLASS_COPY               1
-#define DRM_XE_ENGINE_CLASS_VIDEO_DECODE       2
-#define DRM_XE_ENGINE_CLASS_VIDEO_ENHANCE      3
-#define DRM_XE_ENGINE_CLASS_COMPUTE            4
-       /*
-        * Kernel only class (not actual hardware engine class). Used for
-        * creating ordered queues of VM bind operations.
-        */
-#define DRM_XE_ENGINE_CLASS_VM_BIND            5
-
-       __u16 engine_instance;
-       __u16 gt_id;
-};
-
 #define XE_MEM_REGION_CLASS_SYSMEM     0
 #define XE_MEM_REGION_CLASS_VRAM       1
 
        __u64 reserved[2];
 };
 
+struct drm_xe_engine_class_instance {
+       __u16 engine_class;
+
+#define DRM_XE_ENGINE_CLASS_RENDER             0
+#define DRM_XE_ENGINE_CLASS_COPY               1
+#define DRM_XE_ENGINE_CLASS_VIDEO_DECODE       2
+#define DRM_XE_ENGINE_CLASS_VIDEO_ENHANCE      3
+#define DRM_XE_ENGINE_CLASS_COMPUTE            4
+       /*
+        * Kernel only class (not actual hardware engine class). Used for
+        * creating ordered queues of VM bind operations.
+        */
+#define DRM_XE_ENGINE_CLASS_VM_BIND            5
+
+       __u16 engine_instance;
+       __u16 gt_id;
+};
+
 struct drm_xe_engine_create {
        /** @extensions: Pointer to the first extension struct, if any */
 #define XE_ENGINE_EXTENSION_SET_PROPERTY               0