diff options
Diffstat (limited to 'drivers/gpu')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 8 | 
1 files changed, 4 insertions, 4 deletions
| diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c index fe090eafa366..45fa02063491 100644 --- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c @@ -5400,10 +5400,6 @@ static int gfx_v9_0_ring_preempt_ib(struct amdgpu_ring *ring)  	amdgpu_ring_alloc(ring, 13);  	gfx_v9_0_ring_emit_fence(ring, ring->trail_fence_gpu_addr,  				 ring->trail_seq, AMDGPU_FENCE_FLAG_EXEC | AMDGPU_FENCE_FLAG_INT); -	/*reset the CP_VMID_PREEMPT after trailing fence*/ -	amdgpu_ring_emit_wreg(ring, -			      SOC15_REG_OFFSET(GC, 0, mmCP_VMID_PREEMPT), -			      0x0);  	/* assert IB preemption, emit the trailing fence */  	kiq->pmf->kiq_unmap_queues(kiq_ring, ring, PREEMPT_QUEUES_NO_UNMAP, @@ -5426,6 +5422,10 @@ static int gfx_v9_0_ring_preempt_ib(struct amdgpu_ring *ring)  		DRM_WARN("ring %d timeout to preempt ib\n", ring->idx);  	} +	/*reset the CP_VMID_PREEMPT after trailing fence*/ +	amdgpu_ring_emit_wreg(ring, +			      SOC15_REG_OFFSET(GC, 0, mmCP_VMID_PREEMPT), +			      0x0);  	amdgpu_ring_commit(ring);  	/* deassert preemption condition */ | 
