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