From b55f6279370333574aa11c289f2ad9715cdca24d Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Sun, 8 Aug 2010 19:12:14 +1000 Subject: [PATCH] r300g: take hiz/zmask offsets into a/c when clearing. Need to add a test for multi-hiz/zmask db in a single context. Signed-off-by: Dave Airlie --- src/gallium/drivers/r300/r300_emit.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gallium/drivers/r300/r300_emit.c b/src/gallium/drivers/r300/r300_emit.c index 17e180a79ac..0c40e2db93e 100644 --- a/src/gallium/drivers/r300/r300_emit.c +++ b/src/gallium/drivers/r300/r300_emit.c @@ -1008,6 +1008,8 @@ void r300_emit_hiz_clear(struct r300_context *r300, unsigned size, void *state) int i; tex = r300_texture(fb->zsbuf->texture); + + offset = tex->hiz_mem[fb->zsbuf->level]->ofs; stride = tex->desc.stride_in_pixels[fb->zsbuf->level]; /* convert from pixels to 4x4 blocks */ @@ -1043,6 +1045,8 @@ void r300_emit_zmask_clear(struct r300_context *r300, unsigned size, void *state tex = r300_texture(fb->zsbuf->texture); stride = tex->desc.stride_in_pixels[fb->zsbuf->level]; + offset = tex->zmask_mem[fb->zsbuf->level]->ofs; + if (r300->z_compression == RV350_Z_COMPRESS_88) mult = 8; else -- 2.30.2