| From 8852fa562133da72a1aa6f96c508b76cd21e2ce3 Mon Sep 17 00:00:00 2001 |
| From: Jani Nikula <jani.nikula@intel.com> |
| Date: Fri, 30 Aug 2013 19:40:32 +0300 |
| Subject: drm/i915: do display power state notification on crtc enable/disable |
| |
| The spec says to notify prior to power down and after power up. It is |
| unclear whether it makes a difference. |
| |
| Signed-off-by: Jani Nikula <jani.nikula@intel.com> |
| Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com> |
| Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> |
| (cherry picked from commit 8807e55b3a1bf7b159dcefa4504e204df364d4a1) |
| Signed-off-by: Darren Hart <dvhart@linux.intel.com> |
| --- |
| drivers/gpu/drm/i915/intel_display.c | 8 ++++++-- |
| 1 file changed, 6 insertions(+), 2 deletions(-) |
| |
| diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c |
| index 3658a7ae7c41..821991c0958f 100644 |
| --- a/drivers/gpu/drm/i915/intel_display.c |
| +++ b/drivers/gpu/drm/i915/intel_display.c |
| @@ -3427,8 +3427,10 @@ static void haswell_crtc_enable(struct drm_crtc *crtc) |
| intel_update_fbc(dev); |
| mutex_unlock(&dev->struct_mutex); |
| |
| - for_each_encoder_on_crtc(dev, crtc, encoder) |
| + for_each_encoder_on_crtc(dev, crtc, encoder) { |
| encoder->enable(encoder); |
| + intel_opregion_notify_encoder(encoder, true); |
| + } |
| |
| /* |
| * There seems to be a race in PCH platform hw (at least on some |
| @@ -3542,8 +3544,10 @@ static void haswell_crtc_disable(struct drm_crtc *crtc) |
| if (!intel_crtc->active) |
| return; |
| |
| - for_each_encoder_on_crtc(dev, crtc, encoder) |
| + for_each_encoder_on_crtc(dev, crtc, encoder) { |
| + intel_opregion_notify_encoder(encoder, false); |
| encoder->disable(encoder); |
| + } |
| |
| intel_crtc_wait_for_pending_flips(crtc); |
| drm_vblank_off(dev, pipe); |
| -- |
| 1.8.5.rc3 |
| |