Initial import from FreeBSD RELENG_4:
[dragonfly.git] / share / man / man4 / vga.4
1 .\"
2 .\" Copyright (c) 1999
3 .\" Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
4 .\" All rights reserved.
5 .\"
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
8 .\" are met:
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\"    notice, this list of conditions and the following disclaimer as
11 .\"    the first lines of this file unmodified.
12 .\" 2. Redistributions in binary form must reproduce the above copyright
13 .\"    notice, this list of conditions and the following disclaimer in the
14 .\"    documentation and/or other materials provided with the distribution.
15 .\"
16 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19 .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21 .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22 .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23 .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 .\"
27 .\" $FreeBSD: src/share/man/man4/vga.4,v 1.7.2.10 2002/12/20 18:03:05 trhodes Exp $
28 .\"
29 .Dd June 30, 1999
30 .Dt VGA 4
31 .Os
32 .Sh NAME
33 .Nm vga
34 .Nd generic video card interface
35 .Sh SYNOPSIS
36 .Cd "options VESA"
37 .Cd "options VESA_DEBUG=N"
38 .Cd "options VGA_ALT_SEQACCESS"
39 .Cd "options VGA_NO_FONT_LOADING"
40 .Cd "options VGA_NO_MODE_CHANGE"
41 .Cd "options VGA_SLOW_IOACCESS"
42 .Cd "options VGA_WIDTH90"
43 .Cd "device vga0 at isa? port ?
44 .Sh DESCRIPTION
45 The
46 .Nm
47 driver is a generic video card driver which provides access to
48 video cards.  This driver is required for the console driver
49 .Xr syscons 4 .
50 The console driver will call the
51 .Nm
52 driver to manipulate video hardware (changing video modes, loading font, etc).
53 .Pp
54 The
55 .Nm
56 driver supports the standard video cards: MDA, CGA, EGA and VGA.
57 In
58 addition, the driver can utilize VESA BIOS extensions if the video card
59 supports them.
60 VESA support can either be statically included in the kernel
61 or can be loaded as a separate module.
62 .Pp
63 In order to statically link the VESA support to the kernel, the
64 .Dv VESA
65 option (see below) must be defined in the kernel configuration file.
66 .Pp
67 The
68 .Nm vesa
69 module can be dynamically loaded into the kernel using
70 .Xr kldload 8 .
71 .Sh DRIVER CONFIGURATION
72 .Ss Kernel Configuration Options
73 The following kernel configuration options
74 (see
75 .Xr config 8 )
76 can be used to control the
77 .Nm
78 driver.
79 These options provide compatibility with certain VGA cards.
80 .Bl -tag -width MOUSE
81 .It Dv VGA_ALT_SEQACCESS
82 You may want to try this option if the mouse pointer is not drawn correctly
83 or the font does not seem to be loaded properly on the VGA card.
84 However, it may cause flicker on some systems.
85 .It Dv VGA_SLOW_IOACCESS
86 Older VGA cards may require this option for proper operation.
87 It makes the driver perform byte-wide I/O to VGA registers and
88 slow down a little.
89 .It Dv VGA_WIDTH90
90 This option enables 90 column modes: 90x25, 90x30, 90x43, 90x50, 90x60.
91 These modes are not always supported by the video card and the display.
92 It is highly likely that LCD display cannot work with these modes.
93 .El
94 .Pp
95 The following options add optional features to the driver.
96 .Bl -tag -width MOUSE
97 .It Dv VESA
98 Add VESA BIOS support to the driver.
99 If the VGA card has the VESA BIOS extension 1.2 or later,
100 this option will utilize the VESA BIOS service to switch to high
101 resolution modes.
102 .It Dv VESA_DEBUG=N
103 Set the VESA support debug level to
104 .Fa N .
105 The default value is zero, which suppresses all debugging output.
106 .El
107 .Pp
108 The following options will remove some features from the
109 .Nm
110 driver and save kernel memory.
111 .Bl -tag -width MOUSE
112 .It Dv VGA_NO_FONT_LOADING
113 The
114 .Nm
115 driver can load software font to EGA and VGA cards.
116 This option removes this feature.
117 Note that if you use this option and
118 still wish to use the mouse on the console then you must also use the
119 .Dv SC_ALT_MOUSE_IMAGE
120 option.  See
121 .Xr syscons 4 .
122 .It Dv VGA_NO_MODE_CHANGE
123 This option prevents the driver from changing video modes.
124 .El
125 .\".Sh FILES
126 .Sh EXAMPLES
127 Your kernel configuration should normally have:
128 .Pp
129 .Dl "device vga0 at isa? port ?
130 .Pp
131 The following lines should be included in the kernel configuration file
132 in order to enable the VESA BIOS Extension support.
133 .Pp
134 .Dl "options VESA"
135 .Dl "device vga0 at isa? port ?
136 .Pp
137 If you do not want VESA support included in the kernel, but
138 want to use occasionally, do not add the
139 .Dv VESA
140 option.  And load the
141 .Nm vesa
142 module as desired:
143 .Pp
144 .Dl kldload vesa
145 .Pp
146 .\".Sh DIAGNOSTICS
147 .\".Sh CAVEATS
148 .\".Sh BUGS
149 .Sh SEE ALSO
150 .Xr vgl 3 ,
151 .Xr syscons 4 ,
152 .Xr config 8 ,
153 .Xr kldload 8 ,
154 .Xr kldunload 8
155 .Sh STANDARDS
156 .Rs
157 .%T "VESA BIOS Extension (VBE)"
158 .%A Video Electronics Standards Association
159 .Re
160 .Sh HISTORY
161 The
162 .Nm
163 driver first appeared in
164 .Fx 3.1 .
165 .Sh AUTHORS
166 .An -nosplit
167 The
168 .Nm
169 driver was written by
170 .An S\(/oren Schmidt Aq sos@FreeBSD.org
171 and
172 .An Kazutaka Yokota Aq yokota@FreeBSD.org .
173 This manual page was written by
174 .An Kazutaka Yokota .