summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
diff options
context:
space:
mode:
authorLikun Gao2019-01-09 12:11:58 +0100
committerAlex Deucher2019-03-19 21:03:59 +0100
commit2c80abe3816bf573858261c84bcc12c06ac93a5e (patch)
tree468e7d5014706ebb0247816deb2f7d01b5377a7a /drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
parentdrm/amd/powerplay: add function to store overdrive information for smu11 (diff)
downloadkernel-qcow2-linux-2c80abe3816bf573858261c84bcc12c06ac93a5e.tar.gz
kernel-qcow2-linux-2c80abe3816bf573858261c84bcc12c06ac93a5e.tar.xz
kernel-qcow2-linux-2c80abe3816bf573858261c84bcc12c06ac93a5e.zip
drm/amd/powerplay: add function to set default overdrive settings
Add function of vega20_set_default_od8_setttings for vega20 with smu11 arch to setup default overdrive value. Signed-off-by: Likun Gao <Likun.Gao@amd.com> Reviewed-by: Kevin Wang <kevin1.wang@amd.com> Reviewed-by: Evan Quan <evan.quan@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/powerplay/amdgpu_smu.c')
-rw-r--r--drivers/gpu/drm/amd/powerplay/amdgpu_smu.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
index dded495374c9..04ee523b2bf9 100644
--- a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
+++ b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
@@ -533,6 +533,10 @@ static int smu_smc_table_hw_init(struct smu_context *smu)
if (ret)
return ret;
+ ret = smu_set_od8_default_settings(smu);
+ if (ret)
+ return ret;
+
ret = smu_populate_umd_state_clk(smu);
if (ret)
return ret;
@@ -704,6 +708,16 @@ static int smu_hw_fini(void *handle)
table_context->od_settings_min = NULL;
}
+ if (table_context->overdrive_table) {
+ kfree(table_context->overdrive_table);
+ table_context->overdrive_table = NULL;
+ }
+
+ if (table_context->od8_settings) {
+ kfree(table_context->od8_settings);
+ table_context->od8_settings = NULL;
+ }
+
ret = smu_fini_fb_allocations(smu);
if (ret)
return ret;