zink: work around drivers with broken mesh shader properties

some properties require setting MAX+1, but there are drivers which mistakenly
set 0

cc: mesa-stable

(cherry picked from commit c09d0018a3)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40488>
This commit is contained in:
Mike Blumenkrantz 2026-03-13 12:49:00 -04:00 committed by Eric Engestrom
parent 4a90af4a3b
commit e7b12e5009
2 changed files with 3 additions and 3 deletions

View file

@ -714,7 +714,7 @@
"description": "zink: work around drivers with broken mesh shader properties",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": null,
"notes": null

View file

@ -1206,8 +1206,8 @@ zink_init_screen_caps(struct zink_screen *screen)
caps->mesh.max_mesh_output_vertices = screen->info.mesh_props.maxMeshOutputVertices;
caps->mesh.max_mesh_output_primitives = screen->info.mesh_props.maxMeshOutputPrimitives;
caps->mesh.max_mesh_output_components = screen->info.mesh_props.maxMeshOutputComponents;
caps->mesh.max_mesh_output_layers = screen->info.mesh_props.maxMeshOutputLayers;
caps->mesh.max_mesh_multiview_view_count = screen->info.mesh_props.maxMeshMultiviewViewCount;
caps->mesh.max_mesh_output_layers = MAX2(screen->info.mesh_props.maxMeshOutputLayers, 1);
caps->mesh.max_mesh_multiview_view_count = MAX2(screen->info.mesh_props.maxMeshMultiviewViewCount, 1);
caps->mesh.mesh_output_per_vertex_granularity = screen->info.mesh_props.meshOutputPerVertexGranularity;
caps->mesh.mesh_output_per_primitive_granularity = screen->info.mesh_props.meshOutputPerPrimitiveGranularity;