aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux-4.19/linux-yocto-4.19.8/1189-drm-amd-powerplay-update-soc-boot-and-max-level-on-v.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux-4.19/linux-yocto-4.19.8/1189-drm-amd-powerplay-update-soc-boot-and-max-level-on-v.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux-4.19/linux-yocto-4.19.8/1189-drm-amd-powerplay-update-soc-boot-and-max-level-on-v.patch44
1 files changed, 44 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux-4.19/linux-yocto-4.19.8/1189-drm-amd-powerplay-update-soc-boot-and-max-level-on-v.patch b/meta-amd-bsp/recipes-kernel/linux-4.19/linux-yocto-4.19.8/1189-drm-amd-powerplay-update-soc-boot-and-max-level-on-v.patch
new file mode 100644
index 00000000..dcf0a8a7
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux-4.19/linux-yocto-4.19.8/1189-drm-amd-powerplay-update-soc-boot-and-max-level-on-v.patch
@@ -0,0 +1,44 @@
+From 5a94adeca3bb87ae11a6bc8e90677cc9717ae30f Mon Sep 17 00:00:00 2001
+From: Kenneth Feng <kenneth.feng@amd.com>
+Date: Sat, 2 Feb 2019 15:01:53 +0800
+Subject: [PATCH 1189/2940] drm/amd/powerplay: update soc boot and max level on
+ vega10
+
+update soc boot and max level,then uclk isn't stuck
+at minimum.
+Bug: https://bugs.freedesktop.org/show_bug.cgi?id=109462
+
+Signed-off-by: Kenneth Feng <kenneth.feng@amd.com>
+Acked-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c
+index 0a5f7df3acc2..ed67b6a0fbb2 100644
+--- a/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c
++++ b/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c
+@@ -3579,6 +3579,10 @@ static int vega10_generate_dpm_level_enable_mask(
+ vega10_find_lowest_dpm_level(&(data->dpm_table.mem_table));
+ data->smc_state_table.mem_max_level =
+ vega10_find_highest_dpm_level(&(data->dpm_table.mem_table));
++ data->smc_state_table.soc_boot_level =
++ vega10_find_lowest_dpm_level(&(data->dpm_table.soc_table));
++ data->smc_state_table.soc_max_level =
++ vega10_find_highest_dpm_level(&(data->dpm_table.soc_table));
+
+ PP_ASSERT_WITH_CODE(!vega10_upload_dpm_bootup_level(hwmgr),
+ "Attempt to upload DPM Bootup Levels Failed!",
+@@ -3593,6 +3597,9 @@ static int vega10_generate_dpm_level_enable_mask(
+ for(i = data->smc_state_table.mem_boot_level; i < data->smc_state_table.mem_max_level; i++)
+ data->dpm_table.mem_table.dpm_levels[i].enabled = true;
+
++ for (i = data->smc_state_table.soc_boot_level; i < data->smc_state_table.soc_max_level; i++)
++ data->dpm_table.soc_table.dpm_levels[i].enabled = true;
++
+ return 0;
+ }
+
+--
+2.17.1
+