|
@@ -188,8 +188,6 @@ static void cik_sdma_ring_set_wptr(struct amdgpu_ring *ring)
|
|
|
WREG32(mmSDMA0_GFX_RB_WPTR + sdma_offsets[me], (ring->wptr << 2) & 0x3fffc);
|
|
|
}
|
|
|
|
|
|
-static void cik_sdma_hdp_flush_ring_emit(struct amdgpu_ring *);
|
|
|
-
|
|
|
/**
|
|
|
* cik_sdma_ring_emit_ib - Schedule an IB on the DMA engine
|
|
|
*
|
|
@@ -204,9 +202,6 @@ static void cik_sdma_ring_emit_ib(struct amdgpu_ring *ring,
|
|
|
u32 extra_bits = (ib->vm ? ib->vm->ids[ring->idx].id : 0) & 0xf;
|
|
|
u32 next_rptr = ring->wptr + 5;
|
|
|
|
|
|
- if (ib->flush_hdp_writefifo)
|
|
|
- next_rptr += 6;
|
|
|
-
|
|
|
while ((next_rptr & 7) != 4)
|
|
|
next_rptr++;
|
|
|
|
|
@@ -217,11 +212,6 @@ static void cik_sdma_ring_emit_ib(struct amdgpu_ring *ring,
|
|
|
amdgpu_ring_write(ring, 1); /* number of DWs to follow */
|
|
|
amdgpu_ring_write(ring, next_rptr);
|
|
|
|
|
|
- if (ib->flush_hdp_writefifo) {
|
|
|
- /* flush HDP */
|
|
|
- cik_sdma_hdp_flush_ring_emit(ring);
|
|
|
- }
|
|
|
-
|
|
|
/* IB packet must end on a 8 DW boundary */
|
|
|
while ((ring->wptr & 7) != 4)
|
|
|
amdgpu_ring_write(ring, SDMA_PACKET(SDMA_OPCODE_NOP, 0, 0));
|
|
@@ -233,13 +223,13 @@ static void cik_sdma_ring_emit_ib(struct amdgpu_ring *ring,
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * cik_sdma_hdp_flush_ring_emit - emit an hdp flush on the DMA ring
|
|
|
+ * cik_sdma_ring_emit_hdp_flush - emit an hdp flush on the DMA ring
|
|
|
*
|
|
|
* @ring: amdgpu ring pointer
|
|
|
*
|
|
|
* Emit an hdp flush packet on the requested DMA ring.
|
|
|
*/
|
|
|
-static void cik_sdma_hdp_flush_ring_emit(struct amdgpu_ring *ring)
|
|
|
+static void cik_sdma_ring_emit_hdp_flush(struct amdgpu_ring *ring)
|
|
|
{
|
|
|
u32 extra_bits = (SDMA_POLL_REG_MEM_EXTRA_OP(1) |
|
|
|
SDMA_POLL_REG_MEM_EXTRA_FUNC(3)); /* == */
|
|
@@ -1317,6 +1307,7 @@ static const struct amdgpu_ring_funcs cik_sdma_ring_funcs = {
|
|
|
.emit_fence = cik_sdma_ring_emit_fence,
|
|
|
.emit_semaphore = cik_sdma_ring_emit_semaphore,
|
|
|
.emit_vm_flush = cik_sdma_ring_emit_vm_flush,
|
|
|
+ .emit_hdp_flush = cik_sdma_ring_emit_hdp_flush,
|
|
|
.test_ring = cik_sdma_ring_test_ring,
|
|
|
.test_ib = cik_sdma_ring_test_ib,
|
|
|
.is_lockup = cik_sdma_ring_is_lockup,
|