This workaround is needed on all Gfx12.0 parts, but doesn't appear to be
necessary on XeHP. The other drivers do not appear to be applying this
workaround on those parts. As further evidence, we accidentally added
the 3DSTATE_BINDING_TABLE_POOL_ALLOC commands after switching back to
GPGPU mode, which would be an incorrect way to implement the workaround,
and things seem to be working.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14507>
*
* Start with pipeline in 3D mode to set the STATE_BASE_ADDRESS.
*/
-#if GFX_VER == 12
+#if GFX_VERx10 == 120
emit_pipeline_select(batch, _3D);
#else
emit_pipeline_select(batch, GPGPU);
iris_init_common_context(batch);
-#if GFX_VER == 12
+#if GFX_VERx10 == 120
emit_pipeline_select(batch, GPGPU);
#endif
flush_before_state_base_change(batch);
-#if GFX_VER == 12
+#if GFX_VERx10 == 120
/* Wa_1607854226:
*
* Workaround the non pipelined state not applying in MEDIA/GPGPU pipeline
#endif
}
-#if GFX_VER == 12
+#if GFX_VERx10 == 120
/* Wa_1607854226:
*
* Put the pipeline back into compute mode.
anv_debug_dump_pc(pc);
}
-#if GFX_VER == 12
+#if GFX_VERx10 == 120
/* Wa_1607854226:
*
* Workaround the non pipelined state not applying in MEDIA/GPGPU pipeline
# endif
}
-#if GFX_VER == 12
+#if GFX_VERx10 == 120
/* Wa_1607854226:
*
* Put the pipeline back into its current mode.