DragonFly On-Line Manual Pages
VGA(4) DragonFly Kernel Interfaces Manual VGA(4)
NAME
vga - generic video card interface
SYNOPSIS
device vga0 at isa? port ?
options VGA_KEEP_POWERON_MODE
options VGA_NO_FONT_LOADING
options VGA_NO_MODE_CHANGE
options VGA_DEBUG=N
options VGA_WIDTH90
DESCRIPTION
The vga driver is a generic video card driver which provides access to
video cards. This driver is required for the syscons(4) console driver
which will call the vga driver to manipulate video hardware (changing
video modes, loading fonts, etc).
The vga driver supports the standard VGA video cards.
DRIVER CONFIGURATION
The following kernel configuration options can be used to control the vga
driver. These options provide compatibility with certain VGA cards.
VGA_DEBUG=N Set the VGA support debug level to N. The
default value is 0, which suppresses all
debugging output. A value of 2 gives maximum
verbosity.
VGA_KEEP_POWERON_MODE This option keeps the initial mode's register
settings for switching back to it from another
mode.
VGA_WIDTH90 This option enables 90 column modes: 90x25,
90x30, 90x43, 90x50, 90x60. These modes are
not always supported by the video card and the
display. It is highly likely that LCD display
cannot work with these modes.
The following option will remove some features from the vga driver and
save kernel memory.
VGA_NO_FONT_LOADING This option removes font loading from the
driver. Note that if you use this option and
still wish to use the mouse on the console
then you must also use the SC_ALT_MOUSE_IMAGE
option. See syscons(4).
VGA_NO_MODE_CHANGE This option prevents the driver from changing
video modes.
SEE ALSO
vgl(3), syscons(4)
STANDARDS
Apple, IBM, Motorola, "Common Hardware Reference Platform: I/O Device
Reference", Appendix A: VGA Programming Model,
ftp://ftp.software.ibm.com/rs6000/technology/spec/chrp/, p. 195.
HISTORY
The vga driver first appeared in FreeBSD 3.1.
AUTHORS
The vga driver was written by Soren Schmidt <sos@FreeBSD.org> and
Kazutaka Yokota <yokota@FreeBSD.org>. This manual page was written by
Kazutaka Yokota.
DragonFly 5.9-DEVELOPMENT March 3, 2020 DragonFly 5.9-DEVELOPMENT
VGA_SWITCHEROO(4) DragonFly Kernel Interfaces Manual VGA_SWITCHEROO(4)
NAME
vga_switcheroo, apple_gmux -- support for Apple laptops with dual GPUs
SYNOPSIS
To enable support of dual GPUs in kernel, include the following line in
the kernel configuration file:
options VGA_SWITCHEROO
When the system has booted, load the apple_gmux driver before the native
graphics drivers, for example i915(4).
Alternatively, you can put these two lines in rc.conf(5):
apple_gmux_load="YES"
i915_load="YES"
As a result, vga_switcheroo switches the gmux controller so that all
output comes from the IGD.
DESCRIPTION
Apple MacBook Pro laptops have hybrid graphics, i.e. two GPUs, one being
the integrated graphics device (IGD) and the other being the discrete
graphics device (DIS), sometimes called the dedicated graphics device.
Gmux is a microcontroller that controls the output of these GPUs.
vga_switcheroo is the higher level module that facilitates switching
between the two GPUs using the lower level apple_gmux driver. When the
system boots and vga_switcheroo is enabled, apple_gmux registers with it.
It then acts as a handler. The two graphics adapters will also detect
the presence of vga_switcheroo and register as clients.
IMPLEMENTATION NOTES
In the current DragonFly specific implementation, upon detecting the
presence of apple_gmux, the Intel driver will call vga_switcheroo to
switch the gmux so that all output comes from the IGD. Switching to DIS
is not yet supported.
HARDWARE
Apple MacBook Pro laptops with dual GPUs.
SEE ALSO
i915(4), rc.conf(5)
https://01.org/linuxgraphics/gfx-docs/drm/gpu/vga-switcheroo.html
HISTORY
The vga_switcheroo driver was added in DragonFly 4.9.
AUTHORS
The vga_switcheroo driver was ported to DragonFly from linux 4.8 by
Peeter Must. He also wrote this manual page.
DragonFly 4.7 May 30, 2017 DragonFly 4.7