mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-08 17:10:11 +01:00
i965/gen4: Subtract 1 from buffer sizes
The PRM states that the values put in Width, Height, and Depth should be
various bits from the value size - 1. We seem to have done this wrong
more-or-less from the start.
Reviewed-by: Chad Versace <chad.versace@intel.com>
Cc: "11.1 11.2 12.0" <mesa-stable@lists.freedesktop.org>
(cherry picked from commit 2a1cc94d27)
This commit is contained in:
parent
2681454102
commit
69234ef45e
1 changed files with 3 additions and 3 deletions
|
|
@ -262,9 +262,9 @@ gen4_emit_buffer_surface_state(struct brw_context *brw,
|
|||
surface_format << BRW_SURFACE_FORMAT_SHIFT |
|
||||
(brw->gen >= 6 ? BRW_SURFACE_RC_READ_WRITE : 0);
|
||||
surf[1] = (bo ? bo->offset64 : 0) + buffer_offset; /* reloc */
|
||||
surf[2] = (buffer_size & 0x7f) << BRW_SURFACE_WIDTH_SHIFT |
|
||||
((buffer_size >> 7) & 0x1fff) << BRW_SURFACE_HEIGHT_SHIFT;
|
||||
surf[3] = ((buffer_size >> 20) & 0x7f) << BRW_SURFACE_DEPTH_SHIFT |
|
||||
surf[2] = ((buffer_size - 1) & 0x7f) << BRW_SURFACE_WIDTH_SHIFT |
|
||||
(((buffer_size - 1) >> 7) & 0x1fff) << BRW_SURFACE_HEIGHT_SHIFT;
|
||||
surf[3] = (((buffer_size - 1) >> 20) & 0x7f) << BRW_SURFACE_DEPTH_SHIFT |
|
||||
(pitch - 1) << BRW_SURFACE_PITCH_SHIFT;
|
||||
|
||||
/* Emit relocation to surface contents. The 965 PRM, Volume 4, section
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue