[Bug 23217] New: X1400 sometimes flickering when switching to console
http://bugs.freedesktop.org/show_bug.cgi?id=23217 Summary: X1400 sometimes flickering when switching to console Product: xorg Version: unspecified Platform: x86-64 (AMD64) OS/Version: Linux (All) Status: NEW Severity: normal Priority: medium Component: Driver/radeonhd AssignedTo: lverhaegen@suse.de ReportedBy: radeonhd@jenslody.de QAContact: xorg-team@lists.x.org Created an attachment (id=28439) --> (http://bugs.freedesktop.org/attachment.cgi?id=28439) 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 -- Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. _______________________________________________ xorg-team mailing list xorg-team@lists.x.org http://lists.x.org/mailman/listinfo/xorg-team -- To unsubscribe, e-mail: radeonhd+unsubscribe@opensuse.org For additional commands, e-mail: radeonhd+help@opensuse.org
https://bugs.freedesktop.org/show_bug.cgi?id=23217
--- Comment #1 from Jeremy Huddleston
https://bugs.freedesktop.org/show_bug.cgi?id=23217
Jeremy Huddleston
participants (1)
-
bugzilla-daemon@freedesktop.org