summaryrefslogtreecommitdiffstats
path: root/include/uapi
diff options
context:
space:
mode:
authorJordan Crouse2017-10-20 19:06:57 +0200
committerRob Clark2017-10-28 17:01:36 +0200
commitf97decac5f4c2d862e5b848694e3ffb29fc8acdd (patch)
tree1967285c12465308cd47769a43326db9506ca0d8 /include/uapi
parentdrm/msm: Move memptrs to msm_gpu (diff)
downloadkernel-qcow2-linux-f97decac5f4c2d862e5b848694e3ffb29fc8acdd.tar.gz
kernel-qcow2-linux-f97decac5f4c2d862e5b848694e3ffb29fc8acdd.tar.xz
kernel-qcow2-linux-f97decac5f4c2d862e5b848694e3ffb29fc8acdd.zip
drm/msm: Support multiple ringbuffers
Add the infrastructure to support the idea of multiple ringbuffers. Assign each ringbuffer an id and use that as an index for the various ring specific operations. The biggest delta is to support legacy fences. Each fence gets its own sequence number but the legacy functions expect to use a unique integer. To handle this we return a unique identifier for each submission but map it to a specific ring/sequence under the covers. Newer users use a dma_fence pointer anyway so they don't care about the actual sequence ID or ring. The actual mechanics for multiple ringbuffers are very target specific so this code just allows for the possibility but still only defines one ringbuffer for each target family. Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org> Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'include/uapi')
-rw-r--r--include/uapi/drm/msm_drm.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/uapi/drm/msm_drm.h b/include/uapi/drm/msm_drm.h
index fee44322a69c..12d7619afa22 100644
--- a/include/uapi/drm/msm_drm.h
+++ b/include/uapi/drm/msm_drm.h
@@ -232,6 +232,7 @@ struct drm_msm_wait_fence {
__u32 fence; /* in */
__u32 pad;
struct drm_msm_timespec timeout; /* in */
+ __u32 queueid; /* in, submitqueue id */
};
/* madvise provides a way to tell the kernel in case a buffers contents