Clear current video crtc on DPMS off

When calling the video DPMS off function, make sure we zero out the current
crtc so that it will be properly re-set up next time video is turned on.

Fix from Peter Clifton with changes by Keith Packard.
This commit is contained in:
Jesse Barnes 2007-11-08 16:52:41 -08:00
parent e784e152a8
commit 43a59ab26b
1 changed files with 3 additions and 4 deletions

View File

@ -2832,15 +2832,14 @@ i830_crtc_dpms_video(xf86CrtcPtr crtc, Bool on)
if (crtc != pPriv->current_crtc)
return;
/* Check if it's the crtc the overlay is on */
if (on) {
i830_overlay_switch_to_crtc (pScrn, crtc);
} else {
/* Check if it's the crtc the overlay is off */
if (!on) {
/* We stop the video when mode switching, so we don't lock up
* the engine. The overlayOK will determine whether we can re-enable
* with the current video on completion of the mode switch.
*/
I830StopVideo(pScrn, pPriv, TRUE);
pPriv->current_crtc = NULL;
pPriv->overlayOK = FALSE;
pPriv->oneLineMode = FALSE;
}