From: Jason Ekstrand Date: Fri, 9 Sep 2016 15:57:14 +0000 (-0700) Subject: intel/isl: Allow valign2 for texture-only Y-tiled surfaces on gen7 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=883086500b130e4667108a52bca9f37defcd7564;p=mesa.git intel/isl: Allow valign2 for texture-only Y-tiled surfaces on gen7 The restriction that Y-tiled surfaces must have valign == 4 only aplies to render targets but we were applying it universally. This causes problems if ISL_FORMAT_R32G32B32_FLOAT is used because it requires valign == 2; this should be okay because you can't render to that format. Signed-off-by: Jason Ekstrand Reviewed-by: Chad Versace --- diff --git a/src/intel/isl/isl_gen7.c b/src/intel/isl/isl_gen7.c index 02273f83235..f3d8428d059 100644 --- a/src/intel/isl/isl_gen7.c +++ b/src/intel/isl/isl_gen7.c @@ -354,7 +354,8 @@ gen7_choose_valign_el(const struct isl_device *dev, */ if (isl_surf_usage_is_depth(info->usage) || info->samples > 1 || - tiling == ISL_TILING_Y0) { + ((info->usage & ISL_SURF_USAGE_RENDER_TARGET_BIT) && + tiling == ISL_TILING_Y0)) { require_valign4 = true; }