Commit 51c45e45 authored by Yang Wang's avatar Yang Wang Committed by Alex Deucher

drm/amd/pm: skip to set mp1 unload state in special case

set mp1 unload state will cause the SMC FW can't accept any SMU message,
skip to set mp1 unload state to avoid following case fail:
- runtime pm case.
- gpu reset case.

Fixes: 72aeb6ee ("drm/amd/pm: fix driver reload SMC firmware fail issue for smu13")
Signed-off-by: default avatarYang Wang <KevinYang.Wang@amd.com>
Reviewed-by: default avatarKenneth Feng <kenneth.feng@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 8748de87
......@@ -1415,12 +1415,13 @@ static int smu_disable_dpms(struct smu_context *smu)
switch (adev->ip_versions[MP1_HWIP][0]) {
case IP_VERSION(13, 0, 0):
case IP_VERSION(13, 0, 7):
ret = smu_set_mp1_state(smu, PP_MP1_STATE_UNLOAD);
if (ret) {
dev_err(adev->dev, "Fail set mp1 state to UNLOAD!\n");
return ret;
if (!(adev->in_runpm || amdgpu_in_reset(adev))) {
ret = smu_set_mp1_state(smu, PP_MP1_STATE_UNLOAD);
if (ret) {
dev_err(adev->dev, "Fail set mp1 state to UNLOAD!\n");
return ret;
}
}
return 0;
default:
break;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment