drm/amdgpu fix amdgpu.dpm=0 (v2)
Fix crash when disabling dpm.
v2: agd5f: fix coding style, cleanup commit message
Signed-off-by: Sonny Jiang <sonny.jiang@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
diff --git a/drivers/gpu/drm/amd/amdgpu/cz_dpm.c b/drivers/gpu/drm/amd/amdgpu/cz_dpm.c
index e56f54b..adf4dbc 100644
--- a/drivers/gpu/drm/amd/amdgpu/cz_dpm.c
+++ b/drivers/gpu/drm/amd/amdgpu/cz_dpm.c
@@ -1206,10 +1206,7 @@
static int cz_dpm_hw_init(struct amdgpu_device *adev)
{
- int ret;
-
- if (!amdgpu_dpm)
- return 0;
+ int ret = 0;
mutex_lock(&adev->pm.mutex);
@@ -1229,6 +1226,12 @@
return ret;
}
+ if (!amdgpu_dpm) {
+ adev->pm.dpm_enabled = false;
+ mutex_unlock(&adev->pm.mutex);
+ return ret;
+ }
+
/* cz dpm setup asic */
cz_dpm_setup_asic(adev);
@@ -1326,6 +1329,12 @@
return ret;
}
+ if (!amdgpu_dpm) {
+ adev->pm.dpm_enabled = false;
+ mutex_unlock(&adev->pm.mutex);
+ return ret;
+ }
+
/* cz dpm setup asic */
cz_dpm_setup_asic(adev);