215 lines
5.3 KiB
Groff
215 lines
5.3 KiB
Groff
.\" $NetBSD: drm.4,v 1.18 2021/03/10 07:23:42 wiz Exp $
|
|
.\"
|
|
.\" Copyright (c) 2007, 2013 Thomas Klausner
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
|
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
.\"
|
|
.Dd March 10, 2021
|
|
.Dt DRM 4
|
|
.Os
|
|
.Sh NAME
|
|
.Nm drm
|
|
.Nd Direct Rendering Manager (DRI kernel support)
|
|
.Sh SYNOPSIS
|
|
.Cd i915drm* at drm?
|
|
.Cd mach64drm* at drm?
|
|
.Cd mgadrm* at drm?
|
|
.Cd r128drm* at drm?
|
|
.Cd radeondrm* at drm?
|
|
.Cd savagedrm* at drm?
|
|
.Cd sisdrm* at drm?
|
|
.Cd tdfxdrm* at drm?
|
|
.Pp
|
|
.Cd options DRM_DEBUG
|
|
.Cd options DRM_NO_AGP
|
|
.Cd options DRM_MAX_RESOLUTION_HORIZONTAL=integer
|
|
.Cd options DRM_MAX_RESOLUTION_VERTICAL=integer
|
|
.Sh DESCRIPTION
|
|
The Direct Rendering Manager is part of the Direct Rendering
|
|
Infrastructure for supporting video acceleration (3d acceleration,
|
|
mostly).
|
|
.Pp
|
|
The
|
|
.Nm
|
|
drivers provide support for the following chipsets:
|
|
.Bl -tag -width XsavagedrmXXX -offset indent -compact
|
|
.It i915drm
|
|
Intel i915, i945
|
|
.It mach64drm
|
|
Mach64 (3D Rage Pro, Rage)
|
|
.It mgadrm
|
|
Matrox G[24]00, G[45]50
|
|
.It r128drm
|
|
ATI Rage 128
|
|
.It radeondrm
|
|
ATI Radeon
|
|
.It savagedrm
|
|
S3 Savage
|
|
.It sisdrm
|
|
SiS
|
|
.It tdfxdrm
|
|
3dfx (Voodoo)
|
|
.It viadrm
|
|
VIA
|
|
.El
|
|
.Pp
|
|
To make use of the driver, the kernel must include
|
|
.Xr agp 4
|
|
(for some drivers, using
|
|
.Cd options DRM_NO_AGP
|
|
instead may be sufficient),
|
|
.Xr X 7
|
|
must be compiled with DRI support, Mesa DRI drivers must be installed,
|
|
the appropriate
|
|
.Pa /dev/dri/card*
|
|
device must exist, and DRI must be enabled in the X configuration
|
|
file.
|
|
.Xr X 7
|
|
provided with
|
|
.Nx
|
|
and compiled from
|
|
.Xr pkgsrc 7
|
|
do so automatically where supported.
|
|
.Pp
|
|
With some drivers (at least
|
|
.Xr radeon 4 ) ,
|
|
in some cases the driver does not choose the resolution correctly.
|
|
The options
|
|
.Dv DRM_MAX_RESOLUTION_HORIZONTAL
|
|
and
|
|
.Dv DRM_MAX_RESOLUTION_VERTICAL
|
|
allow limiting the maximum resolution in X and Y direction.
|
|
.Pp
|
|
.Xr X 7
|
|
will attempt to create the device node automatically.
|
|
To create the device node manually:
|
|
.Bd -literal -offset indent
|
|
mkdir -p /dev/dri
|
|
mknod /dev/dri/card0 c 180 0
|
|
chgrp wheel /dev/dri/card0
|
|
chmod 0660 /dev/dri/card0
|
|
.Ed
|
|
.Pp
|
|
To enable DRI in the X configuration add the following to either
|
|
.Pa xorg.conf
|
|
for
|
|
.Xr Xorg 1
|
|
or
|
|
.Pa XF86Config
|
|
for
|
|
.Xr XFree86 1
|
|
:
|
|
.Bd -literal -offset indent
|
|
Section "Module"
|
|
...
|
|
Load "dri"
|
|
Load "dri2"
|
|
Load "glx"
|
|
EndSection
|
|
\&...
|
|
Section "DRI"
|
|
Group "wheel"
|
|
Mode 0660
|
|
EndSection
|
|
.Ed
|
|
.Pp
|
|
Debugging output can be enabled and disabled by setting the
|
|
.Xr sysctl 8
|
|
node
|
|
.Ar hw.dri.debug .
|
|
Additional information can be obtained from the
|
|
.Xr sysctl 8
|
|
nodes
|
|
.Ar hw.dri ,
|
|
.Ar hw.dri.card0 ,
|
|
.Ar hw.dri.card1 ,
|
|
etc.
|
|
.Sh SEE ALSO
|
|
.Xr XFree86 1 ,
|
|
.Xr Xorg 1 ,
|
|
.Xr agp 4 ,
|
|
.Xr XF86Config 5 ,
|
|
.Xr xorg.conf 5 ,
|
|
.Xr X 7 ,
|
|
.Pa /usr/X11R[67]/lib/X11/doc/README.DRI
|
|
.Pp
|
|
.Lk http://dri.freedesktop.org/ "Direct Rendering Infrastructure"
|
|
.Sh HISTORY
|
|
DRM was first available for Linux.
|
|
Subsequently Eric Anholt ported the DRM kernel modules to
|
|
.Fx .
|
|
Erik Reid adapted the
|
|
.Fx
|
|
DRM kernel modules to
|
|
.Nx .
|
|
As DRM continued to develop the
|
|
.Nx
|
|
support was neglected.
|
|
Tonnerre Lombard got the DRM modules working again, but DRM
|
|
development once again left the
|
|
.Nx
|
|
support behind.
|
|
Finally Yorick Hardy took the
|
|
.Fx
|
|
DRM source and managed to get it compiling and working again on
|
|
.Nx ,
|
|
thanks largely to the efforts of all those mentioned above.
|
|
Subsequently Matthias Drochner improved the DRM file hierarchy for
|
|
.Nx
|
|
and committed the DRM kernel drivers.
|
|
Matthew Green cleaned up this port and merged a set of newer
|
|
drivers, with Arto Huusko and FUKAUMI Naoki helping to get
|
|
the latest Mesa port up to date.
|
|
.Pp
|
|
The
|
|
.Nm
|
|
drivers appeared in
|
|
.Nx 5.0 .
|
|
.Sh AUTHORS
|
|
.An -nosplit
|
|
.An Eric Anholt ,
|
|
.An Terry Barnaby ,
|
|
.An Erdi Chen ,
|
|
.An Michel Daenzer ,
|
|
.An Leif Delgass ,
|
|
.An Frank C. Earl ,
|
|
.An Rickard E. Faith ,
|
|
.An Jose Fonseca ,
|
|
.An Nicolai Haehnle ,
|
|
.An Jeff Hartmann ,
|
|
.An Thomas Hellstrom ,
|
|
.An Gareth Hughes ,
|
|
.An Felix Kuehling ,
|
|
.An Sung-Ching Lin ,
|
|
.An Kevin E. Martin ,
|
|
.An Daryll Strauss ,
|
|
.An Keith Whitwell
|
|
.Sh CAVEATS
|
|
In case of errors,
|
|
.Pa /dev/dri/card0
|
|
may be changed, make sure to recreate it in that case.
|
|
.Pp
|
|
.Cd options DRM_DEBUG
|
|
can slow DRI down a lot; disable it once
|
|
.Nm
|
|
works.
|