Using the Patrox Parhelia in a Linux-only Access Grid Node

Overview.

The Matrox Parhelia AGP graphics card is capable of three vga outputs at 1280x1024. This can be combined with another (PCI) graphics card to provide the four vga outputs required for a full Access Grid node display system.

Described here is a method to configure a Matrox Parhelia AGP card with a PNY GeForce4 MX 420 PCI card for use in the display machine of an access grid node. Note that at the time of writing there is a clash between the driver for the Parhelia and the driver for other Matrox cards i.e. don't use another Matrox PCI card with the Parhelia. This should be corrected in the next release of the driver.


Method.

Download the Parhelia drivers for Linux from Matrox. The current driver at the time of writing is 0.2.1; later versions may require a different installation technique. Unpack the downloaded file somewhere e.g. /tmp, which will create a directory structure beginning with directory "mtxdrivers". Change into that directory. Version 0.2.1 of the parhelia driver is intended for XFree86 versions 4.1.0, 4.2.0 and 4.2.1. First check which version you have (run XFree86 -version). If you have an earlier version of XFree86, contact Matrox for help! If you have a later version, e.g. 4.3.0, then you'll need to create create a directory named 4.3.0 in the xfree86 directory so that it now contains directories named 4.1.0, 4.2.0, 4.2.1 and 4.3.0. In the 4.3.0 directory, create a symbolic link to the mtx_drv.o file in the 4.2.0 director (from the 4.3.0 directory, run ln -s ../4.2.0/mtx_drv.o . ). Now, from back in the mtxdrivers directory, begin the installation by running sh install.sh (as root). Answer "yes" when the installation script asks for a yes/no response. We assume the installation completes normally.

Now a suitable XF86Config file needs to be constructed. This is located in /etc/X11, so change directory to there. Note that some systems also have XF86Config-4 there. If not, good. If so, then either rename it, e.g. XF86Config-4.bu, delete it, or from now on read XF86Config-4 when these instructions say XF86Config.

Copy the configuration below to create a new XF86Config file. Now edit it to suit your particular environment, in particular the settings for the other vga card, sync characteristics of the projectors & monitor being used as well as their display size.


Initial XF86Config file.

## Start of XF86Config
Section      "ServerLayout"
    Identifier   "Quad Layout"
    Option       "Xinerama" "True"
    Screen     0 "Screen0" 
    Screen     1 "Screen1" RightOf "Screen0"
    InputDevice  "Mouse1" "CorePointer"
    InputDevice  "Keyboard1" "CoreKeyboard"
EndSection

Section "Files"
    RgbPath      "/usr/X11R6/lib/X11/rgb"
    FontPath     "/usr/X11R6/lib/X11/fonts/local/"
    FontPath     "/usr/X11R6/lib/X11/fonts/misc/"
    FontPath     "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
    FontPath     "/usr/X11R6/lib/X11/fonts/Type1/"
    FontPath     "/usr/X11R6/lib/X11/fonts/Speedo/"
    FontPath     "/usr/X11R6/lib/X11/fonts/75dpi/"
EndSection

Section "Module"
    Load  "dbe"
    SubSection "extmod"
        Option "omit xfree86-dga"
    EndSubSection
    Load  "type1"
    Load  "freetype"
    EndSection

Section "InputDevice"
    Identifier  "Keyboard1"
    Driver      "Keyboard"
    Option      "AutoRepeat" "500 30"
    Option      "XkbRules" "xfree86"
    Option      "XkbModel" "pc101"
    Option      "XkbLayout" "us"
    Option      "XkbCompat" ""
EndSection

Section "InputDevice"
    Identifier  "Mouse1"
    Driver      "mouse"
    Option      "Protocol" "PS/2"
    Option      "Device" "/dev/mouse"
EndSection

Section "Monitor"
    Identifier   "My Monitor"
    HorizSync    31.5 - 95.0
    VertRefresh  50.0 - 100.0
EndSection

Section "Monitor"
    Identifier   "Monitor0"
    # This is the monitor
    VendorName   "Mitsubishi"
    ModelName    "Diamond View DV172"
    HorizSync       31.0 - 81.0
    VertRefresh     56.0 - 75.0
EndSection

Section "Monitor"
    Identifier   "Monitor1"
    # This is the projector
    VendorName   "Hitachi"
    ModelName    "SX-5500"
    HorizSync    15 - 92
    VertRefresh  50 - 120
EndSection

Section "Device"
    Identifier  "MGA CARD 1"
    Driver      "mtx"
    BusID       "PCI:1:0:0"
EndSection

Section "Device"
    Identifier  "Card1"
    Driver      "nv"
    VendorName  "nVidia Corporation"
    BoardName   "NV17 [GeForce4 MX 420]"
    BusID       "PCI:2:4:0"
EndSection


Section "Screen"
    Identifier "Screen0"
    Device     "MGA CARD 1"
    Monitor    "Monitor1"
    DefaultDepth    24 
    DefaultFbbpp 32
    Option "TripleHead"
    SubSection "Display"
        Depth    8 
        Virtual 3840 1024 
        Modes    "1280x1024" "1024x768" "800x600" 
    EndSubSection
    SubSection "Display"
        Depth    24 
        Virtual 3840 1024 
        Modes    "1280x1024" "1024x768" "800x600" 
    EndSubSection
EndSection

Section "Screen"
    Identifier "Screen1"
    Device     "Card1"
    Monitor    "Monitor0"
    DefaultDepth    24 
    SubSection "Display"
        Depth    8 
        Modes    "1280x1024" "1024x768" "800x600" 
    EndSubSection
    SubSection "Display"
        Depth    24 
        Modes    "1280x1024" "1024x768" "800x600" 
    EndSubSection
EndSection


Section "DRI"
EndSection
## End of XFree86Config

Determining vga card Device settings.