aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJani Nikula <jani.nikula@intel.com>2013-08-30 12:40:32 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2013-09-04 11:34:57 -0400
commit8807e55b3a1bf7b159dcefa4504e204df364d4a1 (patch)
treeab1b17ea7f47536acdb942c8b91b360199a9ce72
parentecbc5cf34068d22cf57bac596809a346576c38a3 (diff)
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>
-rw-r--r--drivers/gpu/drm/i915/intel_display.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index e16b997bfd0b..24c3937999de 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)
3427 intel_update_fbc(dev); 3427 intel_update_fbc(dev);
3428 mutex_unlock(&dev->struct_mutex); 3428 mutex_unlock(&dev->struct_mutex);
3429 3429
3430 for_each_encoder_on_crtc(dev, crtc, encoder) 3430 for_each_encoder_on_crtc(dev, crtc, encoder) {
3431 encoder->enable(encoder); 3431 encoder->enable(encoder);
3432 intel_opregion_notify_encoder(encoder, true);
3433 }
3432 3434
3433 /* 3435 /*
3434 * There seems to be a race in PCH platform hw (at least on some 3436 * 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)
3542 if (!intel_crtc->active) 3544 if (!intel_crtc->active)
3543 return; 3545 return;
3544 3546
3545 for_each_encoder_on_crtc(dev, crtc, encoder) 3547 for_each_encoder_on_crtc(dev, crtc, encoder) {
3548 intel_opregion_notify_encoder(encoder, false);
3546 encoder->disable(encoder); 3549 encoder->disable(encoder);
3550 }
3547 3551
3548 intel_crtc_wait_for_pending_flips(crtc); 3552 intel_crtc_wait_for_pending_flips(crtc);
3549 drm_vblank_off(dev, pipe); 3553 drm_vblank_off(dev, pipe);