diff options
author | Adam Jackson <ajax@redhat.com> | 2008-07-01 14:07:15 -0400 |
---|---|---|
committer | Adam Jackson <ajax@redhat.com> | 2008-07-01 14:07:15 -0400 |
commit | ea57dcf423ebc3cb24060eebfc1943703448c320 (patch) | |
tree | ace7af592604dfdc9e2dd3f336457aa35af74576 | |
parent | 3631892e0c53568b9f6b0c4aeacd2354305376e6 (diff) | |
download | xorg-driver-xf86-video-vesa-ea57dcf423ebc3cb24060eebfc1943703448c320.tar.gz |
Use VBE services for DPMS instead of banging VGA registers manually.
-rw-r--r-- | src/vesa.c | 34 |
1 files changed, 1 insertions, 33 deletions
@@ -1656,45 +1656,13 @@ VESADisplayPowerManagementSet(ScrnInfoPtr pScrn, int mode, int flags) { VESAPtr pVesa = VESAGetRec(pScrn); - unsigned char seq1 = 0, crtc17 = 0; if (!pScrn->vtSema) return; - switch (mode) { - case DPMSModeOn: - /* Screen: On; HSync: On, VSync: On */ - seq1 = 0x00; - crtc17 = 0x80; - break; - case DPMSModeStandby: - /* Screen: Off; HSync: Off, VSync: On -- Not Supported */ - seq1 = 0x20; - crtc17 = 0x80; - break; - case DPMSModeSuspend: - /* Screen: Off; HSync: On, VSync: Off -- Not Supported */ - seq1 = 0x20; - crtc17 = 0x80; - break; - case DPMSModeOff: - /* Screen: Off; HSync: Off, VSync: Off */ - seq1 = 0x20; - crtc17 = 0x00; - break; - } - WriteSeq(0x00, 0x01); /* Synchronous Reset */ - seq1 |= ReadSeq(pVesa, 0x01) & ~0x20; - WriteSeq(0x01, seq1); - crtc17 |= ReadCrtc(pVesa, 0x17) & ~0x80; - usleep(10000); - WriteCrtc(0x17, crtc17); - WriteSeq(0x00, 0x03); /* End Reset */ + VBEDPMSSet(pVesa->pVbe, mode); } - - - /*********************************************************************** * DGA stuff ***********************************************************************/ |