aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0399-drm-amdgpu-add-amdgpu.sched_jobs-option.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0399-drm-amdgpu-add-amdgpu.sched_jobs-option.patch')
-rw-r--r--common/recipes-kernel/linux/files/0399-drm-amdgpu-add-amdgpu.sched_jobs-option.patch121
1 files changed, 0 insertions, 121 deletions
diff --git a/common/recipes-kernel/linux/files/0399-drm-amdgpu-add-amdgpu.sched_jobs-option.patch b/common/recipes-kernel/linux/files/0399-drm-amdgpu-add-amdgpu.sched_jobs-option.patch
deleted file mode 100644
index c57bf297..00000000
--- a/common/recipes-kernel/linux/files/0399-drm-amdgpu-add-amdgpu.sched_jobs-option.patch
+++ /dev/null
@@ -1,121 +0,0 @@
-From 1333f723fb6f1356a54135586f1ede44dcaa9652 Mon Sep 17 00:00:00 2001
-From: Jammy Zhou <Jammy.Zhou@amd.com>
-Date: Thu, 30 Jul 2015 16:36:58 +0800
-Subject: [PATCH 0399/1050] drm/amdgpu: add amdgpu.sched_jobs option
-
-This option can be used to specify the max job number in the job queue,
-and it is 16 by default.
-
-Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com>
-Reviewed-by: Chunming Zhou <david1.zhou@amd.com>
----
- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 1 +
- drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c | 3 ++-
- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 4 ++++
- drivers/gpu/drm/amd/scheduler/gpu_scheduler.c | 6 ++++--
- drivers/gpu/drm/amd/scheduler/gpu_scheduler.h | 4 ++--
- 5 files changed, 13 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-index 0703fbf..4de1147 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-@@ -80,6 +80,7 @@ extern int amdgpu_deep_color;
- extern int amdgpu_vm_size;
- extern int amdgpu_vm_block_size;
- extern int amdgpu_enable_scheduler;
-+extern int amdgpu_sched_jobs;
-
- #define AMDGPU_WAIT_IDLE_TIMEOUT_IN_MS 3000
- #define AMDGPU_MAX_USEC_TIMEOUT 100000 /* 100 ms */
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
-index a5d8242..58ce265 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
-@@ -105,7 +105,8 @@ int amdgpu_ctx_alloc(struct amdgpu_device *adev, struct amdgpu_fpriv *fpriv,
- rq = &adev->rings[i]->scheduler->kernel_rq;
- r = amd_context_entity_init(adev->rings[i]->scheduler,
- &ctx->rings[i].c_entity,
-- NULL, rq, *id);
-+ NULL, rq, *id,
-+ amdgpu_sched_jobs);
- if (r)
- break;
- }
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
-index 8f33cef..319de44 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
-@@ -76,6 +76,7 @@ int amdgpu_vm_size = 8;
- int amdgpu_vm_block_size = -1;
- int amdgpu_exp_hw_support = 0;
- int amdgpu_enable_scheduler = 0;
-+int amdgpu_sched_jobs = 16;
-
- MODULE_PARM_DESC(vramlimit, "Restrict VRAM for testing, in megabytes");
- module_param_named(vramlimit, amdgpu_vram_limit, int, 0600);
-@@ -143,6 +144,9 @@ module_param_named(exp_hw_support, amdgpu_exp_hw_support, int, 0444);
- MODULE_PARM_DESC(enable_scheduler, "enable SW GPU scheduler (1 = enable, 0 = disable ((default))");
- module_param_named(enable_scheduler, amdgpu_enable_scheduler, int, 0444);
-
-+MODULE_PARM_DESC(sched_jobs, "the max number of jobs supported in the sw queue (default 16)");
-+module_param_named(sched_jobs, amdgpu_sched_jobs, int, 0444);
-+
- static struct pci_device_id pciidlist[] = {
- #ifdef CONFIG_DRM_AMDGPU_CIK
- /* Kaveri */
-diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
-index 5799474..87993e0 100644
---- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
-+++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
-@@ -173,6 +173,7 @@ exit:
- * @parent The parent entity of this amd_context_entity
- * @rq The run queue this entity belongs
- * @context_id The context id for this entity
-+ * @jobs The max number of jobs in the job queue
- *
- * return 0 if succeed. negative error code on failure
- */
-@@ -180,7 +181,8 @@ int amd_context_entity_init(struct amd_gpu_scheduler *sched,
- struct amd_context_entity *entity,
- struct amd_sched_entity *parent,
- struct amd_run_queue *rq,
-- uint32_t context_id)
-+ uint32_t context_id,
-+ uint32_t jobs)
- {
- uint64_t seq_ring = 0;
-
-@@ -196,7 +198,7 @@ int amd_context_entity_init(struct amd_gpu_scheduler *sched,
- init_waitqueue_head(&entity->wait_queue);
- init_waitqueue_head(&entity->wait_emit);
- if(kfifo_alloc(&entity->job_queue,
-- AMD_MAX_JOB_ENTRY_PER_CONTEXT * sizeof(void *),
-+ jobs * sizeof(void *),
- GFP_KERNEL))
- return -EINVAL;
-
-diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h
-index a6226e1..52577a88 100644
---- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h
-+++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h
-@@ -27,7 +27,6 @@
- #include <linux/kfifo.h>
-
- #define AMD_MAX_ACTIVE_HW_SUBMISSION 2
--#define AMD_MAX_JOB_ENTRY_PER_CONTEXT 16
-
- #define AMD_KERNEL_CONTEXT_ID 0
- #define AMD_KERNEL_PROCESS_ID 0
-@@ -155,6 +154,7 @@ int amd_context_entity_init(struct amd_gpu_scheduler *sched,
- struct amd_context_entity *entity,
- struct amd_sched_entity *parent,
- struct amd_run_queue *rq,
-- uint32_t context_id);
-+ uint32_t context_id,
-+ uint32_t jobs);
-
- #endif
---
-1.9.1
-