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
- Lines: 297
- Date:
Fri Jan 15 13:56:49 1999
- Orig file:
v2.2.0-pre7/linux/Documentation/fb/matroxfb.txt
- Orig date:
Fri Jan 8 22:35:58 1999
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