From a043ae8e249ce2c1c5df947434ffc76e654b5fe0 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Tapani=20P=C3=A4lli?= Date: Tue, 14 Feb 2023 11:23:29 +0200 Subject: [PATCH] iris: implement emission of 3DSTATE_HS for Wa_1306463417 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit We need to emit 3DSTATE_HS for each primitive with tessellation. Signed-off-by: Tapani Pälli Reviewed-by: Lionel Landwerlin Part-of: --- src/gallium/drivers/iris/iris_state.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/gallium/drivers/iris/iris_state.c b/src/gallium/drivers/iris/iris_state.c index 4dee0bc..b9b7e6f 100644 --- a/src/gallium/drivers/iris/iris_state.c +++ b/src/gallium/drivers/iris/iris_state.c @@ -7126,6 +7126,13 @@ iris_upload_render_state(struct iris_context *ice, batch->contains_draw_with_next_seqno = true; } + /* Wa_1306463417 - Send HS state for every primitive on gfx11. + * We implement this by setting TCS dirty on each draw. + */ + if (GFX_VER == 11 && ice->shaders.prog[MESA_SHADER_TESS_CTRL]) { + ice->state.stage_dirty |= IRIS_STAGE_DIRTY_TCS; + } + iris_upload_dirty_render_state(ice, batch, draw); if (draw->index_size > 0) { -- 2.7.4