iris: implement TES distribution mode WA 22012785325
authorAnuj Phogat <anuj.phogat@gmail.com>
Mon, 24 May 2021 18:19:36 +0000 (11:19 -0700)
committerMarge Bot <emma+marge@anholt.net>
Thu, 16 Mar 2023 14:42:53 +0000 (14:42 +0000)
Set TEDMODE_RR_STRICT when TEEnable is set.

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21899>

src/gallium/drivers/iris/iris_state.c

index f4b2790..725c03b 100644 (file)
@@ -4811,7 +4811,10 @@ iris_store_tes_state(const struct intel_device_info *devinfo,
       te.MaximumTessellationFactorOdd = 63.0;
       te.MaximumTessellationFactorNotOdd = 64.0;
 #if GFX_VERx10 >= 125
-      te.TessellationDistributionMode = TEDMODE_RR_FREE;
+      if (intel_needs_workaround(devinfo, 22012785325))
+         te.TessellationDistributionMode = TEDMODE_RR_STRICT;
+      else
+         te.TessellationDistributionMode = TEDMODE_RR_FREE;
       te.TessellationDistributionLevel = TEDLEVEL_PATCH;
       /* 64_TRIANGLES */
       te.SmallPatchThreshold = 3;