summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2016-04-15 15:07:49 -0700
committerEmil Velikov <emil.l.velikov@gmail.com>2016-05-05 11:46:43 +0100
commit08c747374c65a2df5c9acac0ef0539506de1835e (patch)
treeb0882106a388877ba5fd856840faa1793e005cf7
parent68ecc39aba9a3b5aeeb269a60cb1665fc42f8e3c (diff)
vc4: Add support for rendering to cube map surfaces.
We need to fix up the offset to point at the face of the cube. Fixes piglit fbo-cubemap, copyteximage CUBE, and glean's fbo test. Cc: "11.1 11.2" <mesa-stable@lists.freedesktop.org> (cherry picked from commit 48fe53bbb9cc14dd758e7a55c55616be85a3358b)
-rw-r--r--src/gallium/drivers/vc4/vc4_resource.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/vc4/vc4_resource.c b/src/gallium/drivers/vc4/vc4_resource.c
index e7069a4e9ff..0242d9fa9e1 100644
--- a/src/gallium/drivers/vc4/vc4_resource.c
+++ b/src/gallium/drivers/vc4/vc4_resource.c
@@ -588,7 +588,8 @@ vc4_create_surface(struct pipe_context *pctx,
psurf->u.tex.level = level;
psurf->u.tex.first_layer = surf_tmpl->u.tex.first_layer;
psurf->u.tex.last_layer = surf_tmpl->u.tex.last_layer;
- surface->offset = rsc->slices[level].offset;
+ surface->offset = (rsc->slices[level].offset +
+ psurf->u.tex.first_layer * rsc->cube_map_stride);
surface->tiling = rsc->slices[level].tiling;
return &surface->base;