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