PDA

View Full Version : Nvidia and ATI at the same time


kreyszig
2007-03-12, 04:42 PM CDT
Hi,

I am setting up a board with an ATI X1950 and an Nvidia 8800. I would like to run them on seperate X servers on seperate displays as a last ditched attempt to keep all my development on one machine. Can I get some help in configuring X to start running on two screens, each using a seperate driver? I have made the following change to my /etc/gdm/custom.conf:
[servers]
0=Standard
1=Standard
2=Standard
3=Standard

(better safe than sorry)

and my xorg.conf is as follows:

Section "ServerLayout"
Identifier "Default Layout"
Screen "Screen0" 0 0
Screen "Screen1" 0 0
Screen "Screen2" 0 0
Screen "Screen3" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
EndSection

Section "Module"
Load "nvidia"
Load "glx"
Load "dri"
Load "extmod"
EndSection

#Section "ServerFlags"
# Option "AIGLX" "off"
#EndSection

Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbModel" "pc105"
Option "XkbLayout" "gb"
EndSection



Section "Device"
Identifier "CUDADEVICE"
Screen 0
Driver "nvidia"
Option "BusID" "PCI:1:0:0"
Option "AddARGBGLXVisuals" "True"
EndSection

Section "Device"
Identifier "CUDADEVICE"
Screen 1
Driver "nvidia"
Option "BusID" "PCI:1:0:1"
Option "AddARGBGLXVisuals" "True"
EndSection

Section "Device"
Screen 3
Identifier "ATICTMDEVICE"
Driver "fglrx"
Option "BusID" "PCI:2:0:0"
Option "AddARGBGLXVisuals" "True"
Option "DisableGLXRootClipping" "True"
EndSection

Section "Device"
Screen 4
Identifier "ATICTMDEVICE"
Driver "fglrx"
Option "BusID" "PCI:2:0:1"
Option "AddARGBGLXVisuals" "True"
Option "DisableGLXRootClipping" "True"
EndSection

Section "Screen"
Identifier "Screen0"
Device "ATICTMDEVICE"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1680x1050" "1280x1024" "1024x768" "1600x1200" "800x600"
EndSubSection
EndSection

Section "Screen"
Identifier "Screen2"
Device "CUDADEVICE"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1680x1050" "1280x1024" "1200x600" "1024x768"
EndSubSection
EndSection

#Section "Extensions"
# Option "Composite" "Enable"
#EndSection

Section "DRI"
Group 0
Mode 0666
EndSection


Am I missing something? I get an Nvidia splash screen on ctrl-alt-F8 (on the monitor that is connected to the nvidia display and is also displaying ctrl-alt-F7) whether there is a monitor attached or not. I get nothing from the monitor attached to the ATI card, although if that is in the first PCIE slot I can run the fglrx driver (if the nvidia driver is not enabled).
I would be very appreciative of any help you can offer!
EDIT: BTW I mean I would like to start a seperate Xserver on each card...

lazlow
2007-03-13, 01:00 AM CDT
I do not know for sure but you may need a couple of monitor sections:


Section "Monitor"
#HorizSync 31.5 - 100.0
#VertRefresh 56.0 - 75.0
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
ModeLine "1440x900_75" 136.8 1440 1536 1688 1936 900 901 904 940 -hsync +vsync
ModeLine "1440x900_60" 106.5 1440 1520 1672 1904 900 901 904 932 -hsync +vsync
Option "DPMS"
EndSection


and then add monitor to your screen sections:

Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
DefaultDepth 24
Option "metamodes" "1440x900_75 +0+0; nvidia-auto-select +0+0; 1440x900 +0+0"
SubSection "Display"
Depth 24
Modes "1440x900_75"
EndSubSection

Hope it helps

Lazlow

kreyszig
2007-03-14, 03:11 PM CDT
Well, I'm still trundling along trying to get this to work. My xorg.conf now looks like this:

# Xorg configuration

Section "ServerLayout"
Identifier "Default Layout"
Screen "Screen0" 0 0
Screen "Screen1" 0 0
Screen "Screen2" 0 0
Screen "Screen3" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
EndSection

Section "Module"
Load "nvidia"
Load "glx"
Load "dri"
Load "extmod"
EndSection

#Section "ServerFlags"
# Option "AIGLX" "off"
#EndSection

Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbModel" "pc105"
Option "XkbLayout" "gb"
EndSection

Section "Monitor"
#HorizSync 31.5 - 100.0
#VertRefresh 56.0 - 75.0
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
ModeLine "1680x1050_60" 106.5 1440 1520 1672 1904 900 901 904 932 -hsync +vsync
Option "DPMS"
EndSection

Section "Monitor"
#HorizSync 31.5 - 100.0
#VertRefresh 56.0 - 75.0
Identifier "Monitor1"
VendorName "Unknown"
ModelName "Unknown"
ModeLine "1280x1024_75" 136.8 1440 1536 1688 1936 900 901 904 940 -hsync +vsync
Option "DPMS"
EndSection

Section "Device"
Identifier "CUDADEVICE"
Screen 2
Driver "nvidia"
Option "BusID" "PCI:2:0:0"
Option "AddARGBGLXVisuals" "True"
EndSection

Section "Device"
Identifier "CUDADEVICE"
Screen 3
Driver "nvidia"
Option "BusID" "PCI:2:0:0"
Option "AddARGBGLXVisuals" "True"
EndSection

Section "Device"
Screen 0
Identifier "ATICTMDEVICE"
Driver "fglrx"
Option "BusID" "PCI:1:0:0"
Option "AddARGBGLXVisuals" "True"
Option "DisableGLXRootClipping" "True"
EndSection

Section "Device"
Screen 1
Identifier "ATICTMDEVICE"
Driver "fglrx"
Option "BusID" "PCI:1:0:1"
Option "AddARGBGLXVisuals" "True"
Option "DisableGLXRootClipping" "True"
EndSection

Section "Screen"
Identifier "Screen0"
Monitor "Monitor0"
Device "ATICTMDEVICE"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1680x1050" "1280x1024" "1024x768" "1600x1200" "800x600"
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Monitor "Monitor0"
Device "ATICTMDEVICE"
DefaultDepth 24
Subsection "Display"
Depth 24
Modes "1680x1050" "1280x1024"
EndSubSection
EndSection

Section "Screen"
Identifier "Screen2"
Monitor "Monitor1"
DefaultDepth 24
Device "CUDADEVICE"
SubSection "Display"
Depth 24
Modes "1680x1050" "1280x1024"
EndSubSection
EndSection

Section "Screen"
Identifier "Screen3"
Monitor "Monitor1"
Device "CUDADEVICE"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1680x1050" "1280x1024" "1200x600" "1024x768"
EndSubSection
EndSection

#Section "Extensions"
# Option "Composite" "Enable"
#EndSection

#Section "DRI"
# Group 0
# Mode 0666
#EndSection



And I'm getting errors\warnings that confuse me (after startx -- :2), in Xorg.2.log

(WW) NVIDIA: No matching Device section for instance (BusID PCI:2:0:0) found

When you can see I've specified exactly which flippin Device is at PCI:2:0:0:


Section "Device"
Identifier "CUDADEVICE"
Screen 2
Driver "nvidia"
Option "BusID" "PCI:2:0:0"
Option "AddARGBGLXVisuals" "True"
EndSection


lspci gives me the following pertinant information:

00:01.0 PCI bridge: Intel Corporation 82975X PCI Express Root Port (rev c0)
00:03.0 PCI bridge: Intel Corporation 82975X/3010 PCI Express Root Port (rev c0)
...
01:00.0 VGA compatible controller: ATI Technologies Inc R580 [Radeon X1900]
01:00.1 Display controller: ATI Technologies Inc Unknown device 7260
02:00.0 VGA compatible controller: nVidia Corporation Unknown device 0193 (rev a2)

I get failures after this, specifically it looks like fglrx isn't loading for the ATI card because

(II) fglrx(0): Composite extension enabled, disabling direct rendering

even though I've commented out the composite section I was using to check the Nvidia card....argh!
Can *anyone* offer some help? Thanks for any help!
EDIT:
Well I've found one problem: The composite extension is enabled by default, so commenting out a line to disable it doesn't do a thing. But I get a system hang if I disable it. Is there some way I can run one device with the extension enabled, and another with it disabled? Or perhaps run an Xserver using one config file, and another with a different one? Thanks again for any input!