aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2014-07-11 13:30:14 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2014-07-23 01:05:18 -0400
commit109fc2adec3adf1a8c84533b2828da7016bf2abd (patch)
tree3984935547fae5fda9c786d4d9dbe58161ef6531
parent3638379cfe83604f2759399a998fa90ad0fd56ca (diff)
drm/i915: More checks for psr.enabled
We need to make sure that no one else is using this in the enable function and also that the work item hasn't raced with the disabled function. v2: Improve bisectability by moving one hunk to an earlier patch. v3: added missing dev_priv declaration (Rodrigo) Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> (v2) Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r--drivers/gpu/drm/i915/intel_dp.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
index f630c23a7bd6..fd92a813865b 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -1850,6 +1850,7 @@ static void intel_edp_psr_do_enable(struct intel_dp *intel_dp)
1850void intel_edp_psr_enable(struct intel_dp *intel_dp) 1850void intel_edp_psr_enable(struct intel_dp *intel_dp)
1851{ 1851{
1852 struct drm_device *dev = intel_dp_to_dev(intel_dp); 1852 struct drm_device *dev = intel_dp_to_dev(intel_dp);
1853 struct drm_i915_private *dev_priv = dev->dev_private;
1853 1854
1854 if (!HAS_PSR(dev)) { 1855 if (!HAS_PSR(dev)) {
1855 DRM_DEBUG_KMS("PSR not supported on this platform\n"); 1856 DRM_DEBUG_KMS("PSR not supported on this platform\n");
@@ -1861,6 +1862,11 @@ void intel_edp_psr_enable(struct intel_dp *intel_dp)
1861 return; 1862 return;
1862 } 1863 }
1863 1864
1865 if (dev_priv->psr.enabled) {
1866 DRM_DEBUG_KMS("PSR already in use\n");
1867 return;
1868 }
1869
1864 /* Setup PSR once */ 1870 /* Setup PSR once */
1865 intel_edp_psr_setup(intel_dp); 1871 intel_edp_psr_setup(intel_dp);
1866 1872