intel/blorp: Add a CCS ambiguation pass
authorJason Ekstrand <jason.ekstrand@intel.com>
Thu, 18 May 2017 03:33:21 +0000 (20:33 -0700)
committerJason Ekstrand <jason.ekstrand@intel.com>
Fri, 9 Feb 2018 00:35:31 +0000 (16:35 -0800)
commit857b5b5a7f7741b5433c59814c66d0612c05ae7d
treedc0ed0bb80ec0d168cc5ea120df71676e1a93658
parent13b621d6fd30b7337844ff53cc8b166d07154a82
intel/blorp: Add a CCS ambiguation pass

This pass performs an "ambiguate" operation on a CCS-compressed surface
by manually writing zeros into the CCS.  On gen8+, ISL gives us a fairly
detailed notion of how the CCS is laid out so this is fairly simple to
do.  On gen7, the CCS tiling is quite crazy but that isn't an issue
because we can only do CCS on single-slice images so we can just blast
over the entire CCS buffer if we want to.

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
src/intel/blorp/blorp.h
src/intel/blorp/blorp_clear.c