diff --git a/.pick_status.json b/.pick_status.json index e80627e84ba..caf5f3432d2 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -985,7 +985,7 @@ "description": "anv: disable mesh/task for generated draws", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "c950fe97a05ef54e8298544a4582d21e524ada08" }, diff --git a/src/intel/vulkan/genX_cmd_draw_generated_indirect.h b/src/intel/vulkan/genX_cmd_draw_generated_indirect.h index fa60ab49ef1..370213d3c76 100644 --- a/src/intel/vulkan/genX_cmd_draw_generated_indirect.h +++ b/src/intel/vulkan/genX_cmd_draw_generated_indirect.h @@ -143,6 +143,14 @@ genX(cmd_buffer_emit_generate_draws_pipeline)(struct anv_cmd_buffer *cmd_buffer) anv_batch_emit(batch, GENX(3DSTATE_TE), te); anv_batch_emit(batch, GENX(3DSTATE_DS), DS); +#if GFX_VERx10 >= 125 + if (device->vk.enabled_extensions.NV_mesh_shader || + device->vk.enabled_extensions.EXT_mesh_shader) { + anv_batch_emit(batch, GENX(3DSTATE_MESH_CONTROL), mesh); + anv_batch_emit(batch, GENX(3DSTATE_TASK_CONTROL), task); + } +#endif + anv_batch_emit(batch, GENX(3DSTATE_STREAMOUT), so); anv_batch_emit(batch, GENX(3DSTATE_GS), gs);