Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/amdgpu/hdp6.0: do a posting read when flushing HDP

Need to read back to make sure the write goes through.

Cc: David Belanger <david.belanger@amd.com>
Reviewed-by: Frank Min <frank.min@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org

+4 -2
+4 -2
drivers/gpu/drm/amd/amdgpu/hdp_v6_0.c
··· 34 34 static void hdp_v6_0_flush_hdp(struct amdgpu_device *adev, 35 35 struct amdgpu_ring *ring) 36 36 { 37 - if (!ring || !ring->funcs->emit_wreg) 37 + if (!ring || !ring->funcs->emit_wreg) { 38 38 WREG32((adev->rmmio_remap.reg_offset + KFD_MMIO_REMAP_HDP_MEM_FLUSH_CNTL) >> 2, 0); 39 - else 39 + RREG32((adev->rmmio_remap.reg_offset + KFD_MMIO_REMAP_HDP_MEM_FLUSH_CNTL) >> 2); 40 + } else { 40 41 amdgpu_ring_emit_wreg(ring, (adev->rmmio_remap.reg_offset + KFD_MMIO_REMAP_HDP_MEM_FLUSH_CNTL) >> 2, 0); 42 + } 41 43 } 42 44 43 45 static void hdp_v6_0_update_clock_gating(struct amdgpu_device *adev,