aboutsummaryrefslogtreecommitdiff
path: root/drivers/gpu/pvr/services4/srvkm/env/linux/pvrsrv_sync_server.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/pvr/services4/srvkm/env/linux/pvrsrv_sync_server.h')
-rw-r--r--drivers/gpu/pvr/services4/srvkm/env/linux/pvrsrv_sync_server.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/drivers/gpu/pvr/services4/srvkm/env/linux/pvrsrv_sync_server.h b/drivers/gpu/pvr/services4/srvkm/env/linux/pvrsrv_sync_server.h
new file mode 100644
index 000000000000..047594020fa1
--- /dev/null
+++ b/drivers/gpu/pvr/services4/srvkm/env/linux/pvrsrv_sync_server.h
@@ -0,0 +1,30 @@
+#ifndef _PVRSRV_SYNC_SERVER_H_
+#define _PVRSRV_SYNC_SERVER_H_
+
+#include "img_types.h"
+#include "pvr_dma_fence.h"
+
+#define SYNC_SW_TIMELINE_MAX_LENGTH 32
+#define SYNC_SW_FENCE_MAX_LENGTH 32
+
+/*****************************************************************************/
+/* */
+/* SW TIMELINE SPECIFIC FUNCTIONS */
+/* */
+/*****************************************************************************/
+
+struct dma_fence* SyncSWTimelineFenceCreateKM(IMG_INT32 iSWTimeline,
+ IMG_UINT32 ui32NextSyncPtVal,
+ const IMG_CHAR *pszFenceName);
+
+PVRSRV_ERROR SyncSWTimelineAdvanceKM(IMG_PVOID pvSWTimelineObj);
+
+PVRSRV_ERROR SyncSWTimelineReleaseKM(IMG_PVOID pvSWTimelineObj);
+
+PVRSRV_ERROR SyncSWTimelineFenceReleaseKM(IMG_PVOID i32SWFenceObj);
+
+PVRSRV_ERROR SyncSWGetTimelineObj(IMG_INT32 iSWTimeline, IMG_PVOID *ppvSWTimelineObj);
+
+PVRSRV_ERROR SyncSWGetFenceObj(IMG_INT32 iSWFence, IMG_PVOID *ppvSWFenceObj);
+
+#endif /* _PVRSRV_SYNC_SERVER_H_ */