i965: Force X-tiling for 128 bpp formats on Sandybridge.
128 bpp formats are not allowed to be Y-tiled on any architectures except Gen7. +11 Piglits on Sandybridge (mostly regression fixes since the switch to Y-tiling). Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=63867 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=64261 Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Chad Versace <chad.versace@linux.intel.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Cc: "9.2" <mesa-stable@lists.freedesktop.org>
This commit is contained in:
@@ -468,6 +468,15 @@ intel_miptree_choose_tiling(struct brw_context *brw,
|
||||
if (brw->gen < 6)
|
||||
return I915_TILING_X;
|
||||
|
||||
/* From the Sandybridge PRM, Volume 1, Part 2, page 32:
|
||||
* "NOTE: 128BPE Format Color Buffer ( render target ) MUST be either TileX
|
||||
* or Linear."
|
||||
* 128 bits per pixel translates to 16 bytes per pixel. This is necessary
|
||||
* all the way back to 965, but is explicitly permitted on Gen7.
|
||||
*/
|
||||
if (brw->gen != 7 && mt->cpp >= 16)
|
||||
return I915_TILING_X;
|
||||
|
||||
return I915_TILING_Y | I915_TILING_X;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user