aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0307-drm-amdgpu-use-separate-scheduler-entity-for-VCE-sub.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0307-drm-amdgpu-use-separate-scheduler-entity-for-VCE-sub.patch')
-rw-r--r--common/recipes-kernel/linux/files/0307-drm-amdgpu-use-separate-scheduler-entity-for-VCE-sub.patch83
1 files changed, 0 insertions, 83 deletions
diff --git a/common/recipes-kernel/linux/files/0307-drm-amdgpu-use-separate-scheduler-entity-for-VCE-sub.patch b/common/recipes-kernel/linux/files/0307-drm-amdgpu-use-separate-scheduler-entity-for-VCE-sub.patch
deleted file mode 100644
index 62def6ed..00000000
--- a/common/recipes-kernel/linux/files/0307-drm-amdgpu-use-separate-scheduler-entity-for-VCE-sub.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-From b34557f0e92a2845169ae3bbda078d120e702722 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
-Date: Wed, 10 Feb 2016 17:43:00 +0100
-Subject: [PATCH 0307/1110] drm/amdgpu: use separate scheduler entity for VCE
- submissions
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This allows us to remove the kernel context and use a better
-priority for the submissions.
-
-Signed-off-by: Christian König <christian.koenig@amd.com>
-Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
-Signed-off-by: Kalyan Alle <kalyan.alle@amd.com>
----
- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 1 +
- drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c | 16 +++++++++++++++-
- 2 files changed, 16 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-index 5db8e71..84ee4fe 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-@@ -1633,6 +1633,7 @@ struct amdgpu_vce {
- struct amdgpu_ring ring[AMDGPU_MAX_VCE_RINGS];
- struct amdgpu_irq_src irq;
- unsigned harvest_config;
-+ struct amd_sched_entity entity;
- };
-
- /*
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c
-index 4239083..547e084 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c
-@@ -74,6 +74,8 @@ static void amdgpu_vce_idle_work_handler(struct work_struct *work);
- */
- int amdgpu_vce_sw_init(struct amdgpu_device *adev, unsigned long size)
- {
-+ struct amdgpu_ring *ring;
-+ struct amd_sched_rq *rq;
- const char *fw_name;
- const struct common_firmware_header *hdr;
- unsigned ucode_version, version_major, version_minor, binary_id;
-@@ -170,6 +172,16 @@ int amdgpu_vce_sw_init(struct amdgpu_device *adev, unsigned long size)
- return r;
- }
-
-+
-+ ring = &adev->vce.ring[0];
-+ rq = &ring->sched.sched_rq[AMD_SCHED_PRIORITY_NORMAL];
-+ r = amd_sched_entity_init(&ring->sched, &adev->vce.entity,
-+ rq, amdgpu_sched_jobs);
-+ if (r != 0) {
-+ DRM_ERROR("Failed setting up VCE run queue.\n");
-+ return r;
-+ }
-+
- for (i = 0; i < AMDGPU_MAX_VCE_HANDLES; ++i) {
- atomic_set(&adev->vce.handles[i], 0);
- adev->vce.filp[i] = NULL;
-@@ -190,6 +202,8 @@ int amdgpu_vce_sw_fini(struct amdgpu_device *adev)
- if (adev->vce.vcpu_bo == NULL)
- return 0;
-
-+ amd_sched_entity_fini(&adev->vce.ring[0].sched, &adev->vce.entity);
-+
- amdgpu_bo_unref(&adev->vce.vcpu_bo);
-
- amdgpu_ring_fini(&adev->vce.ring[0]);
-@@ -508,7 +522,7 @@ int amdgpu_vce_get_destroy_msg(struct amdgpu_ring *ring, uint32_t handle,
-
- amdgpu_job_free(job);
- } else {
-- r = amdgpu_job_submit(job, ring, NULL,
-+ r = amdgpu_job_submit(job, ring, &ring->adev->vce.entity,
- AMDGPU_FENCE_OWNER_UNDEFINED, &f);
- if (r)
- goto err;
---
-2.7.4
-