Mesa (master): r600g: evergreen CB check for flushed texture

Dave Airlie airlied at kemper.freedesktop.org
Thu Feb 3 23:30:01 UTC 2011


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

Author: Dave Airlie <airlied at redhat.com>
Date:   Fri Feb  4 09:34:32 2011 +1000

r600g: evergreen CB check for flushed texture

---

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

diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c
index 00d5d00..73fa171 100644
--- a/src/gallium/drivers/r600/evergreen_state.c
+++ b/src/gallium/drivers/r600/evergreen_state.c
@@ -647,6 +647,12 @@ static void evergreen_cb(struct r600_pipe_context *rctx, struct r600_pipe_state
 
 	surf = (struct r600_surface *)state->cbufs[cb];
 	rtex = (struct r600_resource_texture*)state->cbufs[cb]->texture;
+
+	if (rtex->depth && !rtex->is_flushing_texture) {
+	        r600_texture_depth_flush(&rctx->context, state->cbufs[cb]->texture, TRUE);
+		rtex = rtex->flushed_depth_texture;
+	}
+
 	rbuffer = &rtex->resource;
 	bo[0] = rbuffer->bo;
 	bo[1] = rbuffer->bo;




More information about the mesa-commit mailing list