Commit 9792b7cc authored by Alex Deucher's avatar Alex Deucher
Browse files

drm/amdgpu/sdma5.2: use legacy HDP flush for SDMA2/3



This avoids a potential conflict with firmwares with the newer
HDP flush mechanism.

Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
parent fe93b092
Loading
Loading
Loading
Loading
+15 −11
Original line number Diff line number Diff line
@@ -280,6 +280,9 @@ static void sdma_v5_2_ring_emit_hdp_flush(struct amdgpu_ring *ring)
	u32 ref_and_mask = 0;
	const struct nbio_hdp_flush_reg *nbio_hf_reg = adev->nbio.hdp_flush_reg;

	if (ring->me > 1) {
		amdgpu_asic_flush_hdp(adev, ring);
	} else {
		ref_and_mask = nbio_hf_reg->ref_and_mask_sdma0 << ring->me;

		amdgpu_ring_write(ring, SDMA_PKT_HEADER_OP(SDMA_OP_POLL_REGMEM) |
@@ -292,6 +295,7 @@ static void sdma_v5_2_ring_emit_hdp_flush(struct amdgpu_ring *ring)
		amdgpu_ring_write(ring, SDMA_PKT_POLL_REGMEM_DW5_RETRY_COUNT(0xfff) |
				  SDMA_PKT_POLL_REGMEM_DW5_INTERVAL(10)); /* retry count, poll interval */
	}
}

/**
 * sdma_v5_2_ring_emit_fence - emit a fence on the DMA ring