BIOS(4) | Device Drivers Manual (i386) | BIOS(4)

# NAME

`bios` — a driver for PC Firmware, aka BIOS

# SYNOPSIS

`bios0 at mainbus0 flags 0x0000`
`apm0 at bios0 flags 0x0000`
`pcibios0 at bios0 flags 0x0000`

# DESCRIPTION

OpenBSD provides support for PC firmware, aka BIOS and some of its functions, currently: APM subsystem, BIOS32 extensions, PCI BIOS subsystem.

The `bios` driver also identifies BIOS type (such as "AT/286+", which is almost always used in modern machines) and BIOS image date stamp, which is, presumably, the day the BIOS image was compiled by vendor and could be used as a crude BIOS version identification. The `bios` driver also scans the ISA memory hole at 640K-1M for optional ROM images and reserves the space from being used by various ISA devices, for example pcic(4).

Flags is a bit mask, each bit of which specifies which functions of the driver to disable.

0x0001
  BIOS32 attachment.

  Do not probe or attach to BIOS32 extensions. BIOS32 is one of the interfaces to the PCI BIOS configuration tables.

0x0002
  PCI BIOS attachment.

  Do not probe or attach the pcibios(4) device, which performs certain PCI configuration tasks.

0x0004
  Do not perform the scan for ROM images in the ISA memory hole (0xc0000 - 0xf0000 physical addresses).
0x0008
  SMBIOS attachment.

  Do not probe or attach to SMBIOS. SMBIOS provides greater detail about system hardware configuration and is required to attach ipmi(4) on most systems.

# SEE ALSO

apm(4), intro(4), pcibios(4), pcmcia(4)

# HISTORY

The `bios` driver appeared in OpenBSD 2.2.

# BUGS

On some machines optional ROM images do not pass checksum check, but it's considered better to reserve space for those anyway, choosing lesser evil from many.

May 31, 2007 | Debian