bool (*res_is_synced)(struct virgl_winsys *vws,
struct virgl_hw_res *res);
+ void (*res_set_synced)(struct virgl_hw_res *res);
+
int (*get_caps)(struct virgl_winsys *vws, struct virgl_drm_caps *caps);
/* fence */
return res->synced;
}
+static void virgl_drm_res_set_synced(struct virgl_hw_res *res)
+{
+ res->synced = true;
+}
+
static boolean virgl_drm_res_is_ref(struct virgl_winsys *qws,
struct virgl_cmd_buf *_cbuf,
struct virgl_hw_res *res,
qdws->base.emit_res = virgl_drm_emit_res;
qdws->base.res_is_referenced = virgl_drm_res_is_ref;
qdws->base.res_is_synced = virgl_drm_res_is_synced;
+ qdws->base.res_set_synced = virgl_drm_res_set_synced;
qdws->base.cs_create_fence = virgl_cs_create_fence;
qdws->base.fence_wait = virgl_fence_wait;
qdws->base.fence_reference = virgl_fence_reference;
return res->synced;
}
+static void virgl_vtest_res_set_synced(struct virgl_hw_res *res)
+{
+ res->synced = true;
+}
+
static int virgl_vtest_get_caps(struct virgl_winsys *vws,
struct virgl_drm_caps *caps)
{
vtws->base.emit_res = virgl_vtest_emit_res;
vtws->base.res_is_referenced = virgl_vtest_res_is_ref;
vtws->base.res_is_synced = virgl_vtest_res_is_synced;
+ vtws->base.res_set_synced = virgl_vtest_res_set_synced;
vtws->base.get_caps = virgl_vtest_get_caps;
vtws->base.cs_create_fence = virgl_cs_create_fence;