diff options
author | Felix Kuehling <Felix.Kuehling@amd.com> | 2016-07-15 18:37:05 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2017-07-14 11:06:36 -0400 |
commit | a667386cb997a136e169de3cf70f007223bb74ee (patch) | |
tree | 54dc2a27b23cf5889ea7e47e521430f0a3dc5251 /drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | |
parent | 763dbbfa5f678ceec59b81bc13bc9dc445920e9b (diff) |
drm/amdgpu: Make SDMA phase quantum configurable
Set a configurable SDMA phase quantum when enabling SDMA context
switching. The default value significantly reduces SDMA latency
in page table updates when user-mode SDMA queues have concurrent
activity, compared to the initial HW setting.
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
Reviewed-by: Andres Rodriguez <andres.rodriguez@amd.com>
Reviewed-by: Shaoyun Liu <shaoyun.liu@amd.com>
Acked-by: Chunming Zhou <david1.zhou@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c index 3c83fe6c5db8..b3d7beb6806c 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | |||
@@ -108,6 +108,7 @@ unsigned amdgpu_pcie_gen_cap = 0; | |||
108 | unsigned amdgpu_pcie_lane_cap = 0; | 108 | unsigned amdgpu_pcie_lane_cap = 0; |
109 | unsigned amdgpu_cg_mask = 0xffffffff; | 109 | unsigned amdgpu_cg_mask = 0xffffffff; |
110 | unsigned amdgpu_pg_mask = 0xffffffff; | 110 | unsigned amdgpu_pg_mask = 0xffffffff; |
111 | unsigned amdgpu_sdma_phase_quantum = 32; | ||
111 | char *amdgpu_disable_cu = NULL; | 112 | char *amdgpu_disable_cu = NULL; |
112 | char *amdgpu_virtual_display = NULL; | 113 | char *amdgpu_virtual_display = NULL; |
113 | unsigned amdgpu_pp_feature_mask = 0xffffffff; | 114 | unsigned amdgpu_pp_feature_mask = 0xffffffff; |
@@ -227,6 +228,9 @@ module_param_named(cg_mask, amdgpu_cg_mask, uint, 0444); | |||
227 | MODULE_PARM_DESC(pg_mask, "Powergating flags mask (0 = disable power gating)"); | 228 | MODULE_PARM_DESC(pg_mask, "Powergating flags mask (0 = disable power gating)"); |
228 | module_param_named(pg_mask, amdgpu_pg_mask, uint, 0444); | 229 | module_param_named(pg_mask, amdgpu_pg_mask, uint, 0444); |
229 | 230 | ||
231 | MODULE_PARM_DESC(sdma_phase_quantum, "SDMA context switch phase quantum (x 1K GPU clock cycles, 0 = no change (default 32))"); | ||
232 | module_param_named(sdma_phase_quantum, amdgpu_sdma_phase_quantum, uint, 0444); | ||
233 | |||
230 | MODULE_PARM_DESC(disable_cu, "Disable CUs (se.sh.cu,...)"); | 234 | MODULE_PARM_DESC(disable_cu, "Disable CUs (se.sh.cu,...)"); |
231 | module_param_named(disable_cu, amdgpu_disable_cu, charp, 0444); | 235 | module_param_named(disable_cu, amdgpu_disable_cu, charp, 0444); |
232 | 236 | ||