From fd360c82f0b7c4e5bf84f301280a2ba2e6955543 Mon Sep 17 00:00:00 2001 From: Rob Clark Date: Fri, 22 Feb 2019 13:09:25 -0500 Subject: freedreno/a6xx: cube image fix Note that emit_intrinsic_load_image() already swaps a .3d flag with an .a flag. I tried doing things the other way around (going back to .3d) but that didn't work. And treating cube images as 2d array is also what blob does, so let's just go with that. Fixes dEQP-GLES31.functional.image_load_store.cube.load_store.* Signed-off-by: Rob Clark --- src/gallium/drivers/freedreno/a6xx/fd6_image.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_image.c b/src/gallium/drivers/freedreno/a6xx/fd6_image.c index d41a8887a53..5683612c51c 100644 --- a/src/gallium/drivers/freedreno/a6xx/fd6_image.c +++ b/src/gallium/drivers/freedreno/a6xx/fd6_image.c @@ -70,6 +70,10 @@ static void translate_image(struct fd6_image *img, const struct pipe_image_view img->cpp = rsc->cpp; img->bo = rsc->bo; + /* Treat cube textures as 2d-array: */ + if (img->type == A6XX_TEX_CUBE) + img->type = A6XX_TEX_2D; + if (prsc->target == PIPE_BUFFER) { img->buffer = true; img->offset = pimg->u.buf.offset; -- cgit v1.2.3