arjay
24th May 2005, 03:17 PM
Hi all
Re a previous post in this forum where I asked for, but didn't get, any replies.
I have been struggling to get a Matrox g400 dual head card to display on two monitors under linux (Fedora FC3). I had quite a bit of help from this forum among others - either directly or by reading and adapting other peoples' suggestions.
I have finally got it all to work and thought I might share my solution. I am sure there are others, but this one worked for me. There seems to be quite a lot of help for later cards but not for the g400. Please excuse the simple language and probably redundant steps etc - I am a newbie and being over inclusive may help other newbies.
1. Download latest drivers from the matrox/mga site - the relevant file I used was: mgadriver-4.1.tar.gz
2. Change to the download directory and, as root, untar the driver file (tar xzvf mgadriver-4.1.tar.gz). Install using the command sh install.sh. Follow the directions, including to install the HAL files if/when prompted. N.B. you may need to first identify the old drivers - in this format - mga_drv.o and mga_hal_drv.o - and delete them before installing the new ones (not sure if the install will over-write the old ones).
3. IMHO, DON'T use PowerDesk to modify the xorg.conf file. It made a right mess of mine! Manually edit the file as described below:
4. Edit the xorg.conf file so that the sections in yours, look something like those in mine, (see below) except for the changes you'll need to make for your own video card and monitors etc. (I have edited out the irrelevant bits about mice and keyboards etc. - obviously you will keep yours!) A few things to note:
a) If you want to extend the display to two monitors so that you have a different display on each, with different resolutions for each, then leave the "Options Xinerama" line under Serverflags edited out as I have. This is what I wanted.
b) If you want to have one mega display running across both monitors, then edit the Xinerama line back in.
c) I discovered (everyone else probably knows this but...) that you cannot change the monitor resolutions by invoking the configure desktop/display dialogue in the actual desktop unless you have previously "permitted" the resolutions you want in xorg.conf. So it is important to modify the Subsection "Display" for each monitor to include the resolutions and depths you want for each monitor. You can then later choose any of these resolutions via change Desktop Configuration/Display.
d) What else? Oh yes. I found I had to edit out the section on "DRI" but you might find it is OK for you. You will also see a couple of other lines edited out (see Section Module). Not sure if it is necessary to do this but that's what I saw in another example provided in this forum. As mine now works, I see no reason to try with these lines back in - UNLESS SOMEONE OUT THERE KNOWS DIFFERENT!! "Curiosity killed the cat" and "If it ain't broke don't fix it, unless you know what you are doing" come to mind.
If experts reading this have improvements and/or observations to make, please chip in.
Regards to all and thanks for the help that got me going.
Here goes then:
Xorg.conf:
Section "ServerLayout"
Identifier "Default Layout"
Screen "Screen0" LeftOf "Screen1"
Screen "Screen1" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection
Section "ServerFlags"
# Option "Xinerama"
EndSection
Section "Files"
RgbPath "/usr/X11R6/lib/X11/rgb"
FontPath "unix/:7100"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
# Load "fbdevhw"
Load "glx"
# Load "record"
Load "freetype"
Load "type1"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "BenQ T904"
DisplaySize 1280 1024
HorizSync 31.0 - 83.0
VertRefresh 56.0 - 76.0
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Monitor Vendor"
ModelName "Samtron"
DisplaySize 800 600
HorizSync 31.0 - 83.0
VertRefresh 56.0 - 76.0
EndSection
Section "Device"
Identifier "MATROX CARD 1"
Driver "mga"
VendorName "Videocard vendor"
BoardName "Matrox Millennium G400"
BusID "PCI:1:0:0"
Screen 0
EndSection
Section "Device"
Identifier "MATROX CARD 2"
Driver "mga"
VendorName "Videocard vendor"
BoardName "Matrox Millennium G400"
BusID "PCI:1:0:0"
Screen 1
EndSection
Section "Screen"
Identifier "Screen0"
Device "MATROX CARD 1"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 16
Modes "1280x1024" "1152x864" "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 24
Modes "1280x1024" "1152x864" "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 8
Modes "1280x1024" "1152x864" "1024x768" "800x600" "640x480"
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "MATROX CARD 2"
Monitor "Monitor1"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "800x600" "640x480"
EndSubSection
EndSection
#Section "DRI"
# Group 0
# Mode 0666
#EndSection
Re a previous post in this forum where I asked for, but didn't get, any replies.
I have been struggling to get a Matrox g400 dual head card to display on two monitors under linux (Fedora FC3). I had quite a bit of help from this forum among others - either directly or by reading and adapting other peoples' suggestions.
I have finally got it all to work and thought I might share my solution. I am sure there are others, but this one worked for me. There seems to be quite a lot of help for later cards but not for the g400. Please excuse the simple language and probably redundant steps etc - I am a newbie and being over inclusive may help other newbies.
1. Download latest drivers from the matrox/mga site - the relevant file I used was: mgadriver-4.1.tar.gz
2. Change to the download directory and, as root, untar the driver file (tar xzvf mgadriver-4.1.tar.gz). Install using the command sh install.sh. Follow the directions, including to install the HAL files if/when prompted. N.B. you may need to first identify the old drivers - in this format - mga_drv.o and mga_hal_drv.o - and delete them before installing the new ones (not sure if the install will over-write the old ones).
3. IMHO, DON'T use PowerDesk to modify the xorg.conf file. It made a right mess of mine! Manually edit the file as described below:
4. Edit the xorg.conf file so that the sections in yours, look something like those in mine, (see below) except for the changes you'll need to make for your own video card and monitors etc. (I have edited out the irrelevant bits about mice and keyboards etc. - obviously you will keep yours!) A few things to note:
a) If you want to extend the display to two monitors so that you have a different display on each, with different resolutions for each, then leave the "Options Xinerama" line under Serverflags edited out as I have. This is what I wanted.
b) If you want to have one mega display running across both monitors, then edit the Xinerama line back in.
c) I discovered (everyone else probably knows this but...) that you cannot change the monitor resolutions by invoking the configure desktop/display dialogue in the actual desktop unless you have previously "permitted" the resolutions you want in xorg.conf. So it is important to modify the Subsection "Display" for each monitor to include the resolutions and depths you want for each monitor. You can then later choose any of these resolutions via change Desktop Configuration/Display.
d) What else? Oh yes. I found I had to edit out the section on "DRI" but you might find it is OK for you. You will also see a couple of other lines edited out (see Section Module). Not sure if it is necessary to do this but that's what I saw in another example provided in this forum. As mine now works, I see no reason to try with these lines back in - UNLESS SOMEONE OUT THERE KNOWS DIFFERENT!! "Curiosity killed the cat" and "If it ain't broke don't fix it, unless you know what you are doing" come to mind.
If experts reading this have improvements and/or observations to make, please chip in.
Regards to all and thanks for the help that got me going.
Here goes then:
Xorg.conf:
Section "ServerLayout"
Identifier "Default Layout"
Screen "Screen0" LeftOf "Screen1"
Screen "Screen1" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection
Section "ServerFlags"
# Option "Xinerama"
EndSection
Section "Files"
RgbPath "/usr/X11R6/lib/X11/rgb"
FontPath "unix/:7100"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
# Load "fbdevhw"
Load "glx"
# Load "record"
Load "freetype"
Load "type1"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "BenQ T904"
DisplaySize 1280 1024
HorizSync 31.0 - 83.0
VertRefresh 56.0 - 76.0
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Monitor Vendor"
ModelName "Samtron"
DisplaySize 800 600
HorizSync 31.0 - 83.0
VertRefresh 56.0 - 76.0
EndSection
Section "Device"
Identifier "MATROX CARD 1"
Driver "mga"
VendorName "Videocard vendor"
BoardName "Matrox Millennium G400"
BusID "PCI:1:0:0"
Screen 0
EndSection
Section "Device"
Identifier "MATROX CARD 2"
Driver "mga"
VendorName "Videocard vendor"
BoardName "Matrox Millennium G400"
BusID "PCI:1:0:0"
Screen 1
EndSection
Section "Screen"
Identifier "Screen0"
Device "MATROX CARD 1"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 16
Modes "1280x1024" "1152x864" "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 24
Modes "1280x1024" "1152x864" "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 8
Modes "1280x1024" "1152x864" "1024x768" "800x600" "640x480"
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "MATROX CARD 2"
Monitor "Monitor1"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "800x600" "640x480"
EndSubSection
EndSection
#Section "DRI"
# Group 0
# Mode 0666
#EndSection