summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/virgl/virgl_protocol.h
diff options
context:
space:
mode:
authorAlexandros Frantzis <[email protected]>2019-05-14 12:38:24 +0300
committerChia-I Wu <[email protected]>2019-06-07 21:45:34 -0700
commit199d95f29ed0177bab77c7d348a88e26cd4d23c0 (patch)
treecfec8a64cac471214ceb881f2e380d5fd1d4d5b9 /src/gallium/drivers/virgl/virgl_protocol.h
parentccec1555c154a9c11b61127671c30553096856c8 (diff)
virgl: Add copy_transfer3d definitions
Introduce definitions for the copy_transfer3d protocol command and virgl capability. This command transfers data to the host by copying through another resource, and will be used in upcoming commits to avoid waiting when transferring data for busy resources. Signed-off-by: Alexandros Frantzis <[email protected]> Reviewed-by: Chia-I Wu <[email protected]>
Diffstat (limited to 'src/gallium/drivers/virgl/virgl_protocol.h')
-rw-r--r--src/gallium/drivers/virgl/virgl_protocol.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gallium/drivers/virgl/virgl_protocol.h b/src/gallium/drivers/virgl/virgl_protocol.h
index c55a8cc2057..8a6cdbca06c 100644
--- a/src/gallium/drivers/virgl/virgl_protocol.h
+++ b/src/gallium/drivers/virgl/virgl_protocol.h
@@ -96,6 +96,7 @@ enum virgl_context_cmd {
VIRGL_CCMD_GET_QUERY_RESULT_QBO,
VIRGL_CCMD_TRANSFER3D,
VIRGL_CCMD_END_TRANSFERS,
+ VIRGL_CCMD_COPY_TRANSFER3D,
};
/*
@@ -577,4 +578,11 @@ enum virgl_context_cmd {
#define VIRGL_TRANSFER3D_DATA_OFFSET 12
#define VIRGL_TRANSFER3D_DIRECTION 13
+/* Copy transfer */
+#define VIRGL_COPY_TRANSFER3D_SIZE 14
+/* The first 11 dwords are the same as VIRGL_RESOURCE_IW_* */
+#define VIRGL_COPY_TRANSFER3D_SRC_RES_HANDLE 12
+#define VIRGL_COPY_TRANSFER3D_SRC_RES_OFFSET 13
+#define VIRGL_COPY_TRANSFER3D_SYNCHRONIZED 14
+
#endif