[Mesa-dev] [RFC v2 12/15] i965: correct VALIGN for 2d textures on Skylake
Nanley Chery
nanleychery at gmail.com
Mon Jun 1 10:13:50 PDT 2015
From: Nanley Chery <nanley.g.chery at intel.com>
In agreement with commit 4ab8d59a23, vertical alignment values are equal to
four times the block height on Gen9+.
Signed-off-by: Nanley Chery <nanley.g.chery at intel.com>
---
src/mesa/drivers/dri/i965/brw_tex_layout.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_tex_layout.c b/src/mesa/drivers/dri/i965/brw_tex_layout.c
index dacaad7..5aadd00 100644
--- a/src/mesa/drivers/dri/i965/brw_tex_layout.c
+++ b/src/mesa/drivers/dri/i965/brw_tex_layout.c
@@ -124,9 +124,12 @@ intel_vertical_texture_alignment_unit(struct brw_context *brw,
* Where "*" means either VALIGN_2 or VALIGN_4 depending on the setting of
* the SURFACE_STATE "Surface Vertical Alignment" field.
*/
- if (_mesa_is_format_compressed(format))
+ if (_mesa_is_format_compressed(format)) {
+ unsigned int i, j;
+ _mesa_get_format_block_size(format, &i, &j);
/* See comment above for the horizontal alignment */
- return brw->gen >= 9 ? 16 : 4;
+ return brw->gen >= 9 ? j * 4 : 4;
+ }
if (format == MESA_FORMAT_S_UINT8)
return brw->gen >= 7 ? 8 : 4;
--
2.4.1
More information about the mesa-dev
mailing list