xref: /freebsd/share/man/man5/device.hints.5 (revision 6472ac3d8a86336899b6cfb789a4cd9897e3fab5)
1.\" Copyright (c) 2001
2.\" Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
3.\" All rights reserved.
4.\"
5.\" Redistribution and use in source and binary forms, with or without
6.\" modification, are permitted provided that the following conditions
7.\" are met:
8.\" 1. Redistributions of source code must retain the above copyright
9.\"    notice, this list of conditions and the following disclaimer as
10.\"    the first lines of this file unmodified.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice, this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\"
15.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
16.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
17.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
18.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
19.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
20.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
21.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
24.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25.\"
26.\" $FreeBSD$
27.\"
28.Dd September 11, 2009
29.Dt DEVICE.HINTS 5
30.Os
31.Sh NAME
32.Nm device.hints
33.Nd device resource hints
34.Sh DESCRIPTION
35The
36.Nm
37file is read in by the boot
38.Xr loader 8
39when the system is about to start, and its contents are
40passed to the kernel.
41It contains various variables to control the boot behavior of
42the kernel.
43These variables are typically
44.Dq device hints .
45.\" .Dq device hints ,
46.\" and other control variables.
47.Pp
48The file contains one variable per line.
49Lines starting with the
50.Ql #
51character are comments and are ignored by the boot loader.
52.Pp
53After the file is read by the boot loader, you may examine
54the variables with the
55.Ic show
56command, and may add a new variable, modify an existing one,
57or delete a variable with the
58.Ic set
59and
60.Ic unset
61commands of the boot loader
62(see
63.Xr loader 8 ) .
64.Pp
65After the system has started, you can dump these variables
66with the
67.Xr kenv 1
68command.
69.Sh DEVICE HINTS
70Device hint variables are used by device drivers to set up
71the device.
72They are most often used by ISA device drivers to specify
73where the driver will probe for the relevant devices, and what
74resources it will attempt to use.
75.Pp
76A device hint line looks like:
77.Pp
78.Sm off
79.D1 Li hint. Ar driver . Ar unit . Ar keyword Li = Qq Ar value
80.Sm on
81.Pp
82where
83.Ar driver
84is the name of a device driver,
85.Ar unit
86is the unit number, and
87.Ar keyword
88is the keyword of the hint.
89The keyword may be:
90.Pp
91.Bl -tag -width ".Li disabled" -compact -offset indent
92.It Li at
93specifies a bus to which the device is attached.
94.It Li port
95specifies the start address of I/O ports to be used by the device.
96.It Li portsize
97specifies the number of ports used by the device.
98.It Li irq
99is the interrupt line number to be used.
100.It Li drq
101is the DMA channel number.
102.It Li maddr
103specifies the physical memory address used by the device.
104.It Li msize
105specifies the physical memory size used by the device.
106.It Li flags
107sets various flag bits for the device.
108.It Li disabled
109can be set to
110.Qq 1
111to disable the device.
112.El
113.Pp
114A device driver may require one or more hint lines with these keywords,
115and may accept other keywords not listed here, through
116.Xr resource_int_value 9 .
117Consult individual device drivers' manual pages for available
118keywords and their possible values.
119.\" .Sh CONTROL VARIABLES
120.\" Lines not starting with
121.\" .Dq hint.
122.\" specify other control variables for the kernel.
123.\" They look:
124.\" .Pp
125.\" .Dl <name>="<value>"
126.\" XXX
127.\" WE SHOULD LIST AVAILABLE VARIABLE NAMES AND THEIR POSSIBLE VALUES HERE!
128.\" .Pp
129.Sh FILES
130.Bl -tag -width ".Pa /sys/ Ns Ar ARCH Ns Pa /conf/GENERIC.hints" -compact
131.It Pa /boot/device.hints
132Device resource hints file.
133.It Pa /sys/ Ns Ar ARCH Ns Pa /conf/GENERIC.hints
134Sample resource hints for the
135.Pa GENERIC
136kernel.
137.It Pa /sys/ Ns Ar ARCH Ns Pa /conf/NOTES
138Notes on the kernel configuration file and device resource hints.
139.El
140.Sh EXAMPLES
141The following example sets up resources for the
142.Xr sio 4
143driver on the ISA bus:
144.Bd -literal -offset indent
145hint.sio.0.at="isa"
146hint.sio.0.port="0x3F8"
147hint.sio.0.flags="0x10"
148hint.sio.0.irq="4"
149.Ed
150.Pp
151The following example disables the ACPI driver:
152.Bd -literal -offset indent
153hint.acpi.0.disabled="1"
154.Ed
155.\" .Pp
156.\" A control variable may look like:
157.\" .Pp
158.\" .Bd -literal -offset indent
159.\" debug.acpi.layer="ACPI_RESOURCES"
160.\" .Ed
161.Sh SEE ALSO
162.Xr kenv 1 ,
163.Xr loader.conf 5 ,
164.Xr loader 8 ,
165.Xr resource_int_value 9 .
166.Sh HISTORY
167The
168.Nm
169file first appeared in
170.Fx 5.0 .
171