Mesa (main): svga/drm: use pb_usage_flags instead of pipe_map_flags in vmw_svga_winsys_buffer_map
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Mon Aug 30 17:43:35 UTC 2021
Module: Mesa
Branch: main
Commit: 98fded8a393a944c562cf3d9b103c42022cb821b
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=98fded8a393a944c562cf3d9b103c42022cb821b
Author: Neha Bhende <bhenden at vmware.com>
Date: Fri Aug 27 13:04:20 2021 -0700
svga/drm: use pb_usage_flags instead of pipe_map_flags in vmw_svga_winsys_buffer_map
This patch basically maps pipe_map_flags to pb_flags. Since we are mapping it,
STATIC_ASSERTS won't be required.
Fixes: 00c30dad78b0 ("gallium: renumber PIPE_MAP_* enums to remove holes")
Reviewed-by: Charmaine Lee <charmainel at vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12606>
---
src/gallium/winsys/svga/drm/vmw_buffer.c | 34 +++++++++++++++-----------------
1 file changed, 16 insertions(+), 18 deletions(-)
diff --git a/src/gallium/winsys/svga/drm/vmw_buffer.c b/src/gallium/winsys/svga/drm/vmw_buffer.c
index d537c8be96e..6c235a9a486 100644
--- a/src/gallium/winsys/svga/drm/vmw_buffer.c
+++ b/src/gallium/winsys/svga/drm/vmw_buffer.c
@@ -357,32 +357,30 @@ vmw_svga_winsys_buffer_map(struct svga_winsys_screen *sws,
enum pipe_map_flags flags)
{
void *map;
+ enum pb_usage_flags pb_flags = 0;
(void)sws;
if (flags & PIPE_MAP_UNSYNCHRONIZED)
flags &= ~PIPE_MAP_DONTBLOCK;
- /* NOTE: we're passing PIPE_MAP_x flags instead of
- * PB_USAGE_x flags here. We should probably fix that.
- */
- STATIC_ASSERT((unsigned) PB_USAGE_CPU_READ ==
- (unsigned) PIPE_MAP_READ);
- STATIC_ASSERT((unsigned) PB_USAGE_CPU_WRITE ==
- (unsigned) PIPE_MAP_WRITE);
- STATIC_ASSERT((unsigned) PB_USAGE_GPU_READ ==
- (unsigned) PIPE_MAP_DIRECTLY);
- STATIC_ASSERT((unsigned) PB_USAGE_DONTBLOCK ==
- (unsigned) PIPE_MAP_DONTBLOCK);
- STATIC_ASSERT((unsigned) PB_USAGE_UNSYNCHRONIZED ==
- (unsigned) PIPE_MAP_UNSYNCHRONIZED);
- STATIC_ASSERT((unsigned) PB_USAGE_PERSISTENT ==
- (unsigned) PIPE_MAP_PERSISTENT);
-
- map = pb_map(vmw_pb_buffer(buf), flags & PB_USAGE_ALL, NULL);
+ if (flags & PIPE_MAP_READ)
+ pb_flags |= PB_USAGE_CPU_READ;
+ if (flags & PIPE_MAP_WRITE)
+ pb_flags |= PB_USAGE_CPU_WRITE;
+ if (flags & PIPE_MAP_DIRECTLY)
+ pb_flags |= PB_USAGE_GPU_READ;
+ if (flags & PIPE_MAP_DONTBLOCK)
+ pb_flags |= PB_USAGE_DONTBLOCK;
+ if (flags & PIPE_MAP_UNSYNCHRONIZED)
+ pb_flags |= PB_USAGE_UNSYNCHRONIZED;
+ if (flags & PIPE_MAP_PERSISTENT)
+ pb_flags |= PB_USAGE_PERSISTENT;
+
+ map = pb_map(vmw_pb_buffer(buf), pb_flags, NULL);
#ifdef DEBUG
if (map != NULL)
- debug_flush_map(buf->fbuf, flags);
+ debug_flush_map(buf->fbuf, pb_flags);
#endif
return map;
More information about the mesa-commit
mailing list