diff options
-rw-r--r-- | src/intel/isl/isl_surface_state.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/intel/isl/isl_surface_state.c b/src/intel/isl/isl_surface_state.c index fc7e1bae026..58e9af5f8ee 100644 --- a/src/intel/isl/isl_surface_state.c +++ b/src/intel/isl/isl_surface_state.c @@ -460,8 +460,15 @@ isl_genX(buffer_fill_state_s)(void *state, uint32_t num_elements = info->size / info->stride; if (GEN_GEN >= 7) { + /* From the IVB PRM, SURFACE_STATE::Height, + * + * For typed buffer and structured buffer surfaces, the number + * of entries in the buffer ranges from 1 to 2^27. For raw buffer + * surfaces, the number of entries in the buffer is the number of bytes + * which can range from 1 to 2^30. + */ if (info->format == ISL_FORMAT_RAW) { - assert(num_elements <= (1ull << 31)); + assert(num_elements <= (1ull << 30)); assert((num_elements & 3) == 0); } else { assert(num_elements <= (1ull << 27)); |