*** xf86-video-intel-2.4.1/src/i830_display.c 2008-08-15 11:35:24.000000000 +0900 --- xf86-video-intel-2.4.1.new/src/i830_display.c 2008-08-21 13:18:50.000000000 +0900 *************** *** 796,801 **** --- 796,805 ---- int dspbase_reg = (plane == 0) ? DSPABASE : DSPBBASE; uint32_t temp; + /* DEBUG */ + xf86DrvMsg(pScrn->scrnIndex, X_INFO, "*** [BEGIN] i830_crtc_dpms()\n"); + /* DEBUG */ + /* XXX: When our outputs are all unaware of DPMS modes other than off and * on, we should map those modes to DPMSModeOff in the CRTC. */ *************** *** 803,808 **** --- 807,817 ---- case DPMSModeOn: case DPMSModeStandby: case DPMSModeSuspend: + /* DEBUG */ + xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "*** case DPMSModeOn | DPMSModeStandby | DPMSModeSuspend\n"); + /* DEBUG */ + /* Enable the DPLL */ temp = INREG(dpll_reg); if ((temp & DPLL_VCO_ENABLE) == 0) *************** *** 846,867 **** --- 855,911 ---- i830_modeset_ctl(crtc, 0); break; case DPMSModeOff: + /* DEBUG */ + xf86DrvMsg(pScrn->scrnIndex, X_INFO, "*** case DPMSModeOff\n"); + /* DEBUG */ + i830_modeset_ctl(crtc, 1); /* Shut off compression if in use */ if (i830_use_fb_compression(crtc)) i830_disable_fb_compression(crtc); + /* DEBUG */ + xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "*** before i830_crtc_dpms_video()\n"); + /* DEBUG */ + /* Give the overlay scaler a chance to disable if it's on this pipe */ i830_crtc_dpms_video(crtc, FALSE); + /* DEBUG */ + xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "*** after i830_crtc_dpms_video()\n"); + xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "*** before OUTREG(VGACNTRL, VGA_DISP_DISABLE)\n"); + sleep(2); + /* DEBUG */ + /* Disable the VGA plane that we never use */ OUTREG(VGACNTRL, VGA_DISP_DISABLE); + /* DEBUG */ + xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "*** after OUTREG(VGACNTRL, VGA_DISP_DISABLE)\n"); + /* DEBUG */ + /* May need to leave pipe A on */ if ((pipe != 0) || !(pI830->quirk_flag & QUIRK_PIPEA_FORCE)) { + /* DEBUG */ + xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "*** before INREG(dspcntr_reg)\n"); + sleep(2); + /* DEBUG */ + /* Disable display plane */ temp = INREG(dspcntr_reg); + + /* DEBUG */ + xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "*** after INREG(dspcntr_reg)\n"); + sleep(2); + /* DEBUG */ + if ((temp & DISPLAY_PLANE_ENABLE) != 0) { OUTREG(dspcntr_reg, temp & ~DISPLAY_PLANE_ENABLE); *************** *** 924,929 **** --- 968,976 ---- } } #endif + /* DEBUG */ + xf86DrvMsg(pScrn->scrnIndex, X_INFO, "*** [END] i830_crtc_dpms()\n"); + /* DEBUG */ } static Bool