[Mesa-dev] [PATCH 1/3] radeonsi: return Z_INVALID if the Z buffer is invalid
Christian König
deathsimple at vodafone.de
Wed Nov 14 11:44:30 PST 2012
On 14.11.2012 20:14, alexdeucher at gmail.com wrote:
> From: Alex Deucher <alexander.deucher at amd.com>
>
> setting the DB format to Z_INVALID disables the depth buffer.
>
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
For this series:
Reviewed-by: Christian König <christian.koenig at amd.com>
> ---
> src/gallium/drivers/radeonsi/si_state.c | 10 +++-------
> 1 files changed, 3 insertions(+), 7 deletions(-)
>
> diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c
> index e7a4005..1f76788 100644
> --- a/src/gallium/drivers/radeonsi/si_state.c
> +++ b/src/gallium/drivers/radeonsi/si_state.c
> @@ -1109,7 +1109,7 @@ static uint32_t si_translate_dbformat(enum pipe_format format)
> case PIPE_FORMAT_Z32_FLOAT_S8X24_UINT:
> return V_028040_Z_32_FLOAT;
> default:
> - return ~0U;
> + return V_028040_Z_INVALID;
> }
> }
>
> @@ -1438,7 +1438,7 @@ static bool si_is_colorbuffer_format_supported(enum pipe_format format)
>
> static bool si_is_zs_format_supported(enum pipe_format format)
> {
> - return si_translate_dbformat(format) != ~0U;
> + return si_translate_dbformat(format) != V_028040_Z_INVALID;
> }
>
> boolean si_is_format_supported(struct pipe_screen *screen,
> @@ -1739,12 +1739,8 @@ static void si_db(struct r600_context *rctx, struct si_pm4_state *pm4,
> S_028008_SLICE_MAX(state->zsbuf->u.tex.last_layer));
>
> si_pm4_set_reg(pm4, R_02803C_DB_DEPTH_INFO, 0x1);
> - if (format != ~0U) {
> - si_pm4_set_reg(pm4, R_028040_DB_Z_INFO, z_info);
>
> - } else {
> - si_pm4_set_reg(pm4, R_028040_DB_Z_INFO, 0);
> - }
> + si_pm4_set_reg(pm4, R_028040_DB_Z_INFO, z_info);
>
> if (rtex->surface.flags & RADEON_SURF_SBUFFER) {
> si_pm4_set_reg(pm4, R_028044_DB_STENCIL_INFO, s_info);
More information about the mesa-dev
mailing list