From: Tom Rix <trix@xxxxxxxxxx> clang static analysis reports this represenative problem amdgpu_smu.c:144:18: warning: The left operand of '*' is a garbage value return clk_freq * 100; ~~~~~~~~ ^ If there is no get_dpm_ultimate_freq function, smu_get_dpm_freq_range returns success without setting the output min,max parameters. Because this is an extern function, set the min,max to 0 when there is no get_dpm_ultimate_freq. Fixes: e5ef784b1e17 ("drm/amd/powerplay: revise calling chain on retrieving frequency range") Signed-off-by: Tom Rix <trix@xxxxxxxxxx> --- drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c b/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c index 5ace30434e603..35fbe51f52eaa 100644 --- a/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c +++ b/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c @@ -121,11 +121,17 @@ int smu_get_dpm_freq_range(struct smu_context *smu, if (!min && !max) return -EINVAL; - if (smu->ppt_funcs->get_dpm_ultimate_freq) + if (smu->ppt_funcs->get_dpm_ultimate_freq) { ret = smu->ppt_funcs->get_dpm_ultimate_freq(smu, clk_type, min, max); + } else { + if (min) + *min = 0; + if (max) + *max = 0; + } return ret; } -- 2.26.3