Top |
bool | has_dmabuf_export_sync_file () |
bool | has_dmabuf_import_sync_file () |
int | dmabuf_export_sync_file () |
void | dmabuf_import_sync_file () |
void | dmabuf_import_timeline_fence () |
bool | dmabuf_busy () |
bool | sync_file_busy () |
bool | dmabuf_sync_file_busy () |
bool
has_dmabuf_export_sync_file (int fd
);
Check if the kernel supports exporting a sync file from dmabuf.
bool
has_dmabuf_import_sync_file (int fd
);
Check if the kernel supports importing a sync file into a dmabuf.
int dmabuf_export_sync_file (int dmabuf
,uint32_t flags
);
Take a snapshot of the current dma-resv fences in the dmabuf, and export as a
syncfile. The flags
should at least specify either DMA_BUF_SYNC_WRITE or
DMA_BUF_SYNC_READ, depending on if we care about the read or write fences.
void dmabuf_import_sync_file (int dmabuf
,uint32_t flags
,int sync_fd
);
Import the sync file sync_fd
, into the dmabuf. The flags
should at least
specify DMA_BUF_SYNC_WRITE or DMA_BUF_SYNC_READ, depending on if we are
importing the sync_fd
as a read or write fence.
void dmabuf_import_timeline_fence (int dmabuf
,uint32_t flags
,int timeline
,uint32_t seqno
);
Create a new fence as part of timeline
, and import as a sync file into the
dmabuf. The flags
should at least specify DMA_BUF_SYNC_WRITE or
DMA_BUF_SYNC_READ, depending on if we are importing the new fence as a read
or write fence.
bool dmabuf_busy (int dmabuf
,uint32_t flags
);
Check if the fences in the dmabuf are still busy. The flags
should at least
specify DMA_BUF_SYNC_WRITE or DMA_BUF_SYNC_READ, depending on if we are
checking if the read or read fences have all signalled. Or DMA_BUF_SYNC_RW if
we care about both.
bool dmabuf_sync_file_busy (int dmabuf
,uint32_t flags
);
Export the current fences in dmabuf
as a sync file and check if still busy.
The flags
should at least contain DMA_BUF_SYNC_WRITE or DMA_BUF_SYNC_READ,
to specify which fences are to be exported from the dmabuf
and checked if
busy. Or DMA_BUF_SYNC_RW if we care about both.