Mesa (staging/18.2): vc4: Respect a sampler view's first_layer field.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Aug 9 00:50:36 UTC 2018


Module: Mesa
Branch: staging/18.2
Commit: adfbf1fe84e2777b7ad55a60625e478469a06d05
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=adfbf1fe84e2777b7ad55a60625e478469a06d05

Author: Eric Anholt <eric at anholt.net>
Date:   Tue Aug  7 12:59:14 2018 -0700

vc4: Respect a sampler view's first_layer field.

Fixes texturing from EGL images created from cubemap faces, as in
dEQP-EGL.functional.image.create.gles2_cubemap_negative_x_rgba_texture

Cc: mesa-stable at lists.freedesktop.org
(cherry picked from commit 9ab6912a00ec29f5d1d9cebc7d3e32ae235419e8)

---

 src/gallium/drivers/vc4/vc4_state.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/vc4/vc4_state.c b/src/gallium/drivers/vc4/vc4_state.c
index 408a9e0af2..1e4657a792 100644
--- a/src/gallium/drivers/vc4/vc4_state.c
+++ b/src/gallium/drivers/vc4/vc4_state.c
@@ -614,7 +614,9 @@ vc4_create_sampler_view(struct pipe_context *pctx, struct pipe_resource *prsc,
         }
 
         so->texture_p0 =
-                (VC4_SET_FIELD(rsc->slices[0].offset >> 12, VC4_TEX_P0_OFFSET) |
+                (VC4_SET_FIELD((rsc->slices[0].offset +
+                                cso->u.tex.first_layer *
+                                rsc->cube_map_stride) >> 12, VC4_TEX_P0_OFFSET) |
                  VC4_SET_FIELD(rsc->vc4_format & 15, VC4_TEX_P0_TYPE) |
                  VC4_SET_FIELD(so->force_first_level ?
                                cso->u.tex.last_level :




More information about the mesa-commit mailing list