aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/1472-drm-amdgpu-return-the-common-fence-from-amdgpu_fence.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/1472-drm-amdgpu-return-the-common-fence-from-amdgpu_fence.patch')
-rw-r--r--common/recipes-kernel/linux/files/1472-drm-amdgpu-return-the-common-fence-from-amdgpu_fence.patch117
1 files changed, 0 insertions, 117 deletions
diff --git a/common/recipes-kernel/linux/files/1472-drm-amdgpu-return-the-common-fence-from-amdgpu_fence.patch b/common/recipes-kernel/linux/files/1472-drm-amdgpu-return-the-common-fence-from-amdgpu_fence.patch
deleted file mode 100644
index c0659582..00000000
--- a/common/recipes-kernel/linux/files/1472-drm-amdgpu-return-the-common-fence-from-amdgpu_fence.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-From f534cc5fcb93cb7f638be07fb4abbc7f49c6839e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
-Date: Tue, 16 Feb 2016 17:39:39 +0100
-Subject: [PATCH 1472/1565] drm/amdgpu: return the common fence from
- amdgpu_fence_emit
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Try to avoid using the hardware specific fences even more.
-
-Signed-off-by: Christian König <christian.koenig@amd.com>
-Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
-Reviewed-by: Chunming Zhou <david1.zhou@amd.com>
----
- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 4 ++--
- drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 27 ++++++++++++++-------------
- drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c | 7 +++----
- 3 files changed, 19 insertions(+), 19 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-index ec0b9bd..d475fc1 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-@@ -392,7 +392,7 @@ int amdgpu_fence_driver_start_ring(struct amdgpu_ring *ring,
- unsigned irq_type);
- void amdgpu_fence_driver_suspend(struct amdgpu_device *adev);
- void amdgpu_fence_driver_resume(struct amdgpu_device *adev);
--int amdgpu_fence_emit(struct amdgpu_ring *ring, struct amdgpu_fence **fence);
-+int amdgpu_fence_emit(struct amdgpu_ring *ring, struct fence **fence);
- void amdgpu_fence_process(struct amdgpu_ring *ring);
- int amdgpu_fence_wait_next(struct amdgpu_ring *ring);
- int amdgpu_fence_wait_empty(struct amdgpu_ring *ring);
-@@ -727,7 +727,7 @@ struct amdgpu_ib {
- uint32_t length_dw;
- uint64_t gpu_addr;
- uint32_t *ptr;
-- struct amdgpu_fence *fence;
-+ struct fence *fence;
- struct amdgpu_user_fence *user;
- struct amdgpu_vm *vm;
- unsigned vm_id;
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
-index d94b13a..83599f2 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
-@@ -91,28 +91,29 @@ static u32 amdgpu_fence_read(struct amdgpu_ring *ring)
- * amdgpu_fence_emit - emit a fence on the requested ring
- *
- * @ring: ring the fence is associated with
-- * @fence: amdgpu fence object
-+ * @f: resulting fence object
- *
- * Emits a fence command on the requested ring (all asics).
- * Returns 0 on success, -ENOMEM on failure.
- */
--int amdgpu_fence_emit(struct amdgpu_ring *ring, struct amdgpu_fence **fence)
-+int amdgpu_fence_emit(struct amdgpu_ring *ring, struct fence **f)
- {
- struct amdgpu_device *adev = ring->adev;
-+ struct amdgpu_fence *fence;
-
-- *fence = kmem_cache_alloc(amdgpu_fence_slab, GFP_KERNEL);
-- if ((*fence) == NULL) {
-+ fence = kmem_cache_alloc(amdgpu_fence_slab, GFP_KERNEL);
-+ if (fence == NULL)
- return -ENOMEM;
-- }
-- (*fence)->seq = ++ring->fence_drv.sync_seq;
-- (*fence)->ring = ring;
-- fence_init(&(*fence)->base, &amdgpu_fence_ops,
-- &ring->fence_drv.fence_queue.lock,
-- adev->fence_context + ring->idx,
-- (*fence)->seq);
-+
-+ fence->seq = ++ring->fence_drv.sync_seq;
-+ fence->ring = ring;
-+ fence_init(&fence->base, &amdgpu_fence_ops,
-+ &ring->fence_drv.fence_queue.lock,
-+ adev->fence_context + ring->idx,
-+ fence->seq);
- amdgpu_ring_emit_fence(ring, ring->fence_drv.gpu_addr,
-- (*fence)->seq,
-- AMDGPU_FENCE_FLAG_INT);
-+ fence->seq, AMDGPU_FENCE_FLAG_INT);
-+ *f = &fence->base;
- return 0;
- }
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
-index 9550247..979c445 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
-@@ -90,9 +90,8 @@ int amdgpu_ib_get(struct amdgpu_device *adev, struct amdgpu_vm *vm,
- */
- void amdgpu_ib_free(struct amdgpu_device *adev, struct amdgpu_ib *ib)
- {
-- amdgpu_sa_bo_free(adev, &ib->sa_bo, &ib->fence->base);
-- if (ib->fence)
-- fence_put(&ib->fence->base);
-+ amdgpu_sa_bo_free(adev, &ib->sa_bo, ib->fence);
-+ fence_put(ib->fence);
- }
-
- /**
-@@ -198,7 +197,7 @@ int amdgpu_ib_schedule(struct amdgpu_ring *ring, unsigned num_ibs,
- }
-
- if (f)
-- *f = fence_get(&ib->fence->base);
-+ *f = fence_get(ib->fence);
-
- amdgpu_ring_commit(ring);
- return 0;
---
-1.9.1
-