drm/amd/pm: fix uninitialized variable warnings for vangogh_ppt

[ Upstream commit b2871de696 ]

1. Fix a issue that using uninitialized mask to get the ultimate frequency.
2. Check return of smu_cmn_send_smc_msg_with_param to avoid using
uninitialized variable residency.

Signed-off-by: Tim Huang <Tim.Huang@amd.com>
Reviewed-by: Yang Wang <kevinyang.wang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Tim Huang 2024-04-28 15:42:03 +08:00 committed by Greg Kroah-Hartman
parent 4dfec5f550
commit 97667de35b

View File

@ -1009,6 +1009,18 @@ static int vangogh_get_dpm_ultimate_freq(struct smu_context *smu,
} }
} }
if (min) { if (min) {
ret = vangogh_get_profiling_clk_mask(smu,
AMD_DPM_FORCED_LEVEL_PROFILE_MIN_MCLK,
NULL,
NULL,
&mclk_mask,
&fclk_mask,
&soc_mask);
if (ret)
goto failed;
vclk_mask = dclk_mask = 0;
switch (clk_type) { switch (clk_type) {
case SMU_UCLK: case SMU_UCLK:
case SMU_MCLK: case SMU_MCLK:
@ -2481,6 +2493,8 @@ static u32 vangogh_set_gfxoff_residency(struct smu_context *smu, bool start)
ret = smu_cmn_send_smc_msg_with_param(smu, SMU_MSG_LogGfxOffResidency, ret = smu_cmn_send_smc_msg_with_param(smu, SMU_MSG_LogGfxOffResidency,
start, &residency); start, &residency);
if (ret)
return ret;
if (!start) if (!start)
adev->gfx.gfx_off_residency = residency; adev->gfx.gfx_off_residency = residency;