Lines Matching refs:sync

407 vk_sync_is_tu_timeline_sync(const struct vk_sync *sync)
409 return sync->type == &tu_timeline_sync_type;
413 to_tu_timeline_sync(struct vk_sync *sync)
415 assert(sync->type == &tu_timeline_sync_type);
416 return container_of(sync, struct tu_timeline_sync, base);
420 tu_syncobj_from_vk_sync(struct vk_sync *sync)
423 if (vk_sync_is_tu_timeline_sync(sync)) {
424 syncobj = to_tu_timeline_sync(sync)->syncobj;
425 } else if (vk_sync_type_is_drm_syncobj(sync->type)) {
426 syncobj = vk_sync_as_drm_syncobj(sync)->syncobj;
440 struct tu_timeline_sync *sync = to_tu_timeline_sync(vk_sync);
445 int err = drmSyncobjCreate(device->fd, flags, &sync->syncobj);
451 sync->state = initial_value ? TU_TIMELINE_SYNC_STATE_SIGNALED :
462 struct tu_timeline_sync *sync = to_tu_timeline_sync(vk_sync);
465 ASSERTED int err = drmSyncobjDestroy(dev->fd, sync->syncobj);
474 struct tu_timeline_sync *sync = to_tu_timeline_sync(vk_sync);
476 int err = drmSyncobjReset(dev->fd, &sync->syncobj, 1);
481 sync->state = TU_TIMELINE_SYNC_STATE_RESET;
534 struct tu_timeline_sync *sync = to_tu_timeline_sync(waits[i].sync);
536 if (sync->state == TU_TIMELINE_SYNC_STATE_RESET) {
539 } else if (sync->state == TU_TIMELINE_SYNC_STATE_SIGNALED) {
542 } else if (sync->state == TU_TIMELINE_SYNC_STATE_SUBMITTED) {
544 handles[submit_count] = sync->syncobj;
545 submitted_syncs[submit_count++] = sync;
557 struct tu_timeline_sync *sync = submitted_syncs[i];
558 sync->state = TU_TIMELINE_SYNC_STATE_SIGNALED;
578 struct tu_timeline_sync *sync = to_tu_timeline_sync(waits[i].sync);
579 if (sync->state == TU_TIMELINE_SYNC_STATE_RESET)
753 device->sync_types[1] = &device->timeline_type.sync;
1071 if (!vk_sync_is_tu_timeline_sync(submit->vk_submit->waits[i].sync))
1074 struct tu_timeline_sync *sync =
1075 container_of(submit->vk_submit->waits[i].sync, struct tu_timeline_sync, base);
1077 assert(sync->state != TU_TIMELINE_SYNC_STATE_RESET);
1079 /* Set SIGNALED to the state of the wait timeline sync since this means the syncobj
1082 sync->state = TU_TIMELINE_SYNC_STATE_SIGNALED;
1086 if (!vk_sync_is_tu_timeline_sync(submit->vk_submit->signals[i].sync))
1089 struct tu_timeline_sync *sync =
1090 container_of(submit->vk_submit->signals[i].sync, struct tu_timeline_sync, base);
1092 assert(sync->state == TU_TIMELINE_SYNC_STATE_RESET);
1093 /* Set SUBMITTED to the state of the signal timeline sync so we could wait for
1094 * this timeline sync until completed if necessary.
1096 sync->state = TU_TIMELINE_SYNC_STATE_SUBMITTED;
1164 struct vk_sync *sync = submit->waits[i].sync;
1167 .handle = tu_syncobj_from_vk_sync(sync),
1173 struct vk_sync *sync = submit->signals[i].sync;
1176 .handle = tu_syncobj_from_vk_sync(sync),
1195 tu_syncobj_to_fd(struct tu_device *device, struct vk_sync *sync)
1199 ret = vk_sync_export_opaque_fd(&device->vk, sync, &fd);