aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3675-drm-amd-pp-Add-common-interface-in-smu-for-update-dp.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3675-drm-amd-pp-Add-common-interface-in-smu-for-update-dp.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3675-drm-amd-pp-Add-common-interface-in-smu-for-update-dp.patch60
1 files changed, 60 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3675-drm-amd-pp-Add-common-interface-in-smu-for-update-dp.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3675-drm-amd-pp-Add-common-interface-in-smu-for-update-dp.patch
new file mode 100644
index 00000000..e927e841
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3675-drm-amd-pp-Add-common-interface-in-smu-for-update-dp.patch
@@ -0,0 +1,60 @@
+From 617b8d0b4b78f691a2ef40980aaaa23ab0607f04 Mon Sep 17 00:00:00 2001
+From: Rex Zhu <Rex.Zhu@amd.com>
+Date: Wed, 24 Jan 2018 14:48:17 +0800
+Subject: [PATCH 3675/4131] drm/amd/pp: Add common interface in smu for update
+ dpm setting
+
+it is used for adjust part of dpm settigs per workloads
+to change the natural dpm behavior for better perf or perf/watt.
+
+Change-Id: I6159b8a5849a2e1592fec951cc538dacd9da8c82
+Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
+Signed-off-by: Rex Zhu <Rex.Zhu@amd.com>
+---
+ drivers/gpu/drm/amd/powerplay/inc/hwmgr.h | 1 +
+ drivers/gpu/drm/amd/powerplay/inc/smumgr.h | 1 +
+ drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c | 8 ++++++++
+ 3 files changed, 10 insertions(+)
+
+diff --git a/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h b/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h
+index bb50cc2..ae73956 100644
+--- a/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h
++++ b/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h
+@@ -239,6 +239,7 @@ struct pp_smumgr_func {
+ int (*populate_requested_graphic_levels)(struct pp_hwmgr *hwmgr,
+ struct amd_pp_profile *request);
+ bool (*is_hw_avfs_present)(struct pp_hwmgr *hwmgr);
++ int (*update_dpm_settings)(struct pp_hwmgr *hwmgr, void *profile_setting);
+ };
+
+ struct pp_hwmgr_func {
+diff --git a/drivers/gpu/drm/amd/powerplay/inc/smumgr.h b/drivers/gpu/drm/amd/powerplay/inc/smumgr.h
+index b1b27b2..e05a57e 100644
+--- a/drivers/gpu/drm/amd/powerplay/inc/smumgr.h
++++ b/drivers/gpu/drm/amd/powerplay/inc/smumgr.h
+@@ -134,5 +134,6 @@ extern int smum_populate_requested_graphic_levels(struct pp_hwmgr *hwmgr,
+
+ extern bool smum_is_hw_avfs_present(struct pp_hwmgr *hwmgr);
+
++extern int smum_update_dpm_settings(struct pp_hwmgr *hwmgr, void *profile_setting);
+
+ #endif
+diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c
+index 8673884..1ce4959 100644
+--- a/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c
++++ b/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c
+@@ -253,3 +253,11 @@ bool smum_is_hw_avfs_present(struct pp_hwmgr *hwmgr)
+
+ return false;
+ }
++
++int smum_update_dpm_settings(struct pp_hwmgr *hwmgr, void *profile_setting)
++{
++ if (hwmgr->smumgr_funcs->update_dpm_settings)
++ return hwmgr->smumgr_funcs->update_dpm_settings(hwmgr, profile_setting);
++
++ return -EINVAL;
++}
+--
+2.7.4
+