aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.19.8/0911-drm-amdgpu-powerplay-check-MC-firmware-for-FFC-suppo.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.19.8/0911-drm-amdgpu-powerplay-check-MC-firmware-for-FFC-suppo.patch')
-rw-r--r--common/recipes-kernel/linux/linux-yocto-4.19.8/0911-drm-amdgpu-powerplay-check-MC-firmware-for-FFC-suppo.patch40
1 files changed, 40 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.19.8/0911-drm-amdgpu-powerplay-check-MC-firmware-for-FFC-suppo.patch b/common/recipes-kernel/linux/linux-yocto-4.19.8/0911-drm-amdgpu-powerplay-check-MC-firmware-for-FFC-suppo.patch
new file mode 100644
index 00000000..602747fe
--- /dev/null
+++ b/common/recipes-kernel/linux/linux-yocto-4.19.8/0911-drm-amdgpu-powerplay-check-MC-firmware-for-FFC-suppo.patch
@@ -0,0 +1,40 @@
+From 048a5b8c614e7ac812f792957b41bc6acf659a1f Mon Sep 17 00:00:00 2001
+From: Alex Deucher <alexander.deucher@amd.com>
+Date: Thu, 29 Nov 2018 19:35:14 -0500
+Subject: [PATCH 0911/2940] drm/amdgpu/powerplay: check MC firmware for FFC
+ support
+
+Check if the MC firmware supports FFC and tell the SMC so
+mclk switching is handled properly.
+
+Reviewed-by: Evan Quan <evan.quan@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c
+index 8e44ad3a1d92..d91390459326 100644
+--- a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c
++++ b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c
+@@ -4226,9 +4226,17 @@ static int smu7_check_mc_firmware(struct pp_hwmgr *hwmgr)
+ if (tmp & (1 << 23)) {
+ data->mem_latency_high = MEM_LATENCY_HIGH;
+ data->mem_latency_low = MEM_LATENCY_LOW;
++ if ((hwmgr->chip_id == CHIP_POLARIS10) ||
++ (hwmgr->chip_id == CHIP_POLARIS11) ||
++ (hwmgr->chip_id == CHIP_POLARIS12))
++ smum_send_msg_to_smc(hwmgr, PPSMC_MSG_EnableFFC);
+ } else {
+ data->mem_latency_high = 330;
+ data->mem_latency_low = 330;
++ if ((hwmgr->chip_id == CHIP_POLARIS10) ||
++ (hwmgr->chip_id == CHIP_POLARIS11) ||
++ (hwmgr->chip_id == CHIP_POLARIS12))
++ smum_send_msg_to_smc(hwmgr, PPSMC_MSG_DisableFFC);
+ }
+
+ return 0;
+--
+2.17.1
+