From: Lionel Landwerlin Date: Fri, 4 Oct 2019 12:51:54 +0000 (+0300) Subject: intel/isl: set vertical surface alignment on null surfaces X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=12bf1308c41273e9ac9e7a7cdc48c2c594164d60;p=mesa.git intel/isl: set vertical surface alignment on null surfaces Just following the spec. Somewhat unclear whether this applies to NULL surfaces. Signed-off-by: Lionel Landwerlin Reviewed-by: Kenneth Graunke --- diff --git a/src/intel/isl/isl_surface_state.c b/src/intel/isl/isl_surface_state.c index 4f61c1012d9..c1e91ffe963 100644 --- a/src/intel/isl/isl_surface_state.c +++ b/src/intel/isl/isl_surface_state.c @@ -803,6 +803,19 @@ isl_genX(null_fill_state)(void *state, struct isl_extent3d size) #else .TiledSurface = true, .TileWalk = TILEWALK_YMAJOR, +#endif +#if GEN_GEN == 7 + /* According to PRMs: "Volume 4 Part 1: Subsystem and Cores – Shared + * Functions" + * + * RENDER_SURFACE_STATE::Surface Vertical Alignment + * + * "This field must be set to VALIGN_4 for all tiled Y Render Target + * surfaces." + * + * Affect IVB, HSW. + */ + .SurfaceVerticalAlignment = VALIGN_4, #endif .Width = size.width - 1, .Height = size.height - 1,