diff --git a/src/freedreno/registers/adreno/a6xx.xml b/src/freedreno/registers/adreno/a6xx.xml
index 749508faed2..b6abf5fda18 100644
--- a/src/freedreno/registers/adreno/a6xx.xml
+++ b/src/freedreno/registers/adreno/a6xx.xml
@@ -2109,7 +2109,7 @@ to upconvert to 32b float internally?
-
+
Z_READ_ENABLE bit is set for zfunc other than GL_ALWAYS or GL_NEVER
also set when Z_BOUNDS_ENABLE is set
diff --git a/src/freedreno/vulkan/tu_pipeline.c b/src/freedreno/vulkan/tu_pipeline.c
index 68b59b65466..e63c12529a5 100644
--- a/src/freedreno/vulkan/tu_pipeline.c
+++ b/src/freedreno/vulkan/tu_pipeline.c
@@ -4123,7 +4123,7 @@ tu_pipeline_builder_parse_depth_stencil(struct tu_pipeline_builder *builder,
A6XX_RB_DEPTH_CNTL_Z_READ_ENABLE; /* TODO: don't set for ALWAYS/NEVER */
if (builder->depth_clip_disable)
- rb_depth_cntl |= A6XX_RB_DEPTH_CNTL_Z_CLIP_DISABLE;
+ rb_depth_cntl |= A6XX_RB_DEPTH_CNTL_Z_CLAMP_ENABLE;
if (ds_info->depthWriteEnable)
rb_depth_cntl |= A6XX_RB_DEPTH_CNTL_Z_WRITE_ENABLE;
diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_emit.c b/src/gallium/drivers/freedreno/a6xx/fd6_emit.c
index d29db74e0d3..3ef63bdccc2 100644
--- a/src/gallium/drivers/freedreno/a6xx/fd6_emit.c
+++ b/src/gallium/drivers/freedreno/a6xx/fd6_emit.c
@@ -1000,11 +1000,11 @@ fd6_emit_non_ring(struct fd_ringbuffer *ring, struct fd6_emit *emit) assert_dt
.vert = guardband_y));
}
- /* The clamp ranges are only used when the rasterizer disables
- * depth clip.
+ /* The clamp ranges are only used when the rasterizer wants depth
+ * clamping.
*/
if ((dirty & (FD_DIRTY_VIEWPORT | FD_DIRTY_RASTERIZER)) &&
- fd_depth_clip_disabled(ctx)) {
+ fd_depth_clamp_enabled(ctx)) {
float zmin, zmax;
util_viewport_zmin_zmax(&ctx->viewport, ctx->rasterizer->clip_halfz,
&zmin, &zmax);
@@ -1054,7 +1054,7 @@ fd6_emit_state(struct fd_ringbuffer *ring, struct fd6_emit *emit)
state = fd6_zsa_state(
ctx,
util_format_is_pure_integer(pipe_surface_format(pfb->cbufs[0])),
- fd_depth_clip_disabled(ctx));
+ fd_depth_clamp_enabled(ctx));
fd_ringbuffer_ref(state);
break;
case FD6_GROUP_LRZ:
diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_zsa.c b/src/gallium/drivers/freedreno/a6xx/fd6_zsa.c
index 5f99822b790..132bc51a8b8 100644
--- a/src/gallium/drivers/freedreno/a6xx/fd6_zsa.c
+++ b/src/gallium/drivers/freedreno/a6xx/fd6_zsa.c
@@ -216,8 +216,8 @@ fd6_zsa_state_create(struct pipe_context *pctx,
OUT_PKT4(ring, REG_A6XX_RB_DEPTH_CNTL, 1);
OUT_RING(ring,
- so->rb_depth_cntl | COND(i & FD6_ZSA_DEPTH_CLIP_DISABLE,
- A6XX_RB_DEPTH_CNTL_Z_CLIP_DISABLE));
+ so->rb_depth_cntl | COND(i & FD6_ZSA_DEPTH_CLAMP,
+ A6XX_RB_DEPTH_CNTL_Z_CLAMP_ENABLE));
OUT_PKT4(ring, REG_A6XX_RB_STENCILMASK, 2);
OUT_RING(ring, so->rb_stencilmask);
diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_zsa.h b/src/gallium/drivers/freedreno/a6xx/fd6_zsa.h
index aa0baa7a5c7..15be91e1bfe 100644
--- a/src/gallium/drivers/freedreno/a6xx/fd6_zsa.h
+++ b/src/gallium/drivers/freedreno/a6xx/fd6_zsa.h
@@ -36,7 +36,7 @@
#include "fd6_context.h"
#define FD6_ZSA_NO_ALPHA (1 << 0)
-#define FD6_ZSA_DEPTH_CLIP_DISABLE (1 << 1)
+#define FD6_ZSA_DEPTH_CLAMP (1 << 1)
struct fd6_zsa_stateobj {
struct pipe_depth_stencil_alpha_state base;
@@ -68,7 +68,7 @@ fd6_zsa_state(struct fd_context *ctx, bool no_alpha, bool depth_clamp) assert_dt
if (no_alpha)
variant |= FD6_ZSA_NO_ALPHA;
if (depth_clamp)
- variant |= FD6_ZSA_DEPTH_CLIP_DISABLE;
+ variant |= FD6_ZSA_DEPTH_CLAMP;
return fd6_zsa_stateobj(ctx->zsa)->stateobj[variant];
}
diff --git a/src/gallium/drivers/freedreno/freedreno_state.h b/src/gallium/drivers/freedreno/freedreno_state.h
index 4917ecf9a74..1890583b5a2 100644
--- a/src/gallium/drivers/freedreno/freedreno_state.h
+++ b/src/gallium/drivers/freedreno/freedreno_state.h
@@ -55,7 +55,7 @@ fd_blend_enabled(struct fd_context *ctx, unsigned n) assert_dt
}
static inline bool
-fd_depth_clip_disabled(struct fd_context *ctx) assert_dt
+fd_depth_clamp_enabled(struct fd_context *ctx) assert_dt
{
return !(ctx->rasterizer->depth_clip_near &&
ctx->rasterizer->depth_clip_far);