#include <linux/export.h>
#include <linux/seqno-fence.h>
static const char *seqno_fence_get_driver_name(struct dma_fence *fence)
struct seqno_fence *seqno_fence = to_seqno_fence(fence);
return seqno_fence->ops->get_driver_name(fence);
static const char *seqno_fence_get_timeline_name(struct dma_fence *fence)
struct seqno_fence *seqno_fence = to_seqno_fence(fence);
return seqno_fence->ops->get_timeline_name(fence);
static bool seqno_enable_signaling(struct dma_fence *fence)
struct seqno_fence *seqno_fence = to_seqno_fence(fence);
return seqno_fence->ops->enable_signaling(fence);
static bool seqno_signaled(struct dma_fence *fence)
struct seqno_fence *seqno_fence = to_seqno_fence(fence);
return seqno_fence->ops->signaled && seqno_fence->ops->signaled(fence);
static void seqno_release(struct dma_fence *fence)
struct seqno_fence *f = to_seqno_fence(fence);
dma_buf_put(f->sync_buf);
dma_fence_free(&f->base);
static signed long seqno_wait(struct dma_fence *fence, bool intr,