Mesa (master): panfrost: Respect constant buffer_offset
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Jan 7 08:08:03 UTC 2020
Module: Mesa
Branch: master
Commit: 0b714f3fa377be681f9031c5884e96b277eac102
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0b714f3fa377be681f9031c5884e96b277eac102
Author: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Date: Mon Jan 6 20:39:58 2020 -0500
panfrost: Respect constant buffer_offset
Fixes dEQP-GLES3.functional.ubo.multi_basic_types.single_buffer.* among
others
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso at collabora.com>
---
src/gallium/drivers/panfrost/pan_context.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers/panfrost/pan_context.c b/src/gallium/drivers/panfrost/pan_context.c
index 9c51f423f86..33340cd566c 100644
--- a/src/gallium/drivers/panfrost/pan_context.c
+++ b/src/gallium/drivers/panfrost/pan_context.c
@@ -797,9 +797,11 @@ panfrost_map_constant_buffer_gpu(
PAN_BO_ACCESS_SHARED |
PAN_BO_ACCESS_READ |
panfrost_bo_access_for_stage(st));
- return rsrc->bo->gpu;
+
+ /* Alignment gauranteed by PIPE_CAP_CONSTANT_BUFFER_OFFSET_ALIGNMENT */
+ return rsrc->bo->gpu + cb->buffer_offset;
} else if (cb->user_buffer) {
- return panfrost_upload_transient(batch, cb->user_buffer, cb->buffer_size);
+ return panfrost_upload_transient(batch, cb->user_buffer + cb->buffer_offset, cb->buffer_size);
} else {
unreachable("No constant buffer");
}
More information about the mesa-commit
mailing list