diff -Nurp xserver-xorg-video-ati-6.7.192/src/radeon_bios.c xserver-xorg-video-ati-6.7.192.debug/src/radeon_bios.c --- xserver-xorg-video-ati-6.7.192/src/radeon_bios.c 2007-09-11 19:44:12.000000000 +0200 +++ xserver-xorg-video-ati-6.7.192.debug/src/radeon_bios.c 2007-09-11 20:27:07.000000000 +0200 @@ -62,6 +62,8 @@ Bool RADEONGetBIOSInfo(ScrnInfoPtr pScrn int tmp; unsigned short dptr; + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "RADEONGetBIOSInfo\n"); if (!(info->VBIOS = xalloc(RADEON_VBIOS_SIZE))) { xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "Cannot allocate space for hold Video BIOS!\n"); @@ -146,6 +148,8 @@ static Bool RADEONGetATOMConnectorInfoFr RADEONInfoPtr info = RADEONPTR (pScrn); int offset, i, tmp, tmp0, crtc, portinfo, gpio; + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "RADEONGetATOMConnectorInfoFromBIOS\n"); if (!info->VBIOS) return FALSE; offset = RADEON_BIOS16(info->MasterDataStart + 22); @@ -227,6 +231,8 @@ static Bool RADEONGetLegacyConnectorInfo RADEONInfoPtr info = RADEONPTR (pScrn); int offset, i, entry, tmp, tmp0, tmp1; + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "RADEONGetLegacyConnectorInfoFromBIOS\n"); if (!info->VBIOS) return FALSE; offset = RADEON_BIOS16(info->ROMHeaderStart + 0x50); @@ -633,6 +639,8 @@ Bool RADEONGetClockInfoFromBIOS (ScrnInf RADEONPLLPtr pll = &info->pll; CARD16 pll_info_block; + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "RADEONGetClockInfoFromBIOS\n"); if (!info->VBIOS) { return FALSE; } else { @@ -683,6 +691,8 @@ Bool RADEONGetLVDSInfoFromBIOS (xf86Outp RADEONOutputPrivatePtr radeon_output = output->driver_private; unsigned long tmp, i; + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "RADEONGetLVDSInfoFromBIOS\n"); if (!info->VBIOS) return FALSE; if (info->IsAtomBios) { @@ -765,6 +775,7 @@ Bool RADEONGetLVDSInfoFromBIOS (xf86Outp if (tmp0 == 0) break; if ((RADEON_BIOS16(tmp0) == radeon_output->PanelXRes) && (RADEON_BIOS16(tmp0+2) == radeon_output->PanelYRes)) { + ErrorF(" reading from bios table entry %d\n",i); radeon_output->HBlank = (RADEON_BIOS16(tmp0+17) - RADEON_BIOS16(tmp0+19)) * 8; radeon_output->HOverPlus = (RADEON_BIOS16(tmp0+21) - @@ -792,6 +803,8 @@ Bool RADEONGetHardCodedEDIDFromBIOS (xf8 unsigned long tmp; char EDID[256]; + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "RADEONGetHardCodedEDIDFromBIOS\n"); if (!info->VBIOS) return FALSE; if (info->IsAtomBios) { @@ -827,6 +840,8 @@ Bool RADEONGetTMDSInfoFromBIOS (xf86Outp CARD32 tmp, maxfreq; int i, n; + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "RADEONGetTMDSInfoFromBIOS\n"); if (!info->VBIOS) return FALSE; if (info->IsAtomBios) { diff -Nurp xserver-xorg-video-ati-6.7.192/src/radeon_crtc.c xserver-xorg-video-ati-6.7.192.debug/src/radeon_crtc.c --- xserver-xorg-video-ati-6.7.192/src/radeon_crtc.c 2007-09-11 19:44:12.000000000 +0200 +++ xserver-xorg-video-ati-6.7.192.debug/src/radeon_crtc.c 2007-09-11 20:32:51.000000000 +0200 @@ -64,6 +64,7 @@ radeon_crtc_dpms(xf86CrtcPtr crtc, int m RADEONInfoPtr info = RADEONPTR(pScrn); unsigned char *RADEONMMIO = info->MMIO; + ErrorF("radeon_crtc_dpms: crtc_id=%d, mode=%d\n", radeon_crtc->crtc_id, mode); mask = radeon_crtc->crtc_id ? (RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS | RADEON_CRTC2_HSYNC_DIS | RADEON_CRTC2_DISP_REQ_EN_B) : (RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_HSYNC_DIS | RADEON_CRTC_VSYNC_DIS); @@ -116,6 +117,7 @@ radeon_crtc_mode_fixup(xf86CrtcPtr crtc, static void radeon_crtc_mode_prepare(xf86CrtcPtr crtc) { + ErrorF("radeon_crtc_mode_prepare\n"); radeon_crtc_dpms(crtc, DPMSModeOff); } @@ -822,7 +824,7 @@ radeon_crtc_mode_set(xf86CrtcPtr crtc, D switch (radeon_crtc->crtc_id) { case 0: - ErrorF("init crtc1\n"); + ErrorF("init crtc1 (id 0)\n"); RADEONInitCrtcRegisters(crtc, &info->ModeReg, adjusted_mode); RADEONInitCrtcBase(crtc, &info->ModeReg, x, y); dot_clock = adjusted_mode->Clock / 1000.0; @@ -836,7 +838,7 @@ radeon_crtc_mode_set(xf86CrtcPtr crtc, D } break; case 1: - ErrorF("init crtc2\n"); + ErrorF("init crtc2 (id 1)\n"); RADEONInitCrtc2Registers(crtc, &info->ModeReg, adjusted_mode); RADEONInitCrtc2Base(crtc, &info->ModeReg, x, y); dot_clock = adjusted_mode->Clock / 1000.0; @@ -911,6 +913,7 @@ radeon_crtc_mode_set(xf86CrtcPtr crtc, D static void radeon_crtc_mode_commit(xf86CrtcPtr crtc) { + ErrorF("radeon_crtc_mode_commit\n"); radeon_crtc_dpms(crtc, DPMSModeOn); } diff -Nurp xserver-xorg-video-ati-6.7.192/src/radeon_display.c xserver-xorg-video-ati-6.7.192.debug/src/radeon_display.c --- xserver-xorg-video-ati-6.7.192/src/radeon_display.c 2007-09-11 19:44:12.000000000 +0200 +++ xserver-xorg-video-ati-6.7.192.debug/src/radeon_display.c 2007-09-11 20:53:26.000000000 +0200 @@ -324,16 +324,22 @@ void RADEONEnableDisplay(xf86OutputPtr o int tv_dac_change = 0; radeon_output = output->driver_private; + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "RADEONEnableDisplay\n"); + ErrorF(" RADEONEnableDisplay %s, num=%d, crtc_num=%d\n",bEnable?"true":"false", radeon_output->num, radeon_output->crtc_num); if (bEnable) { ErrorF("enable montype: %d\n", radeon_output->MonType); if (radeon_output->MonType == MT_CRT) { + ErrorF(" MT_CRT - "); if (radeon_output->DACType == DAC_PRIMARY) { + ErrorF("DAC_PRIMARY"); tmp = INREG(RADEON_CRTC_EXT_CNTL); tmp |= RADEON_CRTC_CRT_ON; OUTREG(RADEON_CRTC_EXT_CNTL, tmp); save->crtc_ext_cntl |= RADEON_CRTC_CRT_ON; RADEONDacPowerSet(pScrn, bEnable, (radeon_output->DACType == DAC_PRIMARY)); } else if (radeon_output->DACType == DAC_TVDAC) { + ErrorF("DAC_TVDAC"); if (info->ChipFamily == CHIP_FAMILY_R200) { tmp = INREG(RADEON_FP2_GEN_CNTL); tmp |= (RADEON_FP2_ON | RADEON_FP2_DVO_EN); @@ -347,19 +353,25 @@ void RADEONEnableDisplay(xf86OutputPtr o } tv_dac_change = 1; } + ErrorF("\n"); } else if (radeon_output->MonType == MT_DFP) { + ErrorF(" MT_DFP - "); if (radeon_output->TMDSType == TMDS_INT) { + ErrorF("TMDS_INT"); tmp = INREG(RADEON_FP_GEN_CNTL); tmp |= (RADEON_FP_FPON | RADEON_FP_TMDS_EN); OUTREG(RADEON_FP_GEN_CNTL, tmp); save->fp_gen_cntl |= (RADEON_FP_FPON | RADEON_FP_TMDS_EN); } else if (radeon_output->TMDSType == TMDS_EXT) { + ErrorF("TMDS_EXT"); tmp = INREG(RADEON_FP2_GEN_CNTL); tmp |= (RADEON_FP2_ON | RADEON_FP2_DVO_EN); OUTREG(RADEON_FP2_GEN_CNTL, tmp); save->fp2_gen_cntl |= (RADEON_FP2_ON | RADEON_FP2_DVO_EN); } + ErrorF("\n"); } else if (radeon_output->MonType == MT_LCD) { + ErrorF(" MT_LCD\n"); tmp = INREG(RADEON_LVDS_GEN_CNTL); tmp |= (RADEON_LVDS_ON | RADEON_LVDS_BLON); tmp &= ~(RADEON_LVDS_DISPLAY_DIS); @@ -369,6 +381,7 @@ void RADEONEnableDisplay(xf86OutputPtr o save->lvds_gen_cntl &= ~(RADEON_LVDS_DISPLAY_DIS); } else if (radeon_output->MonType == MT_STV || radeon_output->MonType == MT_CTV) { + ErrorF(" MT_STV or MT_CTV\n"); tmp = INREG(RADEON_TV_MASTER_CNTL); tmp |= RADEON_TV_ON; OUTREG(RADEON_TV_MASTER_CNTL, tmp); @@ -798,6 +811,8 @@ void RADEONBlank(ScrnInfoPtr pScrn) xf86CrtcPtr crtc; int o, c; + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "RADEONBlank\n"); for (c = 0; c < xf86_config->num_crtc; c++) { crtc = xf86_config->crtc[c]; for (o = 0; o < xf86_config->num_output; o++) { @@ -805,8 +820,10 @@ void RADEONBlank(ScrnInfoPtr pScrn) if (output->crtc != crtc) continue; + ErrorF(" turning off output for crtc %d\n",c); output->funcs->dpms(output, DPMSModeOff); } + ErrorF(" turning off crtc %d\n",c); crtc->funcs->dpms(crtc, DPMSModeOff); } } @@ -818,16 +835,20 @@ void RADEONUnblank(ScrnInfoPtr pScrn) xf86CrtcPtr crtc; int o, c; + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "RADEONUnblank\n"); for (c = 0; c < xf86_config->num_crtc; c++) { crtc = xf86_config->crtc[c]; if(!crtc->enabled) continue; + ErrorF(" turning on crtc %d\n",c); crtc->funcs->dpms(crtc, DPMSModeOn); for (o = 0; o < xf86_config->num_output; o++) { output = xf86_config->output[o]; if (output->crtc != crtc) continue; + ErrorF(" turning on output for crtc %d\n",c); output->funcs->dpms(output, DPMSModeOn); } } diff -Nurp xserver-xorg-video-ati-6.7.192/src/radeon_driver.c xserver-xorg-video-ati-6.7.192.debug/src/radeon_driver.c --- xserver-xorg-video-ati-6.7.192/src/radeon_driver.c 2007-09-11 19:44:12.000000000 +0200 +++ xserver-xorg-video-ati-6.7.192.debug/src/radeon_driver.c 2007-09-11 20:16:56.000000000 +0200 @@ -2458,6 +2458,8 @@ static Bool RADEONPreInitControllers(Scr xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(pScrn); int i; + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "RADEONPreInitControllers\n"); if (!RADEONAllocateControllers(pScrn)) return FALSE; @@ -3584,6 +3586,7 @@ Bool RADEONScreenInit(int scrnIndex, Scr crtc->desiredY = 0; } + ErrorF("RADEONScreenInit calls xf86CrtcSetMode\n"); if (!xf86CrtcSetMode (crtc, &crtc->desiredMode, crtc->desiredRotation, crtc->desiredX, crtc->desiredY)) return FALSE; @@ -3729,6 +3732,7 @@ Bool RADEONScreenInit(int scrnIndex, Scr info->BlockHandler = pScreen->BlockHandler; pScreen->BlockHandler = RADEONBlockHandler; + ErrorF("RADEONScreenInit calls xf86CrtcScreenInit\n"); if (!xf86CrtcScreenInit (pScreen)) return FALSE; @@ -4406,7 +4410,8 @@ void RADEONRestoreTVRegisters(ScrnInfoPt RADEONInfoPtr info = RADEONPTR(pScrn); unsigned char *RADEONMMIO = info->MMIO; - ErrorF("Entering Restore TV\n"); + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "RADEONRestoreTVRegisters\n"); OUTREG(RADEON_TV_MASTER_CNTL, (restore->tv_master_cntl | RADEON_TV_ASYNC_RST @@ -4577,6 +4582,8 @@ void RADEONRestorePLLRegisters(ScrnInfoP return; #endif + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "RADEONRestorePLLRegisters\n"); pllGain = RADEONComputePLLGain(info->pll.reference_freq, restore->ppll_ref_div & RADEON_PPLL_REF_DIV_MASK, restore->ppll_div_3 & RADEON_PPLL_FB3_DIV_MASK); @@ -5398,10 +5405,12 @@ void RADEONRestore(ScrnInfoPtr pScrn) /* need to make sure we don't enable a crtc by accident or we may get a hang */ if (info->crtc2_on) { crtc = xf86_config->crtc[1]; + ErrorF(" turning on crtc[1]\n"); crtc->funcs->dpms(crtc, DPMSModeOn); } if (info->crtc_on) { crtc = xf86_config->crtc[0]; + ErrorF(" turning on crtc[0]\n"); crtc->funcs->dpms(crtc, DPMSModeOn); } /* to restore console mode, DAC registers should be set after every other registers are set, @@ -5749,7 +5758,8 @@ Bool RADEONEnterVT(int scrnIndex, int fl crtc->desiredX = 0; crtc->desiredY = 0; } - + + ErrorF("RADEONEnterVT calls xf86CrtcSetMode\n"); if (!xf86CrtcSetMode (crtc, &crtc->desiredMode, crtc->desiredRotation, crtc->desiredX, crtc->desiredY)) return FALSE; @@ -5789,6 +5799,7 @@ Bool RADEONEnterVT(int scrnIndex, int fl // pScrn->AdjustFrame(scrnIndex, pScrn->frameX0, pScrn->frameY0, 0); + ErrorF("RADEONEnterVT done\n"); return TRUE; } diff -Nurp xserver-xorg-video-ati-6.7.192/src/radeon_output.c xserver-xorg-video-ati-6.7.192.debug/src/radeon_output.c --- xserver-xorg-video-ati-6.7.192/src/radeon_output.c 2007-09-11 19:44:12.000000000 +0200 +++ xserver-xorg-video-ati-6.7.192.debug/src/radeon_output.c 2007-09-11 21:43:46.000000000 +0200 @@ -609,6 +609,7 @@ static RADEONMonitorType RADEONPortCheck static void radeon_dpms(xf86OutputPtr output, int mode) { + ErrorF("radeon_dpms -> "); switch(mode) { case DPMSModeOn: RADEONEnableDisplay(output, TRUE); @@ -1018,6 +1019,9 @@ radeon_mode_set(xf86OutputPtr output, Di xf86CrtcPtr crtc = output->crtc; RADEONCrtcPrivatePtr radeon_crtc = crtc->driver_private; + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, + "radeon_mode_set\n"); + RADEONInitOutputRegisters(pScrn, &info->ModeReg, adjusted_mode, output, radeon_crtc->crtc_id); if (radeon_crtc->crtc_id == 0) @@ -1053,6 +1057,7 @@ radeon_mode_set(xf86OutputPtr output, Di static void radeon_mode_commit(xf86OutputPtr output) { + ErrorF("radeon_mode_commit -> "); RADEONEnableDisplay(output, TRUE); }