- Package:
- xserver-xorg-video-mga
- Source:
- xserver-xorg-video-mga
- Description:
- X.Org X server -- MGA display driver
- Submitter:
- Adrian von Bidder
- Date:
- 2025-07-21 19:11:02 UTC
- Severity:
- normal
- Tags:
Hi, Perhaps somebody of the XSF has the final good idea... Starting X on a G550 in dual-head/Xinerama mode won't activate signal output on the second head. Starting X in 'clone mode' (no special configuration in xorg.conf, thus both screens show the same content) switches on the second head, so I can kill and restart X with the Xinerama configuration which works then just fine until the next reboot. More details (and confirmation from a different user): <http://lists.debian.org/debian-user/2005/08/msg02369.html> Others have the same problem: <https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=108073> <https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=126820> Upstream indicates it *might* be fixed as of this weekend. <https://bugs.freedesktop.org/show_bug.cgi?id=615> If somebody could isolate the patch I'd be inclined to try it (how long does Xorg build on a 3GHz P4?) cheers -- vbi
El lunes, 22 de agosto de 2005 15:18, Adrian von Bidder escribió: Hello, Adrian. Bufff...it is complicated. *Very*. I was looking into the sources. 7 weeks ago Ian Romanick isolated and rewrote the BIOS handling code in mga driver. So I think that given that the patch and fix from this weekend went against the new code, the only suitable solution would be to backport the whole driver to 6.8.2 or compile the 6.9 tree including this patch. A lot (several hours). But CPU power is cheap. You can wait a little, because David Nusinow is packing 6.9 for Debian in parallel, so I do not think that X.Org 6.9 will delay a lot in Debian. Best regards, Ender.
Yo!
Just for the records: #324500 (G550 Dualhead/Xinerama) is not fixed with
6.8.99.900.dfsg.1-0pre1 (I just updated xserver-{xorg,common}, the rest is
from testing, 6.8.2.dfsg.1-6)
But at least no regression - the 'start X in singlehead-mode to get the 2nd
screen going' fix still works.
Not knowing anything about X, I haven't dug into the source or anything. If
more info is needed, I'm willing to try to help, but don't expect good
response times, as this is my home machine and I'm not much at home right
now.
cheers
-- vbi
Yo!
Updated to 6.8.99.902.dfsg.1-1 for xserver-{common,xorg} and xlibmesa-dri
(for mga_dri, but I'm not sure if that's even used here).
Bug still persists, workaround still works.
The bug report at freedesktop lists a possible fix, will try to test this
next week.
diff -Naur mga.6.8.99.900/mga_bios.c mga/mga_bios.c
--- mga.6.8.99.900/mga_bios.c Tue Jul 26 03:14:50 2005
+++ mga/mga_bios.c Tue Sep 13 21:54:35 2005
@@ -457,7 +457,7 @@
}
/* Get the output mode set by the BIOS */
- pMga->BiosOutputMode = bios_data[0x7ff1];
+ pMga->BiosOutputMode = 0x1; /*alex: replaced bios_data[0x7ff1];*/
/* Get the video BIOS info block */
if (strncmp((char *)(&bios_data[45]), "MATROX", 6)) {
diff -Naur mga.6.8.99.900/mga_driver.c mga/mga_driver.c
--- mga.6.8.99.900/mga_driver.c Tue Jul 26 22:29:39 2005
+++ mga/mga_driver.c Tue Sep 13 21:55:51 2005
@@ -329,8 +329,8 @@
NULL
};
#endif
-
-#define MGAuseI2C 1
+/*alex: */
+#define MGAuseI2C 0
static const char *ddcSymbols[] = {
"xf86DoEDID_DDC1",
@@ -345,6 +345,15 @@
static const char *i2cSymbols[] = {
"xf86CreateI2CBusRec",
"xf86I2CBusInit",
+/*alex: add to avoid unresolved symbols warnings*/
+ "xf86CreateI2CBusRec",
+ "xf86DestroyI2CBusRec",
+ "xf86DestroyI2CDevRec",
+ "xf86I2CBusInit",
+ "xf86I2CDevInit",
+ "xf86I2CProbeAddress",
+ "xf86I2CWriteByte",
+ "xf86I2CWriteVec",
NULL
};
cheers
-- vbi
Yo! As promised: I tried the patch (see bug report), and the problem is indeed fixed. The only thing is that the fix seems to be more of a kludge (hardcoded value, switching of i2c)... Also, it seems that this patch switches the monitor id's - I had to physically switch the connectors, no xorg.conf editing I tried could switch the displays logically. No big deal, though: no ugly kludge at start up anymore to get the 2nd head running. Yay! xawtv still works as before, happily (this has been a problem every now and then.) totem, vlc, noatun et al apparently have problems deciding on which screens the frames should be displayed, and appear to randomly push a few frames to one screen, then to the other one, particularly in full screen mode. Might be related to the location of the mouse pointer and/or the window focus. As with xawtv, this behaviour has not altered, though. cheers -- vbi
reassign 324500 xserver-xorg-video-mga found 324500 1:1.4.2.dfsg.1-1 thanks Yodel! Somebody did something... Since the ABI change means that I can't use the previously patched server now (described in the bug), I tested the new mga driver. Situation now is a bit better than earlier: now switching to console mode and back (or restarting X) suffices - some code to turn on the 2nd head is apparently already there and is executed when console mode is restored, but not on initial set up of the video mode. I guess I can live with hitting ctrl-alt-backspace at the login screen when I first log in... cheers -- vbi
Hi, About 2 years ago, you reported a bug to the Debian BTS regarding dualhead not working on a MGA G550 board. Did you reproduce this problem recently? With Xorg/Etch? With latest MGA driver (1.4.6) currently in unstable? Thanks, Brice
There was a change from 1.4.4 to 1.4.6 (a bit to the worse, maybe). Status is: * after boot, only one screen is active (same as before). Switching to Text mode and back solves this problem. * which monitor is seen at which port, and signal for which monitor is generated to which port, has apparently been randomly switched around. My setup is a Hitachi and a BenQ, I usually drive the Hitachi at 1440x1080 (picture gets very bad at 1600x1200 though it's in the specs...), the BenQ at 1280x1024 (TFT, hardware res). With the xorg.conf below, the best I can get is the BenQ running just fine and the Hitachi running at a ghastly 1440x1050 at 60Hz, within the clock spec of the BenQ. I could, of course, give the video signal destined for the Hitachi to the BenQ but it doesn't like that much. In other words: apparently the DDC monitor detection applies to the wrong video output. (Is there no option to just tell Xorg to generate 200MHz even though it thinks the monitor only does 140MHz?) Swapping the "Screen 0" and "Screen 1" identifiers gives me variations on the same topic, as does physically swapping monitor plugs. But one thing stays: the right video signal is never generated for the correct monitor. Attached: xorg.conf and Xorg.log for this configuration. Hints and workarounds are, of course, welcome, and if somebody sends me a patched xserver-xorg-video-mga package to try I'll do so when I get time (though I'm not much at home right now.) Oh, yeah: moving back to just the old mga_drv.so does *not* work, this time, so I fear the bug is somewhere deeper in Xorg this time :-/ cheers -- vbi
Adrian von Bidder wrote: Fortunately, the upcoming randr 1.2 support for MGA might help for all this. It might be related to the upgrade of xserver-xorg-core 1.3 currently in unstable. Could you try to downgrade to xserver-xorg-core 2:1.1.1-21 (the one in Etch/stable and testing)? Brice
Yodel! Hmm. -EDEPENDS, and breaking the dependencies, the X server fails to load the mga driver, complaining about versions. (I tried the pure, non-dependency-breaking version of X in lenny some time ago.) So, it's still the case that values for the allowed clocks are reversed. I can get the high freq signal on the low-res monitor. I can override Horiz and Vert sync in the config file, but apparently it's not possible to specify the maximal pixel clock in the config file or to disable ddc alltogether? (then I could just pretend that both displays can do high frequencies. Running a high-freq "capable" monitor at low res is no problem so that way I could solve my problem for now. 1440x1080 at 61Hz is not what I'm really happy with...) cheers -- vbi
Hi, I just uploaded xserver-xorg-video-mga 1.9.99.dfsg.1-1 to experimental. It brings RandR 1.2 support, which improves mode detection and dynamic configuration. It should also support DVI. About RandR 1.2, note that you might need to update your xorg.conf, see the pointers I inserted in http://bgoglin.livejournal.com/12835.html Thanks, Brice
Yo! I have to chime in with some others: the new RandR 1.2-enabled mga xserver is a piece of shit from my perspective. The past behaviour (2nd head only initialized after 1st switch back to textmode, and DDC information switched between the two outputs of the G550) at least allowed me to work, even if I had to use a very low frequency on the better display. The new xserver doesn't even allow me to work: the 2nd head is not initialized at all, and switch back to text mode doesn't work at all. I first thought the computer has crashed, but then I noticed that basically, I'm in the text console underneath, just the video mode is not reset so I have to type blindly. I can even start X again and it will properly init the monitor I've had before. :-( I just hope this gets fixed, else I'd have a unusable G550 here (well, unusable in Linux. I guess Windows will have drivers available, haven't tried so far. ;-) btw, this is a G550 with one analog and one DVI output, with two analog monitors on it. pci id: 102b:2527 I can try *some* stuff, but with very long round trip as we're moving so computer time at home is scarce. cheers -- vbi
How very encouraging for the upstream developer who's doing his best to get the driver up to speed with recent X server development. I can appreciate your frustration, but this kind of rant doesn't help anybody. If you want the bugs to be fixed, the best thing would probably be to work with the upstream developer directly, via bugs.freedesktop.org or the xorg mailing list.
Yodel! Have a look at https://bugs.freedesktop.org/show_bug.cgi?id=12598, which fixes both DVI output and real dualhead for my G550. cheers -- vbi
These bugs should be fixed in 1.9.100 that I just uploaded (with a typo in the closers in the changelog...). It contains fixes for upstream bugs #615, #12575 and #12598. Brice xserver-xorg-video-mga (1:1.9.100.dfsg.1-1) experimental; urgency=low . * New upstream release candidate. * Fix dual-head on G550, closed: #324500, #356558, #444114.
These bugs should be fixed in 1.9.100 that I just uploaded (with a typo in the closers in the changelog...). It contains fixes for upstream bugs #615, #12575 and #12598. Brice xserver-xorg-video-mga (1:1.9.100.dfsg.1-1) experimental; urgency=low . * New upstream release candidate. * Fix dual-head on G550, closed: #324500, #356558, #444114.
Hello, I'm also using a G550 with two analog monitors. An Iiyama Vision Master Pro 510 (1600x1200 at 85Hz) An ADI of unknown type (20", can do 1600x1200 at 60Hz and 1280x1024 at 85Hz) I use them in a non-xinerama dual head setup, with the Iiyama on the VGA head using 1600x1200, 85Hz and the ADI on the DVI head, using 1280x1024, 85Hz. The last working version for me is: xserver-xorg-video-mga_1.4.6.1.dfsg.1-3_i386.deb xserver-xorg-core_1.3.0.0.dfsg-12_i386.deb xserver-xorg_7.2-5_all.deb With the right input packages ofcourse. I haven't been able to get a working config with any of the later mga_1.4.x packages. I've finally had some time to try 1:1.9.100. I removed xorg.conf (and an old XF86Config-4 that was still around and that got used when it couldn't find xorg.conf) Starting X resulted in clone mode, 1280x1024, 75Hz on the Iiyama (IVM), 60Hz on the ADI. See Xorg.0.log.VgaVM_DviAdi xrandr --output VGA --left-of DVI failed with the message that the desktop couldn't be made bigger then 1600x1024 Switching the monitors (Adi on VGA, IVM on DVI) resulted in 75Hz on both monitors. See Xorg.0.log.DviVM_VgaAdi xrandr --output VGA --left-of DVI failed with the same message. In both cases I couldn't set the resolution to 1600x1200 (was not an option in the Gnome Screen Resolution switcher. Attached are the two log files of both cases. Interesting bits: In Xorg.0.log.VgaVm_DviAdi: (II) MGA(0): Output DVI using initial mode 1600x1024 (II) MGA(0): Output VGA using initial mode 1280x1024 But what I got was 1280x1024 60Hz, not the expected 1600x1024 (60Hz) While in Xorg.0.log.DviVm_VgaAdi (II) MGA(0): Output DVI using initial mode 1280x1024 (II) MGA(0): Output VGA using initial mode 1280x1024 Why no 1600x1200 in this case? So the questions are: How do I get rid of the clone mode. How do I get proper resolutions and refresh rates? Did I forget to specify anything important? Regards, Hylke
Hi all, I finally got some new nice flatscreens (You can imagine the desk space I just saved by throwing out a 22" and a 20" CRT ;)) I figured this was a good time to try 1:1.9.100 again, and it works flawlessly! I guess the mga card or the driver just didn't like having two VGA monitors. With one on DVI and one on VGA all the problems disappeared! Great work, Hylke
Hello, Congratulations! You have been awarded with the sum of 2,000,000.00 Euro from our (SIGRID TRUST rim FOUNDATION) yearly DRAW. Your email was selected by Google/Microsoft Inc. Randomly selected as an active user on the web... To lay claims on this funds you are required to contact us via email: sharongold615@gmail.com or assistant: armanibayer88@yhoo.com Note: Do not click reply, kindly contact me via my personal/private email but don't disclose for security security reasons: sharongold615@gmail.com------------------------------ CONFIDENTIALITY NOTICE ------------------------------ The contents of this email message and any attachments are intended solely for the addressee(s) and may contain confidential and/or privileged information and may be legally protected from disclosure. If you are not the intended recipient of this message or their agent, or if this message has been addressed to you in error, please immediately alert the sender by reply email and then delete this message and any attachments. If you are not the intended recipient, you are hereby notified that any use, dissemination, copying, or storage of this message or its attachments is strictly prohibited.
Hello Dear. How are you? I'm Dr. Nataliya. I am a senior UN humanitarian aid officer in Gaza. I am reaching out to share a heartwarming opportunity that would be deemed of interest to you. Please reply for more details. Best Regards Dr Nat.
Hello Dear. How are you? I'm Dr. Nataliya. I am a senior UN humanitarian aid officer in Gaza. I am reaching out to share a heartwarming opportunity that would be deemed of interest to you. Please reply for more details. Best Regards Dr Nat.
Hello, dear We are interested in buying your products. Can you ship to Italy? Send catalogs to this email for our reference Kindly see the attached file. Awaiting your feedback. Best Regards, Mrs. Alessia/Purchasing Manager TAREQCO TRADING GROUP khalil@tareqco.com Italy Office Line: (+3-919-019-101) VIA GIUSEPPE VERDI 10 20900 MONZA MB
Hello, dear We are interested in buying your products. Can you ship to Italy? Send catalogs to this email for our reference Kindly see the attached file. Awaiting your feedback. Best Regards, Mrs. Alessia/Purchasing Manager TAREQCO TRADING GROUP khalil@tareqco.com Italy Office Line: (+3-919-019-101) VIA GIUSEPPE VERDI 10 20900 MONZA MB