summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r600/r600_hw_states.c
diff options
context:
space:
mode:
authorTilman Sauerbeck <tilman@code-monkey.de>2010-09-17 12:05:26 +0200
committerTilman Sauerbeck <tilman@code-monkey.de>2010-09-17 12:06:07 +0200
commit5f97d0a218f3509f361504be06f6b307e1b6bb89 (patch)
tree15e382fe7bfa426492710acdfb0ceb7da435b9a8 /src/gallium/drivers/r600/r600_hw_states.c
parent5edb778c1b78ca113de56521dc49f65561dc3949 (diff)
r600g: Added DB_SHADER_CONTROL defines.
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
Diffstat (limited to 'src/gallium/drivers/r600/r600_hw_states.c')
-rw-r--r--src/gallium/drivers/r600/r600_hw_states.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/gallium/drivers/r600/r600_hw_states.c b/src/gallium/drivers/r600/r600_hw_states.c
index 1974b20d86..144946947d 100644
--- a/src/gallium/drivers/r600/r600_hw_states.c
+++ b/src/gallium/drivers/r600/r600_hw_states.c
@@ -362,13 +362,16 @@ static void r600_dsa(struct r600_context *rctx, struct radeon_state *rstate)
}
radeon_state_init(rstate, rscreen->rw, R600_STATE_DSA, 0, 0);
- db_shader_control = 0x210;
+ db_shader_control = 0;
+ db_shader_control |= S_02880C_DUAL_EXPORT_ENABLE(1);
+ db_shader_control |= S_02880C_Z_ORDER(V_02880C_EARLY_Z_THEN_LATE_Z);
+
rshader = &rctx->ps_shader->shader;
if (rshader->uses_kill)
- db_shader_control |= (1 << 6);
+ db_shader_control |= S_02880C_KILL_ENABLE(1);
for (i = 0; i < rshader->noutput; i++) {
if (rshader->output[i].name == TGSI_SEMANTIC_POSITION)
- db_shader_control |= 1;
+ db_shader_control |= S_02880C_Z_EXPORT_ENABLE(1);
}
stencil_ref_mask = 0;
stencil_ref_mask_bf = 0;