Argh!!!! I'm trapped in XServer hell, and I need a workaround! I'm running Debian testing on an IBM thinkpad (X21) whose graphics card is an "ATI Rage Mobillity P/M AGP 2x (rev 64)" aka MACH64.
I foolishly upgraded to XFree86 4.3 as part of a general update. It turns out (after much gnashing of teeth) that in release 4.3 XFree86 disabled display switching via the BIOS (that is, by Fn-F7 or similar). Leif Delgass describes the problem perfectly in a comment (#6) posted to a RedHat bug report (https://bugzilla.redhat.com/bugzilla/long_list.cgi?buglist=84944) when he says: I think it's more of a feature than a bug. ;) Based on your X log in the bugzilla bug, your laptop has a Rage Mobility mach64 chip. Display switching via the BIOS (with the X server's VT active) was disabled for mach64s with dual-CRTCs in XFree86 4.2.99.1: http://cvsweb.xfree86.org/cvsweb/xc/programs/Xserver/hw/xfree86/drivers/ati/atilock.c.diff?r1=1.14&r2=1.15 My guess is that allowing BIOS-initiated display switches with the X server active could cause problems because the driver's cached register state might not be valid after the display switch. For example, if you switch from the LCD to the CRT, the driver would continue to program the card as if the LCD were still active, when in fact the BIOS has changed the card's state out from under the driver. In the revision above, the feature bit for display switching is re-enabled when switching away to a text console VT (assuming it was enabled in the BIOS at server startup), which is why the display switching works there, but the driver disables the feature bit and restores its cached state when switching back to the X server. XFree86 says this can be reenabled in 4.4, but Debian isn't going there. Since XOrg's server split at 4.2.99, for all I know it has the same bug/feature. And, in my experience, changing X servers can be wildly painful, so I'd rather wait until something has been reasonably well tested before I take the plunge. Workarounds are tough: For now, the best I can come up with is to restart the X server with ctl-alt-backspace and hit FN-F7 twice before the server starts. Not real reliable. I tried atitvout (a nice package written by , the same person who posted that useful diagnosis above). Although it detects the LCD and the CRT (well, projector) fine, it complains that "VBE call failed" when I try to use it to select the CRT. get-edid also complains that "VBE call failed" so perhaps it is some ATI strangeness. I suppose it would be possible to downgrade to an earlier XFree86, but when I tried to do that, I get dpkg errors in preconfigure and configure saying "discover: Bus not found". That way seems to lie madness. Is there anything anyone can suggest to address this while I wait for Debian to move to X.org or whatever is going to happen? Help! Larry -- Lawrence Hunter, Ph.D. Director, Center for Computational Pharmacology Associate Professor of Pharmacology, PMB & Computer Science phone: +1 303 724 3574 cell: +1 303 324 0355 fax: +1 303 724 3648 email: [EMAIL PROTECTED] URL: http://compbio.uchsc.edu/hunter US mail: PO Box 6511, MS 8303, Aurora, CO 80045-0511 USA Express Delivery: 12801 E. 17th Ave, RC-1 South Rm L18-6101, Aurora, CO 80045 PGP key on public keyservers