summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2018-01-24 12:13:53 +1100
committerEric Anholt <eric@anholt.net>2018-02-01 11:02:29 -0800
commit06858c73485951c931bfec3a74d0117d26116905 (patch)
tree40275a0ae5e2bea3be40b503b17cf2d461ff61db
parent5329f35ea12fe70e9eff131b60979b810cbc5028 (diff)
broadcom/vc5: Fix image_h setup for both loads and stores.
The image_h for the tiling algorithm needs to be the padded-to-a-uifblock height of the level, not the unpadded height or the height of level 0. Fixes some cases of KHR-GLES3.texture_repeat_mode.* and depthstencil-render-miplevels.
-rw-r--r--src/gallium/drivers/vc5/vc5_resource.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/gallium/drivers/vc5/vc5_resource.c b/src/gallium/drivers/vc5/vc5_resource.c
index f37ffe928f..e2fe2826c2 100644
--- a/src/gallium/drivers/vc5/vc5_resource.c
+++ b/src/gallium/drivers/vc5/vc5_resource.c
@@ -133,8 +133,7 @@ vc5_resource_transfer_unmap(struct pipe_context *pctx,
slice->stride,
trans->map, ptrans->stride,
slice->tiling, rsc->cpp,
- u_minify(rsc->base.height0,
- ptrans->level),
+ slice->size / slice->stride,
&ptrans->box);
}
free(trans->map);
@@ -265,7 +264,7 @@ vc5_resource_transfer_map(struct pipe_context *pctx,
ptrans->box.z * rsc->cube_map_stride,
slice->stride,
slice->tiling, rsc->cpp,
- rsc->base.height0,
+ slice->size / slice->stride,
&ptrans->box);
}
return trans->map;