From fa51bfc2794b096a6d009712529c15a95667d383 Mon Sep 17 00:00:00 2001 From: Kevin Wang Date: Fri, 19 Apr 2019 13:27:19 +0800 Subject: [PATCH] drm/amd/powerplay: add function populate_umd_state_clk for navi10 add callback function populate_umd_state_clk for navi10 asic Signed-off-by: Kevin Wang Reviewed-by: Huang Rui Signed-off-by: Alex Deucher --- drivers/gpu/drm/amd/powerplay/navi10_ppt.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/drivers/gpu/drm/amd/powerplay/navi10_ppt.c b/drivers/gpu/drm/amd/powerplay/navi10_ppt.c index 172624d60bfd..472793cf16b3 100644 --- a/drivers/gpu/drm/amd/powerplay/navi10_ppt.c +++ b/drivers/gpu/drm/amd/powerplay/navi10_ppt.c @@ -602,6 +602,20 @@ static int navi10_force_clk_levels(struct smu_context *smu, return size; } +static int navi10_populate_umd_state_clk(struct smu_context *smu) +{ + int ret = 0; + uint32_t min_sclk_freq = 0; + + ret = smu_get_dpm_freq_range(smu, SMU_SCLK, &min_sclk_freq, NULL); + if (ret) + return ret; + + smu->pstate_sclk = min_sclk_freq * 100; + + return ret; +} + static const struct pptable_funcs navi10_ppt_funcs = { .tables_init = navi10_tables_init, .alloc_dpm_context = navi10_allocate_dpm_context, @@ -619,6 +633,7 @@ static const struct pptable_funcs navi10_ppt_funcs = { .get_current_clk_freq_by_table = navi10_get_current_clk_freq_by_table, .print_clk_levels = navi10_print_clk_levels, .force_clk_levels = navi10_force_clk_levels, + .populate_umd_state_clk = navi10_populate_umd_state_clk, }; void navi10_set_ppt_funcs(struct smu_context *smu) -- 2.45.2