diff options
author | Thomas Hellstrom <[email protected]> | 2019-04-05 17:07:49 +0200 |
---|---|---|
committer | Thomas Hellstrom <[email protected]> | 2019-06-20 09:30:22 +0200 |
commit | 71b43490dd04c03d4027230b0939b81ab91650ca (patch) | |
tree | c7bce9af08963e9f5b2b6fd38a5eabb4694999f2 /src/gallium/drivers/svga/svga_screen.c | |
parent | 8c01e5ed5f2b9e97541444591219c6035da8c046 (diff) |
svga: Support ARB_buffer_storage
This basically boils down to supporting persistent and coherent buffer
storage.
We chose to use coherent buffer storage for all persistent buffers
even if it's not explicitly specified, since using glMemoryBarrier to
obtain coherency would be particularly expensive in our driver stack,
and require a lot of additional bookkeeping.
Signed-off-by: Thomas Hellstrom <[email protected]>
Reviewed-by: Brian Paul <[email protected]>
Diffstat (limited to 'src/gallium/drivers/svga/svga_screen.c')
-rw-r--r-- | src/gallium/drivers/svga/svga_screen.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/svga/svga_screen.c b/src/gallium/drivers/svga/svga_screen.c index 5300fada9ff..c76d77f1bc2 100644 --- a/src/gallium/drivers/svga/svga_screen.c +++ b/src/gallium/drivers/svga/svga_screen.c @@ -351,6 +351,8 @@ svga_get_param(struct pipe_screen *screen, enum pipe_cap param) return sws->have_sm4_1 ? 1 : 0; /* only single-channel textures */ case PIPE_CAP_MAX_VARYINGS: return sws->have_vgpu10 ? VGPU10_MAX_FS_INPUTS : 10; + case PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT: + return sws->have_coherent; /* Unsupported features */ case PIPE_CAP_TEXTURE_MIRROR_CLAMP: @@ -366,7 +368,6 @@ svga_get_param(struct pipe_screen *screen, enum pipe_cap param) case PIPE_CAP_QUERY_PIPELINE_STATISTICS: case PIPE_CAP_TGSI_VS_LAYER_VIEWPORT: 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_DRAW_INDIRECT: |