mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 20:28:04 +02:00
anv,iris,hasvk: Use ISL_SURF_USAGE_STREAM_OUT_BIT for setting stream-out MOCS
Cc: 23.2 <mesa-stable>
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23823>
(cherry picked from commit 492b07625d)
This commit is contained in:
parent
5626212e30
commit
151f3e9121
6 changed files with 9 additions and 6 deletions
|
|
@ -84,7 +84,7 @@
|
|||
"description": "anv,iris,hasvk: Use ISL_SURF_USAGE_STREAM_OUT_BIT for setting stream-out MOCS",
|
||||
"nominated": true,
|
||||
"nomination_type": 0,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": null,
|
||||
"notes": null
|
||||
|
|
|
|||
|
|
@ -4250,7 +4250,8 @@ iris_set_stream_output_targets(struct pipe_context *ctx,
|
|||
sob.SOBufferEnable = true;
|
||||
sob.StreamOffsetWriteEnable = true;
|
||||
sob.StreamOutputBufferOffsetAddressEnable = true;
|
||||
sob.MOCS = iris_mocs(res->bo, &screen->isl_dev, 0);
|
||||
sob.MOCS = iris_mocs(res->bo, &screen->isl_dev,
|
||||
ISL_SURF_USAGE_STREAM_OUT_BIT);
|
||||
|
||||
sob.SurfaceSize = MAX2(tgt->base.buffer_size / 4, 1) - 1;
|
||||
sob.StreamOutputBufferOffsetAddress =
|
||||
|
|
|
|||
|
|
@ -3500,7 +3500,8 @@ genX(cmd_buffer_flush_gfx_state)(struct anv_cmd_buffer *cmd_buffer)
|
|||
#endif
|
||||
|
||||
if (cmd_buffer->state.xfb_enabled && xfb->buffer && xfb->size != 0) {
|
||||
sob.MOCS = anv_mocs(cmd_buffer->device, xfb->buffer->address.bo, 0);
|
||||
sob.MOCS = anv_mocs(cmd_buffer->device, xfb->buffer->address.bo,
|
||||
ISL_SURF_USAGE_STREAM_OUT_BIT);
|
||||
sob.SurfaceBaseAddress = anv_address_add(xfb->buffer->address,
|
||||
xfb->offset);
|
||||
sob.SOBufferEnable = true;
|
||||
|
|
|
|||
|
|
@ -184,7 +184,7 @@ emit_so_memcpy(struct anv_batch *batch, struct anv_device *device,
|
|||
sob._3DCommandOpcode = 0;
|
||||
sob._3DCommandSubOpcode = SO_BUFFER_INDEX_0_CMD;
|
||||
#endif
|
||||
sob.MOCS = anv_mocs(device, dst.bo, 0),
|
||||
sob.MOCS = anv_mocs(device, dst.bo, ISL_SURF_USAGE_STREAM_OUT_BIT),
|
||||
sob.SurfaceBaseAddress = dst;
|
||||
|
||||
sob.SOBufferEnable = true;
|
||||
|
|
|
|||
|
|
@ -3287,7 +3287,8 @@ genX(cmd_buffer_flush_gfx_state)(struct anv_cmd_buffer *cmd_buffer)
|
|||
sob.SOBufferIndex = idx;
|
||||
|
||||
if (cmd_buffer->state.xfb_enabled && xfb->buffer && xfb->size != 0) {
|
||||
sob.MOCS = anv_mocs(cmd_buffer->device, xfb->buffer->address.bo, 0);
|
||||
sob.MOCS = anv_mocs(cmd_buffer->device, xfb->buffer->address.bo,
|
||||
ISL_SURF_USAGE_STREAM_OUT_BIT);
|
||||
sob.SurfaceBaseAddress = anv_address_add(xfb->buffer->address,
|
||||
xfb->offset);
|
||||
#if GFX_VER >= 8
|
||||
|
|
|
|||
|
|
@ -151,7 +151,7 @@ emit_so_memcpy(struct anv_batch *batch, struct anv_device *device,
|
|||
|
||||
anv_batch_emit(batch, GENX(3DSTATE_SO_BUFFER), sob) {
|
||||
sob.SOBufferIndex = 0;
|
||||
sob.MOCS = anv_mocs(device, dst.bo, 0),
|
||||
sob.MOCS = anv_mocs(device, dst.bo, ISL_SURF_USAGE_STREAM_OUT_BIT),
|
||||
sob.SurfaceBaseAddress = dst;
|
||||
|
||||
#if GFX_VER >= 8
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue