[English] README.TXT MATROX GRAPHICS INC. 2006.07.04 Matrox Parhelia & P-Series Linux Display Driver v1.4.4 Advanced User Notes ================================================================================ Preface ================================================================================ This document and the associated software are currently only available in English. We apologize for the inconvenience. The use of the term X config file, XF86Config, XF86Config-4 and xorg.conf are used interchangeably. The actual file names to use vary depending on the X server or distribution used. These files are located in the /etc/X11 directory. The use of the term X log file, XFree86.0.log and Xorg.0.log are used interchangeably. The actual file names to use vary depending on the X server or distribution used. These files are located in the /var/log directory. Don't enter the '#' sign in the example command sequences, this represents what would be seen on the command line. Note that [ENTER] means pressing the 'Enter' key on your keyboard. Note that on some systems you may need to enter "su - root" instead of "su root" when changing to the root user account. ================================================================================ Contents ================================================================================ Preface Section 01 - Overview Section 02 - XFree86 & X.org Driver Options 1 - Epica TC4, QID, QID Pro, HR256 DualHead & QuadHead Hybrid Mode 2 - Epica TC4, QID, QID Pro, HR256 QuadHead Merged Mode 3 - Epica TC4, QID TV-output 4 - Dual-link 5 - Display Pivot 6 - TV-output 7 - Giga Color 8 - Offscreen memory Section 03 - Frequently asked questions Appendix A - Known issues Appendix B - Limitations ================================================================================ Section 01 - Overview ================================================================================ This document complements the readme.txt file provided with the display driver. It provides information on how to configure certain Matrox graphics hardware and how to enable advanced features. We recommend that you read the readme.txt file available with the driver package before continuing with this file. Graphics hardware covered in this document: - Parhelia Dual Link (PCI) - Epica TC4, QID (AGP, PCI, PCIe) - QID Pro (PCI) - HR256 (PCI) Special display configurations covered in this document: - Dual Link display - Only 1 display through the main video connector in dual-link mode. - Single + TV display - Only 1 display through the main video connector and cloned tv-output through a composite/s-video connector. - Two displays - Epica TC4, QID hybrid mode : 2 displays with the same display resolutions. - Four displays - Epica TC4, QID hybrid mode : 4 displays with the the first two having the same display resolutions and the last two having the same display resolutions. - Epica TC4, QID merged mode : 4 displays with the same display resolutions. Special driver features covered in this document: - Display Pivot (offered on most Matrox graphics hardware) - TV-output - Giga Color - Offscreen memory customization ================================================================================ Section 02 - XFree86 & X.org Driver Options ================================================================================ 1 - Epica TC4, QID, QID Pro, HR256 DualHead & QuadHead Hybrid Mode To enable support for DualHead or QuadHead under XFree86 or X.org using either the Epica TC4, QID, QID Pro or HR256, requires adding the following option to the "device" section of your X config file : Option "QID" This option enables the use of outputs 1 and 2 when set for the first "device" section and outputs 3 and 4 when set for the second "device" section. By combining both sections with Xinerama a QuadHead desktop can be achieved. In the following example, setting only one section, sets the graphics hardware for DualHead support: Section "Monitor" Identifier "monitor1" HorizSync 31-90 VertRefresh 50-60 EndSection Section "Device" Identifier "device1" Driver "mtx" BusID "PCI:1:0:0" Option "QID" Screen 0 EndSection Section "Screen" Identifier "screen1" Monitor "monitor1" Device "device1" DefaultDepth 24 SubSection "Display" Depth 24 Modes "1600x1200" "1280x1024" "1024x768" "800x600" "640x480" EndSubSection EndSection And by adding the next section to the same config file you achieve four active outputs: Section "Monitor" Identifier "monitor2" HorizSync 31-90 VertRefresh 50-60 EndSection Section "Device" Identifier "device2" Driver "mtx" BusID "PCI:1:0:0" Option "QID" Screen 1 EndSection Section "Screen" Identifier "screen2" Monitor "monitor2" Device "device2" DefaultDepth 24 SubSection "Display" Depth 24 Modes "1600x1200" "1280x1024" "1024x768" "800x600" "640x480" EndSubSection EndSection To combine all four display as a single desktop, add the following section to the config file : Section "ServerFlags" Option "Xinerama" EndSection 2 - Epica TC4, QID, QID Pro, HR256 QuadHead Merged Mode To enable support for QuadHead merged under XFree86 or X.org using either the Epica TC4, QID, QID Pro or HR256, requires adding the Option "QID" as in hybrid mode to the "device" section of your X config file and setting the graphics hardware for a single instance merged mode as in the following example: Section "Monitor" Identifier "monitor1" HorizSync 31-90 VertRefresh 50-60 EndSection Section "Device" Identifier "device1" Driver "mtx" BusID "PCI:1:0:0" Option "QID" Screen 0 EndSection Section "Screen" Identifier "screen1" Monitor "monitor1" Device "device1" DefaultDepth 24 Option "MergedFB" Option "Monitor2Position" "RightOf" Option "MetaModes" "1600x1200-1600x1200" Option "Monitor2HSync" "31-90" Option "Monitor2VRefresh" "50-60" SubSection "Display" Depth 24 Modes "1600x1200" "1280x1024" "1024x768" "800x600" "640x480" EndSubSection EndSection Note: see Appendix B for frame buffer limitations in this mode. 3 - Epica TC4, QID TV-output Epica TC4, QID TV-output support is available on all outputs using the "QIDTV" option. The following example enables DualHead TV-output support: Section "Monitor" Identifier "monitor1" HorizSync 31-90 VertRefresh 50-60 EndSection Section "Device" Identifier "device1" Driver "mtx" BusID "PCI:1:0:0" Option "QID" Option "QIDTV" Screen 0 EndSection Section "Screen" Identifier "screen1" Monitor "monitor1" Device "device1" DefaultDepth 24 SubSection "Display" Depth 24 Modes "1600x1200" "1280x1024" "1024x768" "800x600" "640x480" EndSubSection EndSection 4 - Dual-link Dual-link support is available on all outputs using the "DVIDL" option. The following example enables single head Dual-link support: Section "Monitor" Identifier "monitor1" HorizSync 31-90 VertRefresh 50-60 EndSection Section "Device" Identifier "device1" Driver "mtx" BusID "PCI:1:0:0" Option "DigitalScreen1" "on" Option "DVIDL" "on" Screen 0 EndSection Section "Screen" Identifier "screen1" Monitor "monitor1" Device "device1" DefaultDepth 24 SubSection "Display" Depth 24 Modes "1600x1200" "1280x1024" "1024x768" "800x600" "640x480" EndSubSection EndSection 5 - Display Pivot Display pivot is available by setting the "Rotate" option in the "screen" section of your X config file and giving it the orientation to rotate. Valid orientation values are "CW" for clockwise rotation and "CCW" for counter-clockwise. The following example sets the screen to pivot in the clockwise direction: Section "Screen" Identifier "screen1" Monitor "monitor1" Device "device1" DefaultDepth 24 Option "Rotate" "CW" SubSection "Display" Depth 24 Modes "1600x1200" "1280x1024" "1024x768" "800x600" "640x480" EndSubSection EndSection See Appendix B for limitations associated with this option. 6 - TV-output This option can be enabled to clone your display when using Single Head mode. The output format supported are NTSC and PAL. You need to set the following the "TvOut" settings in the primary "Screen" section of your X config file. Additionnal Option switches are available : Options Values Description ---------------- ----------------------- ------------------------------- "TvOut" "on" or "off" Enables/Disables TV out. "TvStandard" "PAL" or "NTSC" Selects output type. "OutputRegion" "Left Top Right Bottom" Selects usable tv area. "SelectedRegion" "Left Top Right Bottom" Selects desktop region to clone. "AntiFlickerLevel" "0" to "25" Sets the antiflicker level. "Brightness" "0" to "10000" Sets the brightness level. "ColorEnable" "0" to "1" Select between color / monochrome. "Contrast" "0" to "20000" Sets the contrast level. "Gamma" "1" to "500" Sets the gamma level. "Hue" "-180" to "180" Sets the hue level. "Saturation" "0" to "20000" Sets the saturation level. For example, the resolution in NTSC (and the same applies for PAL with different values used) is 720x484 but that does not take into account the bezel of most TVs that hide some pixels. To be compatible with most TVs, we suggest an output region of 624x410 with the parameters specified below: Option "OutputRegion" "48 37 672 447" The following example sets the output to NTSC: Section "Screen" Identifier "Screen1" Device "Device1" Monitor "Monitor1" DefaultDepth 24 Option "TvOut" "on" Option "TvStandard" "NTSC" Option "AntiFlickerLevel" "10" Option "OutputRegion" "48 37 672 447" Option "SelectedRegion" "0 0 800 600" SubSection "Display" Depth 16 Modes "800x600" "640x480" EndSubSection SubSection "Display" Depth 24 Modes "800x600" "640x480" EndSubSection EndSection 7 - Giga Color To enable Giga Color, set the default color depth to 30 The following "screen" section illustrates its use: Section "Screen" Identifier "Screen1" Device "Device1" Monitor "Monitor1" DefaultDepth 30 SubSection "Display" Depth 30 Modes "1280x1024" "1024x768" "800x600" "640x480" EndSubSection EndSection 8 - Offscreen memory To change the offscreen allocation of memory used by X, use an integer value between "0" and "5" for the "OffScreen" option as a multiplier against the memory used for onscreen memory. For example, to use twice as much RAM for the offscreen memory as what the onscreen memory would use, add the following line to your "device" section in your config : Section "Device" Identifier "device1" Driver "mtx" BusID "PCI:1:0:0" Option "OffScreen" "2" Screen 0 EndSection ================================================================================ Section 03 - Frequently Asked Questions ================================================================================ Q: I am trying to set resolution X by Y and it doesn't work, what can I do ? A: Not all resolutions are supported and available. Special resolutions require setting a modeline. Note that exceeding your monitors recommended settings may damage your monitor and/or void your manufacturer's warranty. Please consult your monitor manufacturer for the required timing values. You can create modelines with the timing values from your manufacturer along with a HowTo available at the following Web Site: http://www.linuxdoc.org or http://www.tldp.org Note: - Not all resolutions are supported due to hardware or software limitations. Q: I do not have one of the listed Linux distributions can I use the driver on distribution XYZ? A: While the driver package was verified with the listed distributions, others should work as long as the following items are installed and available: X server - XFree86 (4.3.0) or X.org (6.7.0, or later). Libc - Glibc (2.3.2 or later). Compiler - GCC (from version 3.2 up to gcc 4.0.0). Tools - binutils (version 2.13 or later) and make (version 3.77 or later). Shell - bash (version 2.05 or later). Q: I am tring to do 1920x1200 on my digital monitor but i only get 1600x1200 what do i need to change to get that resolution? A: That resolution isn't supported in X and must be given through a modeline added to the monitor section. See http://www.tldp.org for a howto on creating a modeline. Here is a sample monitor section (actual timings will vary for each monitor): Section "Monitor" Identifier "monitor1" HorizSync 31.5-105 VertRefresh 60 ModeLine 1920x1200" 337.58 1920 2072 2288 2656 1200 1201 1204 1271 EndSection Note that the maximum pixel clock supported is around 165MHz. ================================================================================ Appendix A - Known Issues ================================================================================ 1 - To allow v4l applications that use the hardware scaler (like watching tv with xawtv in full screen), make sure you have the 'load "v4l"' declaration in the "Module" section of your configuration file. This package provides a modified version of the v4l driver module. It is not installed by default and must be manually copied for it to work (make a backup of the original before removing it). This file can be found under the v4l directory, which can be accessed by running the installer with the "--extract-only" switch. - For example to install the v4l_drv.o file for X.org 6.8.2 you would do the following sequence: # su [ENTER] # cd /usr/X11R6/lib/modules/driver/linux/ [ENTER] # mv v4l_drv.o v4l_drv.o.org [ENTER] # cd /root [ENTER] # sh mtxdriver-X.X.X.run --extract-only [ENTER] # cd /root/mtxdriver/v4l/6.8.2 [ENTER] # cp v4l_drv.o /usr/X11R6/lib/modules/driver/linux/ [ENTER] - As an example, here is a "module" section as it would look in an X config : Section "Modules" Load "dbe" Load "extmod" Load "glx" Load "type1" Load "freetype" Load "v4l" EndSection - You must also verify that your capture module is loaded before starting X (for instance, as 'root' user, modprobe bttv). - To remove some tearing, use a smaller resolution or lower the refresh rate to reduce the effect. 2 - OpenGL will not work properly with P650 and P750 cards in DualHead configuration, each head displaying 1600x1200 at 24 bpp due to memory ressource limitation. 3 - Rarely, windowed 3D applications may freeze or lockup the system when dragging the window. 4 - Some OpenGL based game and applications may not work (ie. UT2003, UT2004) properly with this release and may crash or cause display corruption. ================================================================================ Appendix B - Limitations ================================================================================ The following limitations apply to all Parhelia based products: - In merged mode the maximum horizontal frame buffer pitch size is 4096. - Xv supports a maximum size of 2048x2048 - Pivot supports a maximum resolution of 2048x2048.