Contributed by Tom Rhodes.
Note: This is a FreeBSD 5.0 and later feature which does not exist in
earlier versions.
During initial system startup, the boot loader(8) will read
the
device.hints(5)
file. This file stores kernel boot information known as variables, sometimes referred to
as “device hints”. These “device hints” are used by device
drivers for device configuration.
Device hints may also be specified at the Stage
3 boot loader prompt. Variables can be added using set,
removed with unset, and viewed with the show commands. Variables set in the /boot/device.hints file can be overridden here also. Device hints
entered at the boot loader are not permanent and will be forgotten on the next
reboot.
Once the system is booted, the kenv(1) command can be
used to dump all of the variables.
The syntax for the /boot/device.hints file is one variable
per line, using the standard hash “#” as comment markers. Lines are
constructed as follows:
hint.driver.unit.keyword="value"
The syntax for the Stage 3 boot loader is:
set hint.driver.unit.keyword=value
driver is the device driver name, unit is the device driver unit number, and keyword is the hint keyword. The keyword may consist of the
following options:
-
at: specifies the bus which the device is attached to.
-
port: specifies the start address of the I/O to be used.
-
irq: specifies the interrupt request number to be used.
-
drq: specifies the DMA channel number.
-
maddr: specifies the physical memory address occupied by the
device.
-
flags: sets various flag bits for the device.
-
disabled: if set to 1 the device is
disabled.
Device drivers may accept (or require) more hints not listed here, viewing their
manual page is recommended. For more information, consult the
device.hints(5),
kenv(1), loader.conf(5), and loader(8) manual
pages.