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. --- src/intel/isl/isl_surface_state.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/src/intel/isl/isl_surface_state.c b/src/intel/isl/isl_surface_state.c index e1159b2..8f223d1 100644 --- a/src/intel/isl/isl_surface_state.c +++ b/src/intel/isl/isl_surface_state.c @@ -298,6 +298,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; } -- 2.5.0.400.gff86faf _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev