aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/radeon_test.c
diff options
context:
space:
mode:
authorChristian König <deathsimple@vodafone.de>2012-05-08 08:24:01 -0400
committerChristian König <deathsimple@vodafone.de>2012-06-21 03:38:35 -0400
commit876dc9f32907e57e0298bcd0f1607cb7a2582f63 (patch)
treee7bd45fff5d2ddff8c8805ee83116e02b75d2a6a /drivers/gpu/drm/radeon/radeon_test.c
parent9c19415c233499c26081798b880910ec0e1d7bad (diff)
drm/radeon: remove radeon_fence_create
It is completely unnecessary to create fences before they are emitted, so remove it and a bunch of checks if fences are emitted or not. Signed-off-by: Christian König <deathsimple@vodafone.de> Reviewed-by: Jerome Glisse <jglisse@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_test.c')
-rw-r--r--drivers/gpu/drm/radeon/radeon_test.c66
1 files changed, 26 insertions, 40 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_test.c b/drivers/gpu/drm/radeon/radeon_test.c
index efff929ea49d..47e1535f2706 100644
--- a/drivers/gpu/drm/radeon/radeon_test.c
+++ b/drivers/gpu/drm/radeon/radeon_test.c
@@ -106,13 +106,7 @@ void radeon_test_moves(struct radeon_device *rdev)
106 106
107 radeon_bo_kunmap(gtt_obj[i]); 107 radeon_bo_kunmap(gtt_obj[i]);
108 108
109 r = radeon_fence_create(rdev, &fence, RADEON_RING_TYPE_GFX_INDEX); 109 r = radeon_copy(rdev, gtt_addr, vram_addr, size / RADEON_GPU_PAGE_SIZE, &fence);
110 if (r) {
111 DRM_ERROR("Failed to create GTT->VRAM fence %d\n", i);
112 goto out_cleanup;
113 }
114
115 r = radeon_copy(rdev, gtt_addr, vram_addr, size / RADEON_GPU_PAGE_SIZE, fence);
116 if (r) { 110 if (r) {
117 DRM_ERROR("Failed GTT->VRAM copy %d\n", i); 111 DRM_ERROR("Failed GTT->VRAM copy %d\n", i);
118 goto out_cleanup; 112 goto out_cleanup;
@@ -155,13 +149,7 @@ void radeon_test_moves(struct radeon_device *rdev)
155 149
156 radeon_bo_kunmap(vram_obj); 150 radeon_bo_kunmap(vram_obj);
157 151
158 r = radeon_fence_create(rdev, &fence, RADEON_RING_TYPE_GFX_INDEX); 152 r = radeon_copy(rdev, vram_addr, gtt_addr, size / RADEON_GPU_PAGE_SIZE, &fence);
159 if (r) {
160 DRM_ERROR("Failed to create VRAM->GTT fence %d\n", i);
161 goto out_cleanup;
162 }
163
164 r = radeon_copy(rdev, vram_addr, gtt_addr, size / RADEON_GPU_PAGE_SIZE, fence);
165 if (r) { 153 if (r) {
166 DRM_ERROR("Failed VRAM->GTT copy %d\n", i); 154 DRM_ERROR("Failed VRAM->GTT copy %d\n", i);
167 goto out_cleanup; 155 goto out_cleanup;
@@ -245,17 +233,6 @@ void radeon_test_ring_sync(struct radeon_device *rdev,
245 int ridxB = radeon_ring_index(rdev, ringB); 233 int ridxB = radeon_ring_index(rdev, ringB);
246 int r; 234 int r;
247 235
248 r = radeon_fence_create(rdev, &fence1, ridxA);
249 if (r) {
250 DRM_ERROR("Failed to create sync fence 1\n");
251 goto out_cleanup;
252 }
253 r = radeon_fence_create(rdev, &fence2, ridxA);
254 if (r) {
255 DRM_ERROR("Failed to create sync fence 2\n");
256 goto out_cleanup;
257 }
258
259 r = radeon_semaphore_create(rdev, &semaphore); 236 r = radeon_semaphore_create(rdev, &semaphore);
260 if (r) { 237 if (r) {
261 DRM_ERROR("Failed to create semaphore\n"); 238 DRM_ERROR("Failed to create semaphore\n");
@@ -268,9 +245,19 @@ void radeon_test_ring_sync(struct radeon_device *rdev,
268 goto out_cleanup; 245 goto out_cleanup;
269 } 246 }
270 radeon_semaphore_emit_wait(rdev, ridxA, semaphore); 247 radeon_semaphore_emit_wait(rdev, ridxA, semaphore);
271 radeon_fence_emit(rdev, fence1); 248 r = radeon_fence_emit(rdev, &fence1, ridxA);
249 if (r) {
250 DRM_ERROR("Failed to emit fence 1\n");
251 radeon_ring_unlock_undo(rdev, ringA);
252 goto out_cleanup;
253 }
272 radeon_semaphore_emit_wait(rdev, ridxA, semaphore); 254 radeon_semaphore_emit_wait(rdev, ridxA, semaphore);
273 radeon_fence_emit(rdev, fence2); 255 r = radeon_fence_emit(rdev, &fence2, ridxA);
256 if (r) {
257 DRM_ERROR("Failed to emit fence 2\n");
258 radeon_ring_unlock_undo(rdev, ringA);
259 goto out_cleanup;
260 }
274 radeon_ring_unlock_commit(rdev, ringA); 261 radeon_ring_unlock_commit(rdev, ringA);
275 262
276 mdelay(1000); 263 mdelay(1000);
@@ -342,17 +329,6 @@ void radeon_test_ring_sync2(struct radeon_device *rdev,
342 bool sigA, sigB; 329 bool sigA, sigB;
343 int i, r; 330 int i, r;
344 331
345 r = radeon_fence_create(rdev, &fenceA, ridxA);
346 if (r) {
347 DRM_ERROR("Failed to create sync fence 1\n");
348 goto out_cleanup;
349 }
350 r = radeon_fence_create(rdev, &fenceB, ridxB);
351 if (r) {
352 DRM_ERROR("Failed to create sync fence 2\n");
353 goto out_cleanup;
354 }
355
356 r = radeon_semaphore_create(rdev, &semaphore); 332 r = radeon_semaphore_create(rdev, &semaphore);
357 if (r) { 333 if (r) {
358 DRM_ERROR("Failed to create semaphore\n"); 334 DRM_ERROR("Failed to create semaphore\n");
@@ -365,7 +341,12 @@ void radeon_test_ring_sync2(struct radeon_device *rdev,
365 goto out_cleanup; 341 goto out_cleanup;
366 } 342 }
367 radeon_semaphore_emit_wait(rdev, ridxA, semaphore); 343 radeon_semaphore_emit_wait(rdev, ridxA, semaphore);
368 radeon_fence_emit(rdev, fenceA); 344 r = radeon_fence_emit(rdev, &fenceA, ridxA);
345 if (r) {
346 DRM_ERROR("Failed to emit sync fence 1\n");
347 radeon_ring_unlock_undo(rdev, ringA);
348 goto out_cleanup;
349 }
369 radeon_ring_unlock_commit(rdev, ringA); 350 radeon_ring_unlock_commit(rdev, ringA);
370 351
371 r = radeon_ring_lock(rdev, ringB, 64); 352 r = radeon_ring_lock(rdev, ringB, 64);
@@ -374,7 +355,12 @@ void radeon_test_ring_sync2(struct radeon_device *rdev,
374 goto out_cleanup; 355 goto out_cleanup;
375 } 356 }
376 radeon_semaphore_emit_wait(rdev, ridxB, semaphore); 357 radeon_semaphore_emit_wait(rdev, ridxB, semaphore);
377 radeon_fence_emit(rdev, fenceB); 358 r = radeon_fence_emit(rdev, &fenceB, ridxB);
359 if (r) {
360 DRM_ERROR("Failed to create sync fence 2\n");
361 radeon_ring_unlock_undo(rdev, ringB);
362 goto out_cleanup;
363 }
378 radeon_ring_unlock_commit(rdev, ringB); 364 radeon_ring_unlock_commit(rdev, ringB);
379 365
380 mdelay(1000); 366 mdelay(1000);