patch-2.2.0-pre8 linux/Documentation/fb/matroxfb.txt

Next file: linux/Documentation/fb/vesafb.txt
Previous file: linux/Documentation/cdrom/ide-cd
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.2.0-pre7/linux/Documentation/fb/matroxfb.txt linux/Documentation/fb/matroxfb.txt
@@ -22,36 +22,61 @@
 How to use it?
 ==============
 
-Switching modes is done using the video=matrox:vesa=... boot parameter
+Switching modes is done using the video=matrox:vesa:... boot parameter
 or using `fbset' program.
 
+If you want, for example, enable a resolution of 1280x1024x24bpp you should
+pass to the kernel this command line: "video=matrox:vesa:0x1BB".
+Note that the same line, if 'appended' as a lilo parameter in lilo.conf will
+read "video=matrox:vesa:443" because lilo pass integer parameters as decimal
+numbers to the kernel.
+
 You should compile in both vgacon (to boot if you remove you Matrox from
 box) and matroxfb (for graphics mode). You should not compile-in vesafb
 unless you have primary display on non-Matrox VBE2.0 device (see 
 Documentation/vesafb.txt for details).
 
-Currently supported video modes are (through vesa=... interface, PowerMac
-has (as addon) compatibility code.
+Currently supported video modes are (through vesa:... interface, PowerMac
+has [as addon] compatibility code):
+
+
+[Graphic modes]
+
+bpp | 640x400  640x480  768x576  800x600  960x720
+----+--------------------------------------------
+  4 |            0x12             0x102            
+  8 |  0x100    0x101    0x180    0x103    0x188   
+ 15 |           0x110    0x181    0x113    0x189   
+ 16 |           0x111    0x182    0x114    0x18A   
+ 24 |           0x1B2    0x184    0x1B5    0x18C   
+ 32 |           0x112    0x183    0x115    0x18B   
+
+
+[Graphic modes (continued)]
 
-bpp | 640x400  640x480  768x576  800x600  960x720  1024x768 1152x864 1280x1024 1408x1056 1600x1200
-----+----------------------------------------------------------------------------------------------
-  4 |            0x12             0x102             0x104             0x106
-  8 |  0x100    0x101    0x180    0x103    0x188    0x105    0x190    0x107     0x198     0x11C
- 15 |           0x110    0x181    0x113    0x189    0x116    0x191    0x119     0x199     0x11D
- 16 |           0x111    0x182    0x114    0x18A    0x117    0x192    0x11A     0x19A     0x11E
- 24 |           0x1B2    0x184    0x1B5    0x18C    0x1B8    0x194    0x1BB     0x19C     0x1BF
- 32 |           0x112    0x183    0x115    0x18B    0x118    0x193    0x11B     0x19B
+bpp | 1024x768 1152x864 1280x1024 1408x1056 1600x1200
+----+------------------------------------------------
+  4 |   0x104             0x106
+  8 |   0x105    0x190    0x107     0x198     0x11C
+ 15 |   0x116    0x191    0x119     0x199     0x11D
+ 16 |   0x117    0x192    0x11A     0x19A     0x11E
+ 24 |   0x1B8    0x194    0x1BB     0x19C     0x1BF
+ 32 |   0x118    0x193    0x11B     0x19B
+
+
+[Text modes]
 
 text | 640x400  640x480  1056x344  1056x400  1056x480
 -----+------------------------------------------------
  8x8 |  0x1C0    0x108     0x10A     0x10B     0x10C
 8x16 | 2, 3, 7                       0x109
 
-You can enter these number either hexadecimal (leading `0x') or decimal (0x100 = 256). You can also
-use value + 512 to achieve compatibility with your old number passed to vesafb.
+You can enter these number either hexadecimal (leading `0x') or decimal
+(0x100 = 256). You can also use value + 512 to achieve compatibility
+with your old number passed to vesafb.
 
-Non-listed number can be achieved by more complicated command-line, for example
-1600x1200x32bpp can be specified by `video=matrox:vesa:0x11C,depth:32'.
+Non-listed number can be achieved by more complicated command-line, for
+example 1600x1200x32bpp can be specified by `video=matrox:vesa:0x11C,depth:32'.
 
 
 X11
@@ -70,8 +95,8 @@
 =======
 
 Driver contains SVGALib compatibility code. It is turned on by choosing textual
-mode for console. You can do it at boottime by using videomode 2,3,7,0x108-0x10C 
-or 0x1C0. At runtime, `fbset -depth 0' does this work.
+mode for console. You can do it at boottime by using videomode
+2,3,7,0x108-0x10C or 0x1C0. At runtime, `fbset -depth 0' does this work.
 Unfortunately, after SVGALib application exits, screen contents is corrupted.
 Switching to another console and back fixes it. I hope that it is SVGALib and
 not mine problem, but I'm not sure.
@@ -91,9 +116,9 @@
 	   memory usable for on-screen display (i.e. max. 8MB).
 disabled - do not load driver; you can use also `off', but `disabled'
            is here too.
-enabled  - load driver, if you have `video=matrox:disabled' in LILO configuration,
-           you can override it by this (you cannot override `off').
-	   It is default.
+enabled  - load driver, if you have `video=matrox:disabled' in LILO
+           configuration, you can override it by this (you cannot override
+	   `off'). It is default.
 noaccel  - do not use acceleration engine. It does not work on Alphas.
 accel    - use acceleration engine. It is default.
 nopan    - create initial consoles with vyres = yres, thus disabling virtual
@@ -102,95 +127,115 @@
            It is default.
 nopciretry - disable PCI retries. It is needed for some broken chipsets,
            it is autodetected for intel's 82437. In this case device does
-	   not comply to PCI 2.1 specs (it will not guarantee that every transaction
-	   terminate with success or retry in 32 PCLK).
+	   not comply to PCI 2.1 specs (it will not guarantee that every
+	   transaction terminate with success or retry in 32 PCLK).
 pciretry - enable PCI retries. It is default, except for intel's 82437.
 novga    - disables VGA I/O ports. It is default if BIOS did not enable device.
-           You should not use this option, some boards then do not restart without
-	   power off.
-vga      - preserve state of VGA I/O ports. It is default. Driver does not enable
-           VGA I/O if BIOS did not it (it is not safe to enable it in most cases).
+           You should not use this option, some boards then do not restart
+	   without power off.
+vga      - preserve state of VGA I/O ports. It is default. Driver does not
+           enable VGA I/O if BIOS did not it (it is not safe to enable it in
+	   most cases).
 nobios   - disables BIOS ROM. It is default if BIOS did not enable BIOS itself.
-           You should not use this option, some boards then do not restart without
-	   power off.
-bios     - preserve state of BIOS ROM. It is default. Driver does not enable BIOS
-           if BIOS was not enabled before.
-noinit   - tells driver, that devices were already initialized. You should use it
-           if you have G100 and/or if driver cannot detect memory, you see strange
-	   pattern on screen and so on. Devices not enabled by BIOS are still
-	   initialized. It is default.
+           You should not use this option, some boards then do not restart
+	   without power off.
+bios     - preserve state of BIOS ROM. It is default. Driver does not enable
+           BIOS if BIOS was not enabled before.
+noinit   - tells driver, that devices were already initialized. You should use
+           it if you have G100 and/or if driver cannot detect memory, you see
+	   strange pattern on screen and so on. Devices not enabled by BIOS
+	   are still initialized. It is default.
 init     - driver initializes every device it knows about.
 nomtrr   - disables write combining on frame buffer. This slows down driver but
-           there is reported minor incompatibility between GUS DMA and XFree under
-	   high loads if write combining is enabled (sound dropouts).
+           there is reported minor incompatibility between GUS DMA and XFree
+	   under high loads if write combining is enabled (sound dropouts).
 mtrr     - enables write combining on frame buffer. It speeds up video accesses
-           much. It is default. You must have MTRR support enabled in kernel and
-	   your CPU must have MTRR (f.e. Pentium II have them).
-sgram    - tells to driver that you have G200 with SGRAM memory. It has no effect 
-           without `init'.
-sdram    - tells to driver that you have G200 with SDRAM memory. It is a default.
-inv24    - change timings parameters for 24bpp modes on Millenium and Millenium II.
-           Specify this if you see strange color shadows around characters.
+           much. It is default. You must have MTRR support enabled in kernel
+	   and your CPU must have MTRR (f.e. Pentium II have them).
+sgram    - tells to driver that you have G200 with SGRAM memory. It has no
+           effect without `init'.
+sdram    - tells to driver that you have G200 with SDRAM memory.
+           It is a default.
+inv24    - change timings parameters for 24bpp modes on Millenium and
+           Millenium II. Specify this if you see strange color shadows around
+	   characters.
 noinv24  - use standard timmings. It is default.
 inverse  - invert colors on screen (for LCD displays)
 noinverse - show true colors on screen. It is default.
-dev:X    - bind driver to device X. Driver numbers device from 0 up to N, where device
-           0 is first `known' device found, 1 second and so on. lspci lists
-	   devices in this order.
-	   Default is `every' known device for driver with multihead support and
-	   first working device (usually dev:0) for driver without multihead support.
+dev:X    - bind driver to device X. Driver numbers device from 0 up to N,
+           where device 0 is first `known' device found, 1 second and so on.
+	   lspci lists devices in this order.
+	   Default is `every' known device for driver with multihead support
+	   and first working device (usually dev:0) for driver without
+	   multihead support.
 nohwcursor - disables hardware cursor (use software cursor instead).
-hwcursor - enables hardware cursor. It is default. If you are using non-accelerated mode
-           (`noaccel' or `fbset -accel false'), software cursor is used (except for
-	   text mode).
-noblink  - disables cursor blinking. Cursor in text mode always blinks (hw limitation).
+hwcursor - enables hardware cursor. It is default. If you are using
+           non-accelerated mode (`noaccel' or `fbset -accel false'), software
+	   cursor is used (except for text mode).
+noblink  - disables cursor blinking. Cursor in text mode always blinks (hw
+           limitation).
 blink    - enables cursor blinking. It is default.
 nofastfont - disables fastfont feature. It is default.
-fastfont:X - enables fastfont feature. X specifies size of memory reserved for font data,
-           it must be >= (fontwidth*fontheight*chars_in_font)/8. It is faster on
-	   Gx00 series, but slower on older cards.
-grayscale - enable grayscale summing. It works in PSEUDOCOLOR modes (text, 4bpp, 8bpp). In
-           DIRECTCOLOR modes it is limited to characters displayed through putc/putcs. Direct
-	   accesses to framebuffer can paint colors.
+fastfont:X - enables fastfont feature. X specifies size of memory reserved for
+             font data, it must be >= (fontwidth*fontheight*chars_in_font)/8.
+	     It is faster on Gx00 series, but slower on older cards.
+grayscale - enable grayscale summing. It works in PSEUDOCOLOR modes (text,
+            4bpp, 8bpp). In DIRECTCOLOR modes it is limited to characters
+	    displayed through putc/putcs. Direct accesses to framebuffer
+	    can paint colors.
 nograyscale - disable grayscale summing. It is default.
-cross4MB - enables that pixel line can cross 4MB boundary. It is default for non-Millenium.
-nocross4MB - pixel line must not cross 4MB boundary. It is default for Millenium I or II,
-           because of these devices have hardware limitations which do not allow this.
-	   But this option is incompatible with some (if not all yet released) versions
-	   of XF86_FBDev.
-vesa:X   - selects startup videomode. X is number from 0 to 0x1FF, see table above
-           for detailed explanation. Default is 640x480, 8bpp if driver has 8bpp support.
-	   Otherwise first available of 640x350x4bpp, 640x480x15bpp, 640x480x24bpp,
-	   640x480x32bpp or 80x25 text (80x25 text is always available).
+cross4MB - enables that pixel line can cross 4MB boundary. It is default for
+           non-Millenium.
+nocross4MB - pixel line must not cross 4MB boundary. It is default for
+             Millenium I or II, because of these devices have hardware
+	     limitations which do not allow this. But this option is
+	     incompatible with some (if not all yet released) versions of
+	     XF86_FBDev.
+vesa:X   - selects startup videomode. X is number from 0 to 0x1FF, see table
+           above for detailed explanation. Default is 640x480x8bpp if driver
+	   has 8bpp support. Otherwise first available of 640x350x4bpp,
+	   640x480x15bpp, 640x480x24bpp, 640x480x32bpp or 80x25 text
+	   (80x25 text is always available).
+
 If you are not satisfied with videomode selected by `vesa' option, you
 can modify it with these options:
-xres:X   - horizontal resolution, in pixels. Default is derived from `vesa' option.
-yres:X   - vertical resolution, in pixel lines. Default is derived from `vesa' option.
-upper:X  - top boundary: lines between end of VSYNC pulse and start of first pixel line 
-           of picture. Default is derived from `vesa' option.
-lower:X  - bottom boundary: lines between end of picture and start of VSYNC pulse.
-           Default is derived from `vesa' option.
-vslen:X  - length of VSYNC pulse, in lines. Default is derived from `vesa' option.
-left:X   - left boundary: pixels between end of HSYNC pulse and first pixel. Default
-           is derived from `vesa' option.
-right:X  - right boundary: pixels between end of picture and start of HSYNC pulse.
+
+xres:X   - horizontal resolution, in pixels. Default is derived from `vesa'
+           option.
+yres:X   - vertical resolution, in pixel lines. Default is derived from `vesa'
+           option.
+upper:X  - top boundary: lines between end of VSYNC pulse and start of first
+           pixel line of picture. Default is derived from `vesa' option.
+lower:X  - bottom boundary: lines between end of picture and start of VSYNC
+           pulse. Default is derived from `vesa' option.
+vslen:X  - length of VSYNC pulse, in lines. Default is derived from `vesa'
+           option.
+left:X   - left boundary: pixels between end of HSYNC pulse and first pixel.
            Default is derived from `vesa' option.
-hslen:X  - length of HSYNC pulse, in pixels. Default is derived from `vesa' option.
-pixclock:X - dotclocks, in ps (picoseconds). Default is derived from `vesa' option and
-           from `fh' and `fv' options.
+right:X  - right boundary: pixels between end of picture and start of HSYNC
+           pulse. Default is derived from `vesa' option.
+hslen:X  - length of HSYNC pulse, in pixels. Default is derived from `vesa'
+           option.
+pixclock:X - dotclocks, in ps (picoseconds). Default is derived from `vesa'
+             option and from `fh' and `fv' options.
 sync:X   - sync. pulse - bit 0 inverts HSYNC polarity, bit 1 VSYNC polarity.
-           If bit 3 (value 0x08) is set, composite sync instead of HSYNC is generated.
-	   If bit 5 (value 0x20) is set, sync on green is turned on.
+           If bit 3 (value 0x08) is set, composite sync instead of HSYNC is
+	   generated. If bit 5 (value 0x20) is set, sync on green is turned on.
 	   Default depends on `vesa'.
-depth:X  - Bits per pixel: 0=text, 4,8,15,16,24 or 32. Default depends on `vesa'.
-If you know capabilities of your monitor, you can specify some (or all) of `pixclk', `fh'
-and `fv'. In this case, `pixclock' is computed so that pixclock <= maxclk, real_fh <= fh
-and real_fv <= fv.
-maxclk:X - maximum dotclock. X can be specified in MHz, kHz or Hz. Default is `don't care'.
-fh:X     - maximum horizontal synchronization frequency. X can be specified in kHz or Hz.
-           Default is `don't care'.
-fv:X     - maximum vertical frequency. X must be specified in Hz. Default is 70 for modes
-           derived from `vesa' with yres <= 400, 60Hz for yres > 400.
+depth:X  - Bits per pixel: 0=text, 4,8,15,16,24 or 32. Default depends on
+           `vesa'.
+
+If you know capabilities of your monitor, you can specify some (or all) of
+`pixclk', `fh' and `fv'. In this case, `pixclock' is computed so that
+pixclock <= maxclk, real_fh <= fh and real_fv <= fv.
+
+maxclk:X - maximum dotclock. X can be specified in MHz, kHz or Hz. Default is
+           `don't care'.
+fh:X     - maximum horizontal synchronization frequency. X can be specified
+           in kHz or Hz. Default is `don't care'.
+fv:X     - maximum vertical frequency. X must be specified in Hz. Default is
+           70 for modes derived from `vesa' with yres <= 400, 60Hz for
+	   yres > 400.
 
 
 Limitations
@@ -198,8 +243,6 @@
 
 There are known and unknown bugs, features and misfeatures.
 Currently there are following known bugs:
- + G100 support does not work as expected, I'm still investigating this one.
-   Using `noinit' option works, but only for `first' head :-(
  + SVGALib does not restore screen on exit
  + generic fbcon-cfbX procedures do not work on Alphas. Due to this,
    `noaccel' (and cfb4 accel) driver does not work on Alpha. So everyone

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov