Mandrake 9/Drivers/Dual Head support
Like many, I had struggled to get my ti 4200 device functioning on Mandrake 9. First, I had a curious error installing the kernel RPM. Stupidly, I did not write it down, but the error said something to the effect that by installing the rpm, I am violating the GPL and the insmod line failed even though the hash progress showed 100%.
I cannot UNINSTALL the RPM since the message RPM is not installed appeared. When I try to reinstall it or update, I get the message all packages installed.
NONETHELESS, checking all the files and symbolic links, I seem to have everything except the files /dev/nvidia1, /dev/nvidia2, and /dev/nvidia3. The device did boot, and various checks on loaded drivers seem to indicate success.
I upgraded to this device in order to get dual head support. I could not achieve it with the Radeon VE I had.
After much work, I have both monitors working (sans Twinview) and wanted to share my settings in the hope it helps someone else.
Key highlights. 2 Monitors must be defined; 2 nVidia devices must be defined with Screen 0 and Screen 1 noted for each head; 2 Screen sections must be defined correlating to each Monitor and nVidia device; Server layout must mention each screen and use the Leftof or Rightof tag.
Key problems. No matter what I do, X always boots to the monitor attached to the DVI port with a DVI to VGA connector. Looking through the XFree86.0.log file seems to indicate the card sees the DVI monitor as head 0 EVEN THOUGH I program in the correct information.
Cannot shut X down to a terminal screen. Get black screen and can't reboot from there.
Some wavering of images on both screens.
However, I was able to get both monitors working at different resolutions and here are the excerpted parts of the relevant sections.
# here the two monitors are defined. nothing fancy.
ModelName "ViewSonic PF95+"
#here I identify the "two" cards that will drive each device. For some reason, Screen 0 is always the device on the DVI port.
BoardName "NVIDIA GeForce4 V"
#Option "ConnectedMonitor" "CRT"
BoardName "NVIDIA GeForce4 E"
#Option "ConnectedMonitor" "DFP"
#Here I try and match Screens to Devices
Identifier "screen 0"
Modes "1280x1024" "1024x768" "800x600" "640x480"
Identifier "screen 1"
Modes "1024x768" "800x600" "640x480"
# Here I try and place screens properly.
InputDevice "Keyboard1" "CoreKeyboard"
InputDevice "Mouse1" "CorePointer"
Screen "screen 1"
Screen "screen 0" Leftof "screen 1"
#I did try switching Screen 0 and 1 and using Rightof instead of leftof. What happened was that I could not move Left of the RIGHT screen. If I went RIGHT of the right screen I would wrap around to the LEFT screen. I just swallowed it and left it as above. At least left is left, and right is right!
The problems are that no matter what, X always boots to the screen 1 device. While frustrating, I can work with that!
I see one of two possible problems. 1) the kernel driver is broken, or 2) X is broken. There is a cryptic message in the log file:
(WW) NVIDIA(0): Multiple displays connected, but only one display allowed;
(WW) NVIDIA(0): using first display
Also, in the log file, Screen 0 (the Viewsonic attached to Device 0 comes in as Device 1!
(**) NVIDIA(1): Validated modes for Display Device 1:
(**) NVIDIA(1): Default mode "1280x1024": 157.5 MHz, 91.1 kHz, 85.0 Hz
I can easily move my cursor across both screens and, as expected, cannot drag between them. The Viewsonic is coming in at 1280x1024 res, and the Envision at 1024x768. I am satisfied with the results. As I mentioned, there is some wavering of characters and images, but I do NOT do a lot of gaming. I just need two displayes for my work.
I hope this helps others.