i965: do not fallback to linear tiling for stencil surfaces
authorIago Toral Quiroga <itoral@igalia.com>
Thu, 7 Sep 2017 10:56:27 +0000 (12:56 +0200)
committerIago Toral Quiroga <itoral@igalia.com>
Tue, 12 Sep 2017 06:09:45 +0000 (08:09 +0200)
commitab6f874439943837c06d3346385f75145e6d2775
treeeb551003af702e8d16bc40be37c6376f8ff5f3f6
parent806ae6a648326327ead48d1b9aec6f44f74f06f9
i965: do not fallback to linear tiling for stencil surfaces

We were skipping this fallback for depth, but not for stencil
which the hardware always requires to be W-tiled.

Also, make the checks for whether we need to apply retiling
strategies based on usage instead of tiling flags, which is
safer and more explicit.

This fixes a regression in a CTS test introduced with commit
4ea63fab77f0 that started applying re-tiling stencil surfaces
in certain scenarios.

v2: discard retiling based on usage fields instead of tiling
    flags. This is safer and more explicit.

v3: Add a comment indicating that texturing of stencil in gen7
    requires an Y-tiled copy (Topi).

Fixes:
KHR-GL45.direct_state_access.renderbuffers_storage

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
src/mesa/drivers/dri/i965/intel_mipmap_tree.c