diff options
author | Monk Liu <Monk.Liu@amd.com> | 2017-01-17 21:31:18 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2017-01-27 11:13:37 -0500 |
commit | 714fbf80392248170c2e67cd77062e2cab0d8a82 (patch) | |
tree | 9a43ddd9dbba0d0325cbd74471d50920269cc732 /drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c | |
parent | c2ce92fc7912d0eb2f4ae5a40977fa8a0378e796 (diff) |
drm/amdgpu:set cond_exec polling value to 1 in ring_init
no need to set it per ib_schedule(), hw won't override
this polling address.
Signed-off-by: Monk Liu <Monk.Liu@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c index a47628395914..7c842b7f1004 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c | |||
@@ -207,6 +207,8 @@ int amdgpu_ring_init(struct amdgpu_device *adev, struct amdgpu_ring *ring, | |||
207 | } | 207 | } |
208 | ring->cond_exe_gpu_addr = adev->wb.gpu_addr + (ring->cond_exe_offs * 4); | 208 | ring->cond_exe_gpu_addr = adev->wb.gpu_addr + (ring->cond_exe_offs * 4); |
209 | ring->cond_exe_cpu_addr = &adev->wb.wb[ring->cond_exe_offs]; | 209 | ring->cond_exe_cpu_addr = &adev->wb.wb[ring->cond_exe_offs]; |
210 | /* always set cond_exec_polling to CONTINUE */ | ||
211 | *ring->cond_exe_cpu_addr = 1; | ||
210 | 212 | ||
211 | r = amdgpu_fence_driver_start_ring(ring, irq_src, irq_type); | 213 | r = amdgpu_fence_driver_start_ring(ring, irq_src, irq_type); |
212 | if (r) { | 214 | if (r) { |
@@ -307,7 +309,7 @@ static ssize_t amdgpu_debugfs_ring_read(struct file *f, char __user *buf, | |||
307 | while (size) { | 309 | while (size) { |
308 | if (*pos >= (ring->ring_size + 12)) | 310 | if (*pos >= (ring->ring_size + 12)) |
309 | return result; | 311 | return result; |
310 | 312 | ||
311 | value = ring->ring[(*pos - 12)/4]; | 313 | value = ring->ring[(*pos - 12)/4]; |
312 | r = put_user(value, (uint32_t*)buf); | 314 | r = put_user(value, (uint32_t*)buf); |
313 | if (r) | 315 | if (r) |