Browse Source

drm/amdgpu: handle runtime pm in drm pre/post close

Close was not handled correctly.

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Alex Deucher 9 years ago
parent
commit
d6bda7b4b4
1 changed files with 4 additions and 0 deletions
  1. 4 0
      drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c

+ 4 - 0
drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c

@@ -601,6 +601,9 @@ void amdgpu_driver_postclose_kms(struct drm_device *dev,
 
 
 	kfree(fpriv);
 	kfree(fpriv);
 	file_priv->driver_priv = NULL;
 	file_priv->driver_priv = NULL;
+
+	pm_runtime_mark_last_busy(dev->dev);
+	pm_runtime_put_autosuspend(dev->dev);
 }
 }
 
 
 /**
 /**
@@ -615,6 +618,7 @@ void amdgpu_driver_postclose_kms(struct drm_device *dev,
 void amdgpu_driver_preclose_kms(struct drm_device *dev,
 void amdgpu_driver_preclose_kms(struct drm_device *dev,
 				struct drm_file *file_priv)
 				struct drm_file *file_priv)
 {
 {
+	pm_runtime_get_sync(dev->dev);
 }
 }
 
 
 /*
 /*