[Intel-gfx] [PATCH] drm/i915: fix VDD enabling and runtime PM refcount

Paulo Zanoni przanoni at gmail.com
Wed Dec 11 23:11:14 CET 2013


From: Paulo Zanoni <paulo.r.zanoni at intel.com>

Initially the VDD patches were on top of the runtime PM patches, so
they contained the intel_runtime_pm_put() call that this patch adds.
But I was asked to send a version of the VDD series that was not on
top of the runtime PM series, so I sent it. The problem is that
runtime PM got merged, then the "VDD not on top of runtime PM" got
merged without being fixed.

I can't explain why the ironlake_edp_panel_vdd_on() call did not get
merged with the rest of the patch. That's just weird.

Both chunks should have been part of:
    commit c26fe8e5eb34c18aa9ab60fcf4c3150663a52306
    Author: Paulo Zanoni <paulo.r.zanoni at intel.com>
    Date:   Fri Dec 6 17:32:41 2013 -0200
        drm/i915: don't touch the VDD when disabling the panel

Signed-off-by: Paulo Zanoni <paulo.r.zanoni at intel.com>
---
 drivers/gpu/drm/i915/intel_ddi.c | 1 -
 drivers/gpu/drm/i915/intel_dp.c  | 3 ---
 2 files changed, 4 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
index 3a14d99..172130a 100644
--- a/drivers/gpu/drm/i915/intel_ddi.c
+++ b/drivers/gpu/drm/i915/intel_ddi.c
@@ -1164,7 +1164,6 @@ static void intel_ddi_post_disable(struct intel_encoder *intel_encoder)
 
 	if (type == INTEL_OUTPUT_DISPLAYPORT || type == INTEL_OUTPUT_EDP) {
 		struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
-		ironlake_edp_panel_vdd_on(intel_dp);
 		intel_dp_sink_dpms(intel_dp, DRM_MODE_DPMS_OFF);
 		ironlake_edp_panel_off(intel_dp);
 	}
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
index 88ad417..9b40113 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -1252,9 +1252,6 @@ void ironlake_edp_panel_off(struct intel_dp *intel_dp)
 	POSTING_READ(pp_ctrl_reg);
 
 	ironlake_wait_panel_off(intel_dp);
-
-	/* We got a reference when we enabled the VDD. */
-	intel_runtime_pm_put(dev_priv);
 }
 
 void ironlake_edp_backlight_on(struct intel_dp *intel_dp)
-- 
1.8.3.1




More information about the Intel-gfx mailing list