[Mesa-dev] [PATCH v2 0/5] i965: ASTC5x5 workaround

kevin.rogovin at intel.com kevin.rogovin at intel.com
Thu Dec 14 17:39:46 UTC 2017


From: Kevin Rogovin <kevin.rogovin at intel.com>

This patch series implements a needed workaround for Gen9 for ASTC5x5
sampler reads. The crux of the work around is to make sure that the
sampler does not read an ASTC5x5 texture and a surface with an auxilary
buffer without having a texture cache invalidate and command streamer
stall between such accesses.

With this patch series applied to the (current) master branch of mesa,
carchase works on my SKL GT4.

v2:
  Rename workaround functions from brw_ to gen9_
  (suggested/requested by Topi Pohjolainen).

  Place texture resolve to avoid using auxilary surface
  when ASTC5x5 is detected in brw_predraw_resolve_inputs()
  instead of another detected function; doing so allows
  one to avoid walking the textures again.
  (suggested/requested by Topi Pohjolainen).

  Emit command streamer stall in addition to texture
  invalidate.
  (original short-coming caught by Jason Ekstrand)

  Place workaround function in (new) dedicated file.

  Minor path re-ordering to accomodate changes.

Kevin Rogovin (5):
  i965: define astx5x5 workaround infrastructure
  i965: set ASTC5x5 workaround texture type tracking on texture validate
  i965: use ASTC5x5 workaround in brw_draw
  i965: use ASTC5x5 workaround in brw_compute
  i965: ASTC5x5 workaround logic for blorp

 src/mesa/drivers/dri/i965/Makefile.sources       |  1 +
 src/mesa/drivers/dri/i965/brw_compute.c          |  6 ++++
 src/mesa/drivers/dri/i965/brw_context.c          |  6 ++++
 src/mesa/drivers/dri/i965/brw_context.h          | 24 ++++++++++++++++
 src/mesa/drivers/dri/i965/brw_draw.c             | 16 +++++++++--
 src/mesa/drivers/dri/i965/brw_wm_surface_state.c |  5 ++++
 src/mesa/drivers/dri/i965/gen9_astc5x5_wa.c      | 36 ++++++++++++++++++++++++
 src/mesa/drivers/dri/i965/genX_blorp_exec.c      |  5 ++++
 src/mesa/drivers/dri/i965/intel_batchbuffer.c    |  1 +
 src/mesa/drivers/dri/i965/intel_tex_image.c      | 16 ++++++++---
 src/mesa/drivers/dri/i965/intel_tex_validate.c   | 13 +++++++++
 src/mesa/drivers/dri/i965/meson.build            |  1 +
 12 files changed, 124 insertions(+), 6 deletions(-)
 create mode 100644 src/mesa/drivers/dri/i965/gen9_astc5x5_wa.c

-- 
2.7.4



More information about the mesa-dev mailing list