i965/skl: skip fast clears for certain surface formats
authorBen Widawsky <benjamin.widawsky@intel.com>
Wed, 14 Oct 2015 03:50:21 +0000 (20:50 -0700)
committerBen Widawsky <benjamin.widawsky@intel.com>
Fri, 20 Nov 2015 19:45:32 +0000 (11:45 -0800)
commit6fa1130cd21926cdd4ae86aa12ee3f5c0bb5ba33
treee3dfc1727558a51cdcb390f70d8c829145e6b91a
parent9d94eeb8a42bc78ebd9bb249eff61618d54f92e4
i965/skl: skip fast clears for certain surface formats

Some of the information originally in this commit message is now in the patch
before this.

SKL adds compressible render targets and as a result mutates some of the
programming for fast clears and resolves. There is a new internal surface type
called the CCS. The old AUX_MCS bit becomes AUX_CCS_D. "Auxiliary Surfaces For
Sampled Tiled Resource".

The formats which are supported are defined in the table titled "Render Target
Surface Types [SKL+]". There is no PRM yet to reference. The previously
implemented helper function already does the right thing provided the table is
correct.

v2: Use better English in commit message (Matt)
s/compressable/compressible/ (Matt)
Don't compare bools to true (Matt)
Use the helper function and don't increase the context size - this is mostly
implemented in the patch just before this (Chad, Neil)
Remove an "invalid" assert (Chad)
Fix assertion to check num_samples > 1, instead of num_samples (Chad)

v3:
Use Matt's code as Requested-by: Chad. I didn't even look at it since Chad said
he was fine with that, and presumably Matt is fine with it.

v4: Use better quote from spec (Topi)

Cc: Chad Versace <chad.versace@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
src/mesa/drivers/dri/i965/brw_surface_formats.c
src/mesa/drivers/dri/i965/gen8_surface_state.c