summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/powerplay/inc
diff options
context:
space:
mode:
authorLikun Gao <Likun.Gao@amd.com>2019-01-21 14:58:38 +0800
committerAlex Deucher <alexander.deucher@amd.com>2019-03-19 15:04:00 -0500
commite388cc474d361469126882f454cbd8881ab3b259 (patch)
tree00abfa7517786b8899d67076aad4deb85ebcf962 /drivers/gpu/drm/amd/powerplay/inc
parente9c5b46e3c50f58403aeca6d6419b9235d2518b2 (diff)
downloadlinux-e388cc474d361469126882f454cbd8881ab3b259.tar.gz
linux-e388cc474d361469126882f454cbd8881ab3b259.tar.bz2
linux-e388cc474d361469126882f454cbd8881ab3b259.zip
drm/amd/powerplay: add sys interface to set pp_od_clk_voltage for smu
Add sys interface to set pp_od_clk_voltage for smu. Signed-off-by: Likun Gao <Likun.Gao@amd.com> Reviewed-by: Huang Rui <ray.huang@amd.com> Reviewed-by: Kevin Wang <kevin1.wang@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/inc')
-rw-r--r--drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h b/drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h
index c3bc9a7e3f48..a0bfc378cdc0 100644
--- a/drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h
+++ b/drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h
@@ -310,6 +310,8 @@ struct smu_table_context
uint32_t *od_settings_min;
void *overdrive_table;
void *od8_settings;
+ bool od_gfxclk_update;
+ bool od_memclk_update;
};
struct smu_dpm_context {
@@ -417,6 +419,9 @@ struct pptable_funcs {
int (*set_od_percentage)(struct smu_context *smu,
enum pp_clock_type type,
uint32_t value);
+ int (*od_edit_dpm_table)(struct smu_context *smu,
+ enum PP_OD_DPM_TABLE_COMMAND type,
+ long *input, uint32_t size);
int (*get_clock_by_type_with_latency)(struct smu_context *smu,
enum amd_pp_clock_type type,
struct
@@ -603,6 +608,8 @@ struct smu_funcs
((smu)->ppt_funcs->get_od_percentage ? (smu)->ppt_funcs->get_od_percentage((smu), (type)) : 0)
#define smu_set_od_percentage(smu, type, value) \
((smu)->ppt_funcs->set_od_percentage ? (smu)->ppt_funcs->set_od_percentage((smu), (type), (value)) : 0)
+#define smu_od_edit_dpm_table(smu, type, input, size) \
+ ((smu)->ppt_funcs->od_edit_dpm_table ? (smu)->ppt_funcs->od_edit_dpm_table((smu), (type), (input), (size)) : 0)
#define smu_start_thermal_control(smu) \
((smu)->funcs->start_thermal_control? (smu)->funcs->start_thermal_control((smu)) : 0)
#define smu_read_sensor(smu, sensor, data, size) \