[Mesa-dev] [PATCH 0/9] intel/blorp: Refactors, cleanups, and fixes

Jason Ekstrand jason at jlekstrand.net
Tue Feb 20 23:15:18 UTC 2018


This little series makes a bunch of mostly small changes to blorp.  The end
objective is to get to the point where you just call blorp_ccs_op and hand
it an isl_aux_op instead of having different entrypoints for everything.
This is similar to what we do for HiZ.  For MCS, we still have two
functions: blorp_mcs_clear and blorp_mcs_partial_resolve.  Since those are
the only two MCS operations you can do (and partial resolve isn't an actual
hardware op), that seemed ok.

The difficult patch in here is the first one.  I fairly firmly believe it
to be correct but it's a deviation of the docs so it's a bit hard to say.
Unfortunately, it's one of the worst bits of documentation we have for our
GPUs and, as the giant comment explains, it's actually self-contradictory
once you start doing the math.

Jason Ekstrand (9):
  intel/blorp: Only double the fast-clear rect alignment on HSW
  intel/blorp: Use the hardware op for CCS ambiguate on gen10+
  intel/blorp: Rename blorp_ccs_resolve to blorp_ccs_op
  intel/blorp: Simplify asserts in blorp_ccs_op
  anv/blorp: Use blorp_ccs_op for everything
  intel/blorp: Make blorp_ccs_ambiguate just an internal helper
  i965: Use blorp_ccs_op for CCS fast-clears
  intel/blorp: Handle fast-clear directly in blorp_ccs_op
  intel/blorp: Refactor MCS clears

 src/intel/blorp/blorp.h               |  24 ++-
 src/intel/blorp/blorp_clear.c         | 327 ++++++++++++++++++----------------
 src/intel/blorp/blorp_genX_exec.h     |   6 +
 src/intel/vulkan/anv_blorp.c          |  34 +---
 src/mesa/drivers/dri/i965/brw_blorp.c |  18 +-
 5 files changed, 203 insertions(+), 206 deletions(-)

-- 
2.5.0.400.gff86faf



More information about the mesa-dev mailing list