drm/amdgpu: cleanup HDP flush handling
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com>
Reviewed-by: Monk Liu <monk.liu@amd.com>
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
index f2442b2..66c66f8 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
@@ -143,7 +143,6 @@
struct amdgpu_ib *ib = &ibs[0];
unsigned i;
int r = 0;
- bool flush_hdp = true;
if (num_ibs == 0)
return -EINVAL;
@@ -185,6 +184,9 @@
ib->gws_base, ib->gws_size,
ib->oa_base, ib->oa_size);
+ if (ring->funcs->emit_hdp_flush)
+ amdgpu_ring_emit_hdp_flush(ring);
+
for (i = 0; i < num_ibs; ++i) {
ib = &ibs[i];
@@ -192,8 +194,6 @@
amdgpu_ring_unlock_undo(ring);
return -EINVAL;
}
- ib->flush_hdp_writefifo = flush_hdp;
- flush_hdp = false;
amdgpu_ring_emit_ib(ring, ib);
}