42c51a3710e5802e69af7e6bfa3f0657b124f935
[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 December 14, 2009
30 .Dt VGA 4
31 .Os
32 .Sh NAME
33 .Nm vga ,
34 .Nm vesa
35 .Nd generic video card interface
36 .Sh SYNOPSIS
37 .Cd "options VESA"
38 .Cd "options VESA_DEBUG=N"
39 .Cd "options VGA_ALT_SEQACCESS"
40 .Cd "options VGA_KEEP_POWERON_MODE"
41 .Cd "options VGA_NO_FONT_LOADING"
42 .Cd "options VGA_NO_MODE_CHANGE"
43 .Cd "options VGA_DEBUG=N"
44 .Cd "options VGA_WIDTH90"
45 .Cd "device vga0 at isa? port ?"
46 .Sh DESCRIPTION
47 The
48 .Nm
49 driver is a generic video card driver which provides access to
50 video cards.
51 This driver is required for the console driver
52 .Xr syscons 4 .
53 The console driver will call the
54 .Nm
55 driver to manipulate video hardware (changing video modes, loading font, etc).
56 .Pp
57 The
58 .Nm
59 driver supports the standard VGA video cards.
60 In addition, the driver can utilize the VESA BIOS Extension if the video card
61 supports it.
62 VESA support can either be statically included in the kernel
63 or can be loaded as a separate module.
64 .Pp
65 In order to statically link the VESA support into the kernel, the
66 .Dv VESA
67 option (see below) must be defined in the kernel configuration file.
68 .Pp
69 The
70 .Nm vesa
71 module can be dynamically loaded into the kernel using
72 .Xr kldload 8 .
73 .Sh DRIVER CONFIGURATION
74 .Ss Kernel Configuration Options
75 The following kernel configuration options
76 (see
77 .Xr config 8 )
78 can be used to control the
79 .Nm
80 driver.
81 These options provide compatibility with certain VGA cards.
82 .Bl -tag -width ".Dv VGA_KEEP_POWERON_MODE"
83 .It Dv VGA_ALT_SEQACCESS
84 You may want to try this option if the mouse pointer is not drawn correctly
85 or the font does not seem to be loaded properly on the VGA card.
86 However, it may cause flicker on some systems.
87 .It Dv VGA_DEBUG=N
88 Set the VGA support debug level to
89 .Fa N .
90 The default value is 0, which suppresses all debugging output.
91 A value of 2 gives maximum verbosity.
92 .It Dv VGA_KEEP_POWERON_MODE
93 This option keeps the initial mode's register settings for switching back
94 to it from another mode.
95 .It Dv VGA_WIDTH90
96 This option enables 90 column modes: 90x25, 90x30, 90x43, 90x50, 90x60.
97 These modes are not always supported by the video card and the display.
98 It is highly likely that LCD display cannot work with these modes.
99 .El
100 .Pp
101 The following options will remove some features from the
102 .Nm
103 driver and save kernel memory.
104 .Bl -tag -width ".Dv VGA_KEEP_POWERON_MODE"
105 .It Dv VGA_NO_FONT_LOADING
106 This option removes font loading from the driver.
107 Note that if you use this option and
108 still wish to use the mouse on the console then you must also use the
109 .Dv SC_ALT_MOUSE_IMAGE
110 option.
111 See
112 .Xr syscons 4 .
113 .It Dv VGA_NO_MODE_CHANGE
114 This option prevents the driver from changing video modes.
115 .El
116 .Pp
117 The following options add optional features to the driver.
118 .Bl -tag -width ".Dv VGA_KEEP_POWERON_MODE"
119 .It Dv VESA
120 Add VESA BIOS Extension support to the driver.
121 If the VGA card has the VESA BIOS Extension 1.2 or later,
122 this option will utilize it to switch to high resolution modes.
123 .It Dv VESA_DEBUG=N
124 Set the VESA support debug level to
125 .Fa N .
126 The default value is 0, which suppresses all debugging output.
127 A value of 2 gives maximum verbosity.
128 .El
129 .Sh EXAMPLES
130 Your kernel configuration should normally have:
131 .Pp
132 .D1 Cd "device vga0 at isa? port ?"
133 .Pp
134 The following line should be included in the kernel configuration file
135 in order to enable the VESA BIOS Extension support.
136 .Pp
137 .D1 Cd "options VESA"
138 .Pp
139 If you do not want VESA support included in the kernel, but
140 want to use occasionally, do not add the
141 .Dv VESA
142 option.
143 And load the
144 .Nm vesa
145 module as desired:
146 .Pp
147 .Dl kldload vesa
148 .Sh SEE ALSO
149 .Xr vgl 3 ,
150 .Xr syscons 4 ,
151 .Xr config 8 ,
152 .Xr kldload 8 ,
153 .Xr kldunload 8
154 .Sh STANDARDS
155 .Rs
156 .%A "Apple, IBM, Motorola"
157 .%T "Common Hardware Reference Platform: I/O Device Reference"
158 .%B "Appendix A: VGA Programming Model"
159 .%P "p. 195"
160 .%O "ftp://ftp.software.ibm.com/rs6000/technology/spec/chrp/"
161 .Re
162 .Pp
163 .Rs
164 .%T "VESA BIOS Extension (VBE)"
165 .%A Video Electronics Standards Association
166 .Re
167 .Sh HISTORY
168 The
169 .Nm
170 driver first appeared in
171 .Fx 3.1 .
172 .Sh AUTHORS
173 .An -nosplit
174 The
175 .Nm
176 driver was written by
177 .An S\(/oren Schmidt Aq Mt sos@FreeBSD.org
178 and
179 .An Kazutaka Yokota Aq Mt yokota@FreeBSD.org .
180 This manual page was written by
181 .An Kazutaka Yokota .