amdgpu/pm: Prevent force of DCEFCLK on NAVI10 and SIENNA_CICHLID
[ Upstream commit b117b3964f ]
Writing to dcefclk causes the gpu to become unresponsive, and requires a reboot.
Patch ignores a .force_clk_levels(SMU_DCEFCLK) call and issues an
info message.
Signed-off-by: Darren Powell <darren.powell@amd.com>
Reviewed-by: Kenneth Feng <kenneth.feng@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
d47d0d1a1f
commit
dcbc4e3380
2 changed files with 7 additions and 2 deletions
|
|
@ -1110,7 +1110,6 @@ static int navi10_force_clk_levels(struct smu_context *smu,
|
||||||
case SMU_SOCCLK:
|
case SMU_SOCCLK:
|
||||||
case SMU_MCLK:
|
case SMU_MCLK:
|
||||||
case SMU_UCLK:
|
case SMU_UCLK:
|
||||||
case SMU_DCEFCLK:
|
|
||||||
case SMU_FCLK:
|
case SMU_FCLK:
|
||||||
/* There is only 2 levels for fine grained DPM */
|
/* There is only 2 levels for fine grained DPM */
|
||||||
if (navi10_is_support_fine_grained_dpm(smu, clk_type)) {
|
if (navi10_is_support_fine_grained_dpm(smu, clk_type)) {
|
||||||
|
|
@ -1130,6 +1129,10 @@ static int navi10_force_clk_levels(struct smu_context *smu,
|
||||||
if (ret)
|
if (ret)
|
||||||
return size;
|
return size;
|
||||||
break;
|
break;
|
||||||
|
case SMU_DCEFCLK:
|
||||||
|
dev_info(smu->adev->dev,"Setting DCEFCLK min/max dpm level is not supported!\n");
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1018,7 +1018,6 @@ static int sienna_cichlid_force_clk_levels(struct smu_context *smu,
|
||||||
case SMU_SOCCLK:
|
case SMU_SOCCLK:
|
||||||
case SMU_MCLK:
|
case SMU_MCLK:
|
||||||
case SMU_UCLK:
|
case SMU_UCLK:
|
||||||
case SMU_DCEFCLK:
|
|
||||||
case SMU_FCLK:
|
case SMU_FCLK:
|
||||||
/* There is only 2 levels for fine grained DPM */
|
/* There is only 2 levels for fine grained DPM */
|
||||||
if (sienna_cichlid_is_support_fine_grained_dpm(smu, clk_type)) {
|
if (sienna_cichlid_is_support_fine_grained_dpm(smu, clk_type)) {
|
||||||
|
|
@ -1038,6 +1037,9 @@ static int sienna_cichlid_force_clk_levels(struct smu_context *smu,
|
||||||
if (ret)
|
if (ret)
|
||||||
goto forec_level_out;
|
goto forec_level_out;
|
||||||
break;
|
break;
|
||||||
|
case SMU_DCEFCLK:
|
||||||
|
dev_info(smu->adev->dev,"Setting DCEFCLK min/max dpm level is not supported!\n");
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue