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