|
@@ -508,6 +508,7 @@ static int dm_suspend(void *handle)
|
|
|
|
|
|
amdgpu_dm_irq_suspend(adev);
|
|
|
|
|
|
+ WARN_ON(adev->dm.cached_state);
|
|
|
adev->dm.cached_state = drm_atomic_helper_suspend(adev->ddev);
|
|
|
|
|
|
dc_set_power_state(
|
|
@@ -607,6 +608,9 @@ int amdgpu_dm_display_resume(struct amdgpu_device *adev )
|
|
|
|
|
|
ret = drm_atomic_helper_resume(ddev, adev->dm.cached_state);
|
|
|
|
|
|
+ drm_atomic_state_put(adev->dm.cached_state);
|
|
|
+ adev->dm.cached_state = NULL;
|
|
|
+
|
|
|
amdgpu_dm_irq_resume_late(adev);
|
|
|
|
|
|
return ret;
|