summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgurchetansingh@chromium.org <gurchetansingh@chromium.org>2018-06-04 10:25:20 -0700
committerDave Airlie <airlied@redhat.com>2018-06-05 14:29:00 +1000
commita7b74a77fa63efe6d6462ff4f201bea03fa23a33 (patch)
tree51ed12d4941f6724e24e1aaf842f529fe13beca9
parent6ce94a50bbe2bfc0f5dfb58d39f5ddfece7a3320 (diff)
downloadmesa-a7b74a77fa63efe6d6462ff4f201bea03fa23a33.tar.gz
mesa-a7b74a77fa63efe6d6462ff4f201bea03fa23a33.tar.xz
virgl: use bits in caps set v2
Let's add another field to caps v2, that can help report boolean values. Suggested-by: Gert Wollny <gert.wollny@collabora.com> Suggested-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Dave Airlie <airlied@redhat.com>
-rw-r--r--src/gallium/drivers/virgl/virgl_hw.h5
-rw-r--r--src/gallium/drivers/virgl/virgl_winsys.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/drivers/virgl/virgl_hw.h b/src/gallium/drivers/virgl/virgl_hw.h
index a2c70bf86b..ee58520f9b 100644
--- a/src/gallium/drivers/virgl/virgl_hw.h
+++ b/src/gallium/drivers/virgl/virgl_hw.h
@@ -197,6 +197,10 @@ enum virgl_formats {
VIRGL_FORMAT_MAX,
};
+/* These are used by the capability_bits field in virgl_caps_v2. */
+#define VIRGL_CAP_NONE 0
+#define VIRGL_CAP_TGSI_INVARIANT (1 << 0)
+
#define VIRGL_BIND_DEPTH_STENCIL (1 << 0)
#define VIRGL_BIND_RENDER_TARGET (1 << 1)
#define VIRGL_BIND_SAMPLER_VIEW (1 << 3)
@@ -293,6 +297,7 @@ struct virgl_caps_v2 {
uint32_t texture_buffer_offset_alignment;
uint32_t uniform_buffer_offset_alignment;
uint32_t shader_buffer_offset_alignment;
+ uint32_t capability_bits;
};
union virgl_caps {
diff --git a/src/gallium/drivers/virgl/virgl_winsys.h b/src/gallium/drivers/virgl/virgl_winsys.h
index 83cb93138a..9ebb31a1e4 100644
--- a/src/gallium/drivers/virgl/virgl_winsys.h
+++ b/src/gallium/drivers/virgl/virgl_winsys.h
@@ -135,5 +135,6 @@ static inline void virgl_ws_fill_new_caps_defaults(struct virgl_drm_caps *caps)
caps->caps.v2.texture_buffer_offset_alignment = 0;
caps->caps.v2.uniform_buffer_offset_alignment = 256;
caps->caps.v2.shader_buffer_offset_alignment = 32;
+ caps->caps.v2.capability_bits = 0;
}
#endif