superio
— Super
I/O controller and bus driver
To compile this driver into the kernel, place the following line
in your kernel configuration file:
device superio
Alternatively, to load the driver as a module at boot time, place
the following line in
loader.conf(5):
Super I/O is an I/O controller that combines various low-bandwidth
devices that can be functionally unrelated otherwise. A typical Super I/O
can contain devices such as
- a floppy disk controller
- a parallel port
- a serial port
- a PS/2 mouse and keyboard controller
- a hardware monitoring controller
- a watchdog timer
- a controller for general purpose input-output
The superio
driver provides support for
devices residing in the Super I/O controller that can only be accessed or
discovered using the controller's interface. Some of the Super I/O devices
have standardized interfaces. Such devices either use well-known legacy
resources or they are advertised via ACPI or both. They can be configured
either using ISA bus hints or they are auto-configured by
acpi(4).
The superio
driver is not designed to interact with
that kind of devices. They can be handled by their respective drivers
without any knowledge of the Super I/O specifics. For instance,
fdc(4)
provides access to the floppy disk controller.
There are other Super I/O devices that do not have any
standardized interface. Drivers for those devices can be written using
facilities of the superio
driver.
The driver itself attaches to the ISA bus as all supported
controllers are accessed via LPC I/O ports.
The superio
driver is unusual as it is
both a controller driver for a variety of Super I/O controllers and a bus
driver for supported devices in those controllers.
The superio
driver supports a multitude of
Super I/O controllers produced by Nuvoton, formerly known as Winbond, and
ITE, namely:
- Fintek F81803
- Fintek F81865
- Nuvoton NCT5104D/NCT6102D/NCT6106D rev. A and B+
- Nuvoton NCT5585D
- Nuvoton NCT6116D
- Nuvoton NCT6775
- Nuvoton NCT6776
- Nuvoton NCT6779
- Nuvoton NCT6791
- Nuvoton NCT6792
- Nuvoton NCT6793
- Nuvoton NCT6795
- Nuvoton NCT6796D-E
- Winbond 83627HF/F/HG/G/S/THF/EHF/DHG/UHG/DHG-P
- Winbond 83637HF
- Winbond 83667HG/HG-B
- Winbond 83687THF
- Winbond 83697HF/UG