diff options
author | Owain G. Ainsworth <oga@openbsd.org> | 2010-06-07 20:46:10 +0100 |
---|---|---|
committer | Owain G. Ainsworth <oga@openbsd.org> | 2010-06-07 21:53:07 +0100 |
commit | 09c5b49b691132d0085c29b74decb45e0d4215e9 (patch) | |
tree | 79db8525029967035b75f80c17044734be97c39b | |
parent | e6b01f3990e439d800e5c9b27da7c095eaf75bea (diff) |
Don't forget to do modeset_ctl on dpms, also make sure we disable the crtc the right way on entervt for ironlake.
-rw-r--r-- | src/i830_display.c | 4 | ||||
-rw-r--r-- | src/i830_driver.c | 5 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/i830_display.c b/src/i830_display.c index 39a535bd..2358f193 100644 --- a/src/i830_display.c +++ b/src/i830_display.c @@ -1738,6 +1738,7 @@ ironlake_crtc_enable(xf86CrtcPtr crtc) ErrorF("DPMS on done\n"); + i830_modeset_ctl(crtc, 0); } void @@ -1760,6 +1761,8 @@ ironlake_crtc_disable(xf86CrtcPtr crtc) uint32_t temp, pipe_bpc; int n; + i830_modeset_ctl(crtc, 1); + temp = INREG(pipeconf_reg); pipe_bpc = temp & PIPE_BPC_MASK; @@ -1920,6 +1923,7 @@ static void igdng_crtc_dpms(xf86CrtcPtr crtc, int mode) break; case DPMSModeOff: ironlake_crtc_disable(crtc); + intel_crtc->enabled = FALSE; break; } } diff --git a/src/i830_driver.c b/src/i830_driver.c index 352a3413..1aa7f19e 100644 --- a/src/i830_driver.c +++ b/src/i830_driver.c @@ -3007,7 +3007,10 @@ static Bool I830EnterVT(int scrnIndex, int flags) /* Disable pipes */ for (i = 0; i < xf86_config->num_crtc; i++) { xf86CrtcPtr crtc = xf86_config->crtc[i]; - i830_crtc_disable(crtc, TRUE); + if (IS_IGDNG(intel)) + ironlake_crtc_disable(crtc); + else + i830_crtc_disable(crtc, TRUE); } i830WaitForVblank(scrn); } |