summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrancisco Jerez <currojerez@riseup.net>2009-02-04 03:49:08 +0100
committerFrancisco Jerez <currojerez@riseup.net>2009-02-04 03:49:08 +0100
commit0b34c4a29fcf45ac24361b4691cca0fd99cc3a3f (patch)
treeae72093bf6e66bd20b9e93869d66aaa510f38803
parent1d46cca27b0d38d5355b5f93dd0ed0fe4f250d3f (diff)
Wait for vertical retrace before writing registers at SMILynx_CrtcDPMS_*
-rw-r--r--src/smilynx_crtc.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/smilynx_crtc.c b/src/smilynx_crtc.c
index 72e0db2..a8c0a03 100644
--- a/src/smilynx_crtc.c
+++ b/src/smilynx_crtc.c
@@ -866,12 +866,12 @@ SMILynx_CrtcDPMS_crt(xf86CrtcPtr crtc, int mode)
else
reg->SR21 &= ~0x88; /* Enable DAC and color palette RAM */
- VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x21, reg->SR21);
-
/* Wait for vertical retrace */
while (hwp->readST01(hwp) & 0x8) ;
while (!(hwp->readST01(hwp) & 0x8)) ;
+ VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x21, reg->SR21);
+
if(mode == DPMSModeOn){
/* Reload the LUT */
SMILynx_CrtcLoadLUT_crt(crtc);
@@ -895,12 +895,12 @@ SMILynx_CrtcDPMS_lcd(xf86CrtcPtr crtc, int mode)
else
reg->SR31 |= 0x80; /* Enable Virtual Refresh */
- VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x31, reg->SR31);
-
/* Wait for vertical retrace */
while (hwp->readST01(hwp) & 0x8) ;
while (!(hwp->readST01(hwp) & 0x8)) ;
+ VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x31, reg->SR31);
+
LEAVE();
}