Skip to content

Commit 4b14841

Browse files
Evan Quanalexdeucher
authored andcommitted
drm/amd/pm: fix SMU13 runpm hang due to unintentional workaround
The workaround designed for some specific ASICs is wrongly applied to SMU13 ASICs. That leads to some runpm hang. Signed-off-by: Evan Quan <[email protected]> Reviewed-by: Hawking Zhang <[email protected]> Reviewed-by: Feifei Xu <[email protected]> Signed-off-by: Alex Deucher <[email protected]> Cc: [email protected]
1 parent df7c013 commit 4b14841

File tree

1 file changed

+11
-12
lines changed

1 file changed

+11
-12
lines changed

drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1156,22 +1156,21 @@ static int smu_smc_hw_setup(struct smu_context *smu)
11561156
uint64_t features_supported;
11571157
int ret = 0;
11581158

1159-
if (adev->in_suspend && smu_is_dpm_running(smu)) {
1160-
dev_info(adev->dev, "dpm has been enabled\n");
1161-
/* this is needed specifically */
1162-
switch (adev->ip_versions[MP1_HWIP][0]) {
1163-
case IP_VERSION(11, 0, 7):
1164-
case IP_VERSION(11, 0, 11):
1165-
case IP_VERSION(11, 5, 0):
1166-
case IP_VERSION(11, 0, 12):
1159+
switch (adev->ip_versions[MP1_HWIP][0]) {
1160+
case IP_VERSION(11, 0, 7):
1161+
case IP_VERSION(11, 0, 11):
1162+
case IP_VERSION(11, 5, 0):
1163+
case IP_VERSION(11, 0, 12):
1164+
if (adev->in_suspend && smu_is_dpm_running(smu)) {
1165+
dev_info(adev->dev, "dpm has been enabled\n");
11671166
ret = smu_system_features_control(smu, true);
11681167
if (ret)
11691168
dev_err(adev->dev, "Failed system features control!\n");
1170-
break;
1171-
default:
1172-
break;
1169+
return ret;
11731170
}
1174-
return ret;
1171+
break;
1172+
default:
1173+
break;
11751174
}
11761175

11771176
ret = smu_init_display_count(smu, 0);

0 commit comments

Comments
 (0)