diff --git a/src/radeon_driver.c b/src/radeon_driver.c index 3d33d47..5a9bdd1 100644 --- a/src/radeon_driver.c +++ b/src/radeon_driver.c @@ -4799,17 +4799,6 @@ static void RADEONRestore(ScrnInfoPtr pScrn) usleep(100000); #endif - /* need to make sure we don't enable a crtc by accident or we may get a hang */ - if (pRADEONEnt->HasCRTC2 && !info->IsSecondary) { - if (info->crtc2_on && xf86_config->num_crtc > 1) { - crtc = xf86_config->crtc[1]; - crtc->funcs->dpms(crtc, DPMSModeOn); - } - } - if (info->crtc_on) { - crtc = xf86_config->crtc[0]; - crtc->funcs->dpms(crtc, DPMSModeOn); - } #ifdef WITH_VGAHW if (info->VGAAccess) { @@ -4827,6 +4816,19 @@ static void RADEONRestore(ScrnInfoPtr pScrn) } #endif + /* need to make sure we don't enable a crtc by accident or we may get a hang */ + if (pRADEONEnt->HasCRTC2 && !info->IsSecondary) { + if (info->crtc2_on && xf86_config->num_crtc > 1) { + crtc = xf86_config->crtc[1]; + crtc->funcs->dpms(crtc, DPMSModeOn); + } + } + if (info->crtc_on) { + crtc = xf86_config->crtc[0]; + crtc->funcs->dpms(crtc, DPMSModeOn); + } + + /* to restore console mode, DAC registers should be set after every other registers are set, * otherwise,we may get blank screen */