Merge drm/drm-next into drm-intel-gt-next
[sfrench/cifs-2.6.git] / drivers / gpu / drm / i915 / gt / intel_workarounds.c
index 6ea453ddd011693ae73fdfabdd60bd1ceab27174..b925ef47304b6df284e361e5b2a56038e14df175 100644 (file)
@@ -2971,6 +2971,25 @@ general_render_compute_wa_init(struct intel_engine_cs *engine, struct i915_wa_li
 
        add_render_compute_tuning_settings(i915, wal);
 
+       if (GRAPHICS_VER(i915) >= 11) {
+               /* This is not a Wa (although referred to as
+                * WaSetInidrectStateOverride in places), this allows
+                * applications that reference sampler states through
+                * the BindlessSamplerStateBaseAddress to have their
+                * border color relative to DynamicStateBaseAddress
+                * rather than BindlessSamplerStateBaseAddress.
+                *
+                * Otherwise SAMPLER_STATE border colors have to be
+                * copied in multiple heaps (DynamicStateBaseAddress &
+                * BindlessSamplerStateBaseAddress)
+                *
+                * BSpec: 46052
+                */
+               wa_mcr_masked_en(wal,
+                                GEN10_SAMPLER_MODE,
+                                GEN11_INDIRECT_STATE_BASE_ADDR_OVERRIDE);
+       }
+
        if (IS_MTL_GRAPHICS_STEP(i915, M, STEP_B0, STEP_FOREVER) ||
            IS_MTL_GRAPHICS_STEP(i915, P, STEP_B0, STEP_FOREVER))
                /* Wa_14017856879 */