From: Le Ma Date: Wed, 31 May 2023 08:08:50 +0000 (+0800) Subject: drm/amdgpu/pm: notify driver unloading to PMFW for SMU v13.0.6 dGPU X-Git-Tag: v6.5-rc1~28^2~12^2~67 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=09a77a40b51a979557521d5a2d39e431564d5d23;p=linux-block.git drm/amdgpu/pm: notify driver unloading to PMFW for SMU v13.0.6 dGPU Per requested, follow the same sequence as APU to send only PPSMC_MSG_PrepareForDriverUnload to PMFW during driver unloading. Signed-off-by: Le Ma Reviewed-by: Shiwu Zhang Reviewed-by: Lijo Lazar Reviewed-by: Hawking Zhang Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_6_ppt.c b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_6_ppt.c index 2611241a5ff1..a92ea4601ea4 100644 --- a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_6_ppt.c +++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_6_ppt.c @@ -1413,18 +1413,16 @@ static int smu_v13_0_6_system_features_control(struct smu_context *smu, bool enable) { struct amdgpu_device *adev = smu->adev; - int ret; - - /* On APUs, notify FW that the device is no longer driver managed */ - if (adev->flags & AMD_IS_APU) { - if (!enable) - smu_v13_0_6_notify_unload(smu); + int ret = 0; - return 0; + if (enable) { + if (!(adev->flags & AMD_IS_APU)) + ret = smu_v13_0_system_features_control(smu, enable); + } else { + /* Notify FW that the device is no longer driver managed */ + smu_v13_0_6_notify_unload(smu); } - ret = smu_v13_0_system_features_control(smu, enable); - return ret; }