summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/virgl/virgl_screen.c
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2019-02-11 10:51:01 +1000
committerDave Airlie <[email protected]>2019-04-09 14:15:24 +1000
commit05ff2dbf137c03b7c7e47f606b930e0afddaedee (patch)
tree816154464e54f606a79259d559da0a1337e99b3c /src/gallium/drivers/virgl/virgl_screen.c
parent316b785c59446c9206343d5349091d797f677f2b (diff)
virgl: add support for ARB_multi_draw_indirect
This will pass the multi draw through to the host if it has support for it instead of using the st to emulate it Reviewed-By: Gert Wollny <[email protected]>
Diffstat (limited to 'src/gallium/drivers/virgl/virgl_screen.c')
-rw-r--r--src/gallium/drivers/virgl/virgl_screen.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/virgl/virgl_screen.c b/src/gallium/drivers/virgl/virgl_screen.c
index 5dd7f559948..edcc4aa374d 100644
--- a/src/gallium/drivers/virgl/virgl_screen.c
+++ b/src/gallium/drivers/virgl/virgl_screen.c
@@ -271,11 +271,12 @@ virgl_get_param(struct pipe_screen *screen, enum pipe_cap param)
/* If the host supports only one sample (e.g., if it is using softpipe),
* fake multisampling to able to advertise higher GL versions. */
return (vscreen->caps.caps.v1.max_samples == 1) ? 1 : 0;
+ case PIPE_CAP_MULTI_DRAW_INDIRECT:
+ return !!(vscreen->caps.caps.v2.capability_bits & VIRGL_CAP_MULTI_DRAW_INDIRECT);
case PIPE_CAP_TEXTURE_GATHER_SM5:
case PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT:
case PIPE_CAP_TEXTURE_GATHER_OFFSETS:
case PIPE_CAP_TGSI_VS_WINDOW_SPACE_POSITION:
- case PIPE_CAP_MULTI_DRAW_INDIRECT:
case PIPE_CAP_MULTI_DRAW_INDIRECT_PARAMS:
case PIPE_CAP_CLIP_HALFZ:
case PIPE_CAP_VERTEXID_NOBASE: