aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0652-drm-amdgpu-use-common-fence-for-sync.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0652-drm-amdgpu-use-common-fence-for-sync.patch')
-rw-r--r--common/recipes-kernel/linux/files/0652-drm-amdgpu-use-common-fence-for-sync.patch97
1 files changed, 0 insertions, 97 deletions
diff --git a/common/recipes-kernel/linux/files/0652-drm-amdgpu-use-common-fence-for-sync.patch b/common/recipes-kernel/linux/files/0652-drm-amdgpu-use-common-fence-for-sync.patch
deleted file mode 100644
index 23e86aab..00000000
--- a/common/recipes-kernel/linux/files/0652-drm-amdgpu-use-common-fence-for-sync.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-From 16545c32a5242634a51c6906533750cf1db54879 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
-Date: Thu, 22 Oct 2015 15:04:50 +0200
-Subject: [PATCH 0652/1565] drm/amdgpu: use common fence for sync
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Stop using the driver internal functions.
-
-Signed-off-by: Christian König <christian.koenig@amd.com>
-Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
----
- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 2 +-
- drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c | 21 +++++++++++----------
- 2 files changed, 12 insertions(+), 11 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-index 371994c..b986ea1 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-@@ -704,7 +704,7 @@ void amdgpu_semaphore_free(struct amdgpu_device *adev,
- */
- struct amdgpu_sync {
- struct amdgpu_semaphore *semaphores[AMDGPU_NUM_SYNCS];
-- struct amdgpu_fence *sync_to[AMDGPU_MAX_RINGS];
-+ struct fence *sync_to[AMDGPU_MAX_RINGS];
- DECLARE_HASHTABLE(fences, 4);
- struct fence *last_vm_update;
- };
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c
-index 0499d2b..c6489b1 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c
-@@ -108,7 +108,6 @@ int amdgpu_sync_fence(struct amdgpu_device *adev, struct amdgpu_sync *sync,
- {
- struct amdgpu_sync_entry *e;
- struct amdgpu_fence *fence;
-- struct amdgpu_fence *other;
-
- if (!f)
- return 0;
-@@ -136,10 +135,7 @@ int amdgpu_sync_fence(struct amdgpu_device *adev, struct amdgpu_sync *sync,
- return 0;
- }
-
-- other = sync->sync_to[fence->ring->idx];
-- sync->sync_to[fence->ring->idx] = amdgpu_fence_ref(
-- amdgpu_fence_later(fence, other));
-- amdgpu_fence_unref(&other);
-+ amdgpu_sync_keep_later(&sync->sync_to[fence->ring->idx], f);
-
- return 0;
- }
-@@ -258,11 +254,11 @@ int amdgpu_sync_wait(struct amdgpu_sync *sync)
- return 0;
-
- for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
-- struct amdgpu_fence *fence = sync->sync_to[i];
-+ struct fence *fence = sync->sync_to[i];
- if (!fence)
- continue;
-
-- r = fence_wait(&fence->base, false);
-+ r = fence_wait(fence, false);
- if (r)
- return r;
- }
-@@ -287,9 +283,14 @@ int amdgpu_sync_rings(struct amdgpu_sync *sync,
- int i, r;
-
- for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
-- struct amdgpu_fence *fence = sync->sync_to[i];
-- struct amdgpu_semaphore *semaphore;
- struct amdgpu_ring *other = adev->rings[i];
-+ struct amdgpu_semaphore *semaphore;
-+ struct amdgpu_fence *fence;
-+
-+ if (!sync->sync_to[i])
-+ continue;
-+
-+ fence = to_amdgpu_fence(sync->sync_to[i]);
-
- /* check if we really need to sync */
- if (!amdgpu_fence_need_sync(fence, ring))
-@@ -374,7 +375,7 @@ void amdgpu_sync_free(struct amdgpu_device *adev,
- amdgpu_semaphore_free(adev, &sync->semaphores[i], fence);
-
- for (i = 0; i < AMDGPU_MAX_RINGS; ++i)
-- amdgpu_fence_unref(&sync->sync_to[i]);
-+ fence_put(sync->sync_to[i]);
-
- fence_put(sync->last_vm_update);
- }
---
-1.9.1
-