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.
This, and other documents, can be downloaded from ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
For questions about FreeBSD, read the documentation before contacting <questions@FreeBSD.org>.
For questions about this documentation, e-mail <doc@FreeBSD.org>.