Created attachment 28439 [details] Xorg.0.log Since the first version of radeonhd that works for my X1400 on Dell Inspiron 9400 (October 2007), I sometimes get a flickering panel when switching to a console. It does not make any difference whether I use pure text-mode- or a framebuffer-console. It looks a little bit like a crt that is not synchronized. Switching to X and back to console helps, even if I sometimes have to switch more than one time. I uploaded a (short, ugly) video to my server: http://apt.jenslody.de/images/flicker.mpg If I run xserver with -logverbose 7, there are only two differences between a "good" and a "bad" switch to console: --- X_to_console.godd 2009-08-08 11:50:37.000000000 +0200 +++ X_to_console.bad 2009-08-08 11:48:09.000000000 +0200 @@ -9,13 +9,14 @@ (II) RADEONHD(0): FUNCTION: RHDMCIdleWait (II) RADEONHD(0): FUNCTION: rhdRestore (II) RADEONHD(0): FUNCTION: RHDMCRestore +(EE) RADEONHD(0): RHDMCRestore: MC is still not idle!!! (II) RADEONHD(0): FUNCTION: rhdRestoreCursor (II) RADEONHD(0): FUNCTION: restoreCursor (II) RADEONHD(0): FUNCTION: RHDPLLsRestore (II) RADEONHD(0): FUNCTION: R500PLL1Restore (II) RADEONHD(0): FUNCTION: R500PLL1SetLow (II) RADEONHD(0): FUNCTION: PLL1Calibrate -(II) RADEONHD(0): PLL1Calibrate: lock in 147 loops +(II) RADEONHD(0): PLL1Calibrate: lock in 183 loops (II) RADEONHD(0): FUNCTION: R500PLL2Restore (II) RADEONHD(0): FUNCTION: R500PLL2Power (II) RADEONHD(0): FUNCTION: RHDLUTsRestore I always use latest git-sources. I adapted parts of the RHDMCIdleWait and include it in RHDMCRestore to give the rhdMC struct a better chance to be restored: diff --git a/src/rhd_mc.c b/src/rhd_mc.c index def871b..2525050 100644 --- a/src/rhd_mc.c +++ b/src/rhd_mc.c @@ -678,9 +678,19 @@ RHDMCRestore(RHDPtr rhdPtr) return; } - if (MC->Idle(MC)) - MC->Restore(MC); - else + CARD32 count = 1000; + do { + if (MC->Idle(MC)) + { + MC->Restore(MC); + return; + } + usleep(1000); + } while (count--); + +// if (MC->Idle(MC)) +// MC->Restore(MC); +// else xf86DrvMsg(rhdPtr->scrnIndex, X_ERROR, "%s: MC is still not idle!!!\n", __func__); } The error is not gone away, even if the "MC is still not idle!!!" error-message no longer occurs, so I think (hope) the memorycontroller gets restored. Jens
Does this issue occur with the preferred ati driver (xf86-vide-ati)? If so, please move this to the Driver/Radeon component. Development of radeonhd has pretty much halted and development focus is on the ati driver. Please see http://www.x.org/wiki/radeonhd If the issue does not exist in the ati driver (or if there is no response to this message), this bug will be closed as WONTFIX unless someone contributes a patch.
Closing due to lack of response. Please reopen and move to the Driver/Radeon component if this issue persists with xf86-video-ati
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.