aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/virgl/virgl_hw.h
diff options
context:
space:
mode:
authorGurchetan Singh <[email protected]>2019-06-13 16:59:42 -0700
committerGurchetan Singh <[email protected]>2019-06-18 09:18:48 -0700
commit2480ce802ad4673cc84dcc78f7cb3c6b3c531865 (patch)
tree380ce8105a5295acfd448da5d2e35162b21d3146 /src/gallium/drivers/virgl/virgl_hw.h
parent58cb8653137a7cec2cf8eb1b58a38d97a29b8b15 (diff)
virgl: sync to virglrenderer virgl_hw.h
It's nice to keep these two files in sync, as they define guest userspace <---> host userspace communcation. Reviewed-by: Emil Velikov <[email protected]>
Diffstat (limited to 'src/gallium/drivers/virgl/virgl_hw.h')
-rw-r--r--src/gallium/drivers/virgl/virgl_hw.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/gallium/drivers/virgl/virgl_hw.h b/src/gallium/drivers/virgl/virgl_hw.h
index a0a29c1881d..7a8aa12d084 100644
--- a/src/gallium/drivers/virgl/virgl_hw.h
+++ b/src/gallium/drivers/virgl/virgl_hw.h
@@ -23,6 +23,8 @@
#ifndef VIRGL_HW_H
#define VIRGL_HW_H
+#include <stdint.h>
+
struct virgl_box {
uint32_t x, y, z;
uint32_t w, h, d;
@@ -212,6 +214,8 @@ enum virgl_formats {
VIRGL_FORMAT_R10G10B10X2_UNORM = 308,
VIRGL_FORMAT_A4B4G4R4_UNORM = 311,
+
+ VIRGL_FORMAT_R8_SRGB = 312,
VIRGL_FORMAT_MAX,
};
@@ -235,17 +239,17 @@ enum virgl_formats {
#define VIRGL_CAP_SRGB_WRITE_CONTROL (1 << 15)
#define VIRGL_CAP_QBO (1 << 16)
#define VIRGL_CAP_TRANSFER (1 << 17)
-#define VIRGL_CAP_FBO_MIXED_COLOR_FORMATS (1 << 18)
+#define VIRGL_CAP_FBO_MIXED_COLOR_FORMATS (1 << 18)
#define VIRGL_CAP_FAKE_FP64 (1 << 19)
#define VIRGL_CAP_BIND_COMMAND_ARGS (1 << 20)
#define VIRGL_CAP_MULTI_DRAW_INDIRECT (1 << 21)
#define VIRGL_CAP_INDIRECT_PARAMS (1 << 22)
#define VIRGL_CAP_TRANSFORM_FEEDBACK3 (1 << 23)
+#define VIRGL_CAP_3D_ASTC (1 << 24)
#define VIRGL_CAP_INDIRECT_INPUT_ADDR (1 << 25)
#define VIRGL_CAP_COPY_TRANSFER (1 << 26)
#define VIRGL_CAP_CLIP_HALFZ (1 << 27)
-
/* virgl bind flags - these are compatible with mesa 10.5 gallium.
* but are fixed, no other should be passed to virgl either.
*/
@@ -263,6 +267,9 @@ enum virgl_formats {
#define VIRGL_BIND_CURSOR (1 << 16)
#define VIRGL_BIND_CUSTOM (1 << 17)
#define VIRGL_BIND_SCANOUT (1 << 18)
+/* Used for buffers that are backed by guest storage and
+ * are only read by the host.
+ */
#define VIRGL_BIND_STAGING (1 << 19)
struct virgl_caps_bool_set1 {
@@ -398,8 +405,8 @@ enum virgl_ctx_errors {
VIRGL_ERROR_CTX_ILLEGAL_SURFACE,
VIRGL_ERROR_CTX_ILLEGAL_VERTEX_FORMAT,
VIRGL_ERROR_CTX_ILLEGAL_CMD_BUFFER,
+ VIRGL_ERROR_CTX_GLES_HAVE_TES_BUT_MISS_TCS,
};
-
#define VIRGL_RESOURCE_Y_0_TOP (1 << 0)
#endif