diff --git a/src/broadcom/vulkan/v3dv_pipeline.c b/src/broadcom/vulkan/v3dv_pipeline.c index e12bcfb04d5..04143e5f0c8 100644 --- a/src/broadcom/vulkan/v3dv_pipeline.c +++ b/src/broadcom/vulkan/v3dv_pipeline.c @@ -2966,11 +2966,12 @@ pipeline_init(struct v3dv_pipeline *pipeline, */ assert(!ds_info || !ds_info->depthBoundsTestEnable); + enable_depth_bias(pipeline, rs_info); + v3dv_X(device, pipeline_pack_state)(pipeline, cb_info, ds_info, rs_info, pv_info, ls_info, ms_info); - enable_depth_bias(pipeline, rs_info); pipeline_set_sample_mask(pipeline, ms_info); pipeline_set_sample_rate_shading(pipeline, ms_info); diff --git a/src/broadcom/vulkan/v3dvx_pipeline.c b/src/broadcom/vulkan/v3dvx_pipeline.c index ad904eb20b0..45aec26234f 100644 --- a/src/broadcom/vulkan/v3dvx_pipeline.c +++ b/src/broadcom/vulkan/v3dvx_pipeline.c @@ -164,7 +164,11 @@ pack_cfg_bits(struct v3dv_pipeline *pipeline, config.clockwise_primitives = rs_info ? rs_info->frontFace == VK_FRONT_FACE_COUNTER_CLOCKWISE : false; - config.enable_depth_offset = rs_info ? rs_info->depthBiasEnable: false; + /* Even if rs_info->depthBiasEnabled is true, we can decide to not + * enable it, like if there isn't a depth/stencil attachment with the + * pipeline. + */ + config.enable_depth_offset = pipeline->depth_bias.enabled; /* This is required to pass line rasterization tests in CTS while * exposing, at least, a minimum of 4-bits of subpixel precision