diff --git a/src/gallium/drivers/panfrost/pan_cmdstream.c b/src/gallium/drivers/panfrost/pan_cmdstream.c index a1bf4c108e8..8cf8aa83032 100644 --- a/src/gallium/drivers/panfrost/pan_cmdstream.c +++ b/src/gallium/drivers/panfrost/pan_cmdstream.c @@ -4357,6 +4357,14 @@ prepare_shader(struct panfrost_shader_state *state, pan_pack(out, RENDERER_STATE, cfg) { pan_shader_prepare_rsd(&state->info, state->bin.gpu, &cfg); + +#if PAN_ARCH >= 6 + /* Match the mesa/st convention. If this needs to be flipped, + * nir_lower_pntc_ytransform will do so. + */ + if (state->info.stage == MESA_SHADER_FRAGMENT) + cfg.properties.point_sprite_coord_origin_max_y = true; +#endif } #else assert(upload); diff --git a/src/panfrost/ci/deqp-panfrost-g52-vk.toml b/src/panfrost/ci/deqp-panfrost-g52-vk.toml index 0cd46e9924c..a0775789ce9 100644 --- a/src/panfrost/ci/deqp-panfrost-g52-vk.toml +++ b/src/panfrost/ci/deqp-panfrost-g52-vk.toml @@ -16,6 +16,7 @@ include = [ "dEQP-VK.glsl.builtin.function.*", "dEQP-VK.glsl.builtin.precision.frexp.*", "dEQP-VK.glsl.builtin.precision.ldexp.*", + "dEQP-VK.glsl.builtin_var.*", "dEQP-VK.glsl.conversions.*", "dEQP-VK.glsl.derivate.*.constant.*", "dEQP-VK.glsl.derivate.*.linear.*", diff --git a/src/panfrost/lib/pan_shader.h b/src/panfrost/lib/pan_shader.h index 8201b32c269..17d920819d1 100644 --- a/src/panfrost/lib/pan_shader.h +++ b/src/panfrost/lib/pan_shader.h @@ -237,10 +237,6 @@ pan_shader_prepare_bifrost_rsd(const struct pan_shader_info *info, rsd->properties.shader_modifies_coverage = info->fs.writes_coverage || info->fs.can_discard; - /* Match the mesa/st convention. If this needs to be flipped, - * nir_lower_pntc_ytransform will do so. */ - rsd->properties.point_sprite_coord_origin_max_y = true; - rsd->properties.allow_forward_pixel_to_be_killed = !info->fs.sidefx;