FS#32604 - [xf86-video-neomagic] driver no longer works after the last update (version 1.2.7)
Attached to Project:
Arch Linux
Opened by Alexandre Bolelli Soares (Semeion) - Sunday, 11 November 2012, 16:39 GMT
Last edited by Andreas Radke (AndyRTR) - Friday, 28 December 2012, 18:54 GMT
Opened by Alexandre Bolelli Soares (Semeion) - Sunday, 11 November 2012, 16:39 GMT
Last edited by Andreas Radke (AndyRTR) - Friday, 28 December 2012, 18:54 GMT
|
Details
Description: The xf86-video-neomagic driver no longer works
after the last update (version 1.2.7).
Crashes the pc, stands on a black screen. The xf86-video-vesa is working fine! Additional info: * package version(s) xf86-video-neomagic 1.2.7-3 * config and/or log files etc. I'm using the same default configuration for over 1 year on my Thinkpad 600x. The problem only began this latest version of driver. Steps to reproduce: Crashes immediately after startx, xinit, etc. |
This task depends upon
https://bugs.freedesktop.org/show_bug.cgi?id=57023
At line 1086 of neo_driver.c the driver looks for xaa (which doesn't exist in the latest xorg) and failing that it falls back
to shadowFB (libshadow). This is where the black screen and dead keyboard comes in. Apparently some of the old machines and/or graphics
system can't handle it.
My first test was to comment out the whole section, as below:
=== CODE ===
/*
if (!xf86LoadSubModule(pScrn, "xaa")) {
xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Falling back to shadow\n");
nPtr->shadowFB = 1;
}
*/
=== END CODE ===
After that my neomagic driver worked just fine, as it did before the xorg update.
Keeping that section uncommented but changing shadowFB = 1 to 0 also works.
Leaving it untouched but trying to use "Option ShadowFB False/0/off" in a config file doesn't work.
Arch Linux
Xorg 1.13.0-4 (neomagic 1.2.7-3)
Panasonic CF-27 Toughbook, Pentium 2, 300MHz, 320M RAM
(neo_driver.c, line 1093)
Find attached my Xorg log file in case you see something I'm missing. Other than the EE/error about xaa everything seems okay.
Not sure though.
If you do get a patch please post here!
Anyhind, a one line change to neo_driver.c in the source was all that was needed to get the driver
working again.
See attached the patch (shadowfb.patch) and an updated PKGBUILD (don't know if I should have compressed them
first).
Marc
PKGBUILD_neomagic (1.2 KiB)