Mesa (master): r600g: set tiling bits in hw state

Dave Airlie airlied at kemper.freedesktop.org
Sun Oct 17 23:25:59 UTC 2010


Module: Mesa
Branch: master
Commit: 5b966f58e3d87fc271cc429be969cf98eec991ca
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5b966f58e3d87fc271cc429be969cf98eec991ca

Author: Dave Airlie <airlied at redhat.com>
Date:   Fri Oct  8 11:57:04 2010 +1000

r600g: set tiling bits in hw state

---

 src/gallium/drivers/r600/r600_state.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_state.c b/src/gallium/drivers/r600/r600_state.c
index 2c0a200..00234f9 100644
--- a/src/gallium/drivers/r600/r600_state.c
+++ b/src/gallium/drivers/r600/r600_state.c
@@ -657,6 +657,10 @@ static struct pipe_sampler_view *r600_create_sampler_view(struct pipe_context *c
 		bo[1] = rbuffer->bo;
 	}
 	pitch = align(tmp->pitch_in_pixels[0], 8);
+	if (tmp->tiled) {
+		array_mode = tmp->array_mode;
+		tile_type = tmp->tile_type;
+	}
 
 	/* FIXME properly handle first level != 0 */
 	r600_pipe_state_add_reg(rstate, R_038000_RESOURCE0_WORD0,
@@ -957,6 +961,7 @@ static void r600_cb(struct r600_pipe_context *rctx, struct r600_pipe_state *rsta
 	swap = r600_translate_colorswap(rtex->resource.base.b.format);
 	color_info = S_0280A0_FORMAT(format) |
 		S_0280A0_COMP_SWAP(swap) |
+		S_0280A0_ARRAY_MODE(rtex->array_mode);
 		S_0280A0_BLEND_CLAMP(1) |
 		S_0280A0_NUMBER_TYPE(ntype);
 	if (desc->colorspace != UTIL_FORMAT_COLORSPACE_ZS) 




More information about the mesa-commit mailing list