diff options
author | Jason Ekstrand <[email protected]> | 2016-06-09 15:08:13 -0700 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2016-06-22 12:26:43 -0700 |
commit | ce24097abe1427463ac300a686e4c36ea07464fc (patch) | |
tree | 84732da88b8d44cc407da7f2727793af1cf543d1 | |
parent | f47e23a8b6abd3bbc1d2d60c023c5a7ffaf70d72 (diff) |
isl/state: Don't set SurfacePitch for gen9 1-D textures
This field is ignored by the hardware in this case and, on very large 1-D
textures, it can end up being larger than the maximum allowed value.
Reviewed-by: Chad Versace <[email protected]>
Cc: "12.0" <[email protected]>
-rw-r--r-- | src/intel/isl/isl_surface_state.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/intel/isl/isl_surface_state.c b/src/intel/isl/isl_surface_state.c index 9569c3ef44f..15b2fa9cadc 100644 --- a/src/intel/isl/isl_surface_state.c +++ b/src/intel/isl/isl_surface_state.c @@ -313,6 +313,9 @@ isl_genX(surf_fill_state_s)(const struct isl_device *dev, void *state, * two rows interleaved." */ s.SurfacePitch = info->surf->row_pitch * 2 - 1; + } else if (info->surf->dim_layout == ISL_DIM_LAYOUT_GEN9_1D) { + /* For gen9 1-D textures, surface pitch is ignored */ + s.SurfacePitch = 0; } else { s.SurfacePitch = info->surf->row_pitch - 1; } |