mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 13:58:04 +02:00
freedreno/a5xx: call fd5_emit_ib() directly from fd5
Signed-off-by: Rob Clark <robdclark@chromium.org>
This commit is contained in:
parent
50e15e1c6f
commit
eb45422c5f
3 changed files with 16 additions and 16 deletions
|
|
@ -1099,20 +1099,6 @@ t7 opcode: CP_WAIT_FOR_IDLE (26) (1 dwords)
|
|||
OUT_RING(ring, 0x00000000);
|
||||
}
|
||||
|
||||
static void
|
||||
fd5_emit_ib(struct fd_ringbuffer *ring, struct fd_ringbuffer *target)
|
||||
{
|
||||
/* for debug after a lock up, write a unique counter value
|
||||
* to scratch6 for each IB, to make it easier to match up
|
||||
* register dumps to cmdstream. The combination of IB and
|
||||
* DRAW (scratch7) is enough to "triangulate" the particular
|
||||
* draw that caused lockup.
|
||||
*/
|
||||
emit_marker5(ring, 6);
|
||||
__OUT_IB5(ring, target);
|
||||
emit_marker5(ring, 6);
|
||||
}
|
||||
|
||||
static void
|
||||
fd5_mem_to_mem(struct fd_ringbuffer *ring, struct pipe_resource *dst,
|
||||
unsigned dst_off, struct pipe_resource *src, unsigned src_off,
|
||||
|
|
|
|||
|
|
@ -200,4 +200,18 @@ void fd5_emit_restore(struct fd_batch *batch, struct fd_ringbuffer *ring);
|
|||
|
||||
void fd5_emit_init(struct pipe_context *pctx);
|
||||
|
||||
static inline void
|
||||
fd5_emit_ib(struct fd_ringbuffer *ring, struct fd_ringbuffer *target)
|
||||
{
|
||||
/* for debug after a lock up, write a unique counter value
|
||||
* to scratch6 for each IB, to make it easier to match up
|
||||
* register dumps to cmdstream. The combination of IB and
|
||||
* DRAW (scratch7) is enough to "triangulate" the particular
|
||||
* draw that caused lockup.
|
||||
*/
|
||||
emit_marker5(ring, 6);
|
||||
__OUT_IB5(ring, target);
|
||||
emit_marker5(ring, 6);
|
||||
}
|
||||
|
||||
#endif /* FD5_EMIT_H */
|
||||
|
|
|
|||
|
|
@ -345,7 +345,7 @@ emit_binning_pass(struct fd_batch *batch)
|
|||
A5XX_RB_WINDOW_OFFSET_Y(0));
|
||||
|
||||
/* emit IB to binning drawcmds: */
|
||||
ctx->emit_ib(ring, batch->binning);
|
||||
fd5_emit_ib(ring, batch->binning);
|
||||
|
||||
fd_reset_wfi(batch);
|
||||
|
||||
|
|
@ -376,7 +376,7 @@ fd5_emit_tile_init(struct fd_batch *batch)
|
|||
fd5_emit_restore(batch, ring);
|
||||
|
||||
if (batch->lrz_clear)
|
||||
ctx->emit_ib(ring, batch->lrz_clear);
|
||||
fd5_emit_ib(ring, batch->lrz_clear);
|
||||
|
||||
fd5_emit_lrz_flush(ring);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue