1.\" 2.\" SPDX-License-Identifier: BSD-2-Clause 3.\" 4.\" Copyright (c) 2019 Andriy Gapon <avg@FreeBSD.org> 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 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 AND CONTRIBUTORS ``AS IS'' AND 16.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 19.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25.\" SUCH DAMAGE. 26.\" 27.Dd October 11, 2019 28.Dt SUPERIO 4 29.Os 30.Sh NAME 31.Nm superio 32.Nd Super I/O controller and bus driver 33.Sh SYNOPSIS 34To compile this driver into the kernel, 35place the following line in your 36kernel configuration file: 37.Bd -ragged -offset indent 38.Cd "device superio" 39.Ed 40.Pp 41Alternatively, to load the driver as a 42module at boot time, place the following line in 43.Xr loader.conf 5 : 44.Bd -literal -offset indent 45superio_load="YES" 46.Ed 47.Sh DESCRIPTION 48Super I/O is an I/O controller that combines various low-bandwidth devices 49that can be functionally unrelated otherwise. 50A typical Super I/O can contain devices such as 51.Pp 52.Bl -bullet -compact 53.It 54a floppy disk controller 55.It 56a parallel port 57.It 58a serial port 59.It 60a PS/2 mouse and keyboard controller 61.It 62a hardware monitoring controller 63.It 64a watchdog timer 65.It 66a controller for general purpose input-output 67.El 68.Pp 69The 70.Nm 71driver provides support for devices residing in the Super I/O controller 72that can only be accessed or discovered using the controller's interface. 73Some of the Super I/O devices have standardized interfaces. 74Such devices either use well-known legacy resources or they are advertised 75via ACPI or both. 76They can be configured either using ISA bus hints or they are auto-configured by 77.Xr acpi 4 . 78The 79.Nm 80driver is not designed to interact with that kind of devices. 81They can be handled by their respective drivers without any knowledge of the 82Super I/O specifics. 83For instance, 84.Xr fdc 4 85provides access to the floppy disk controller. 86.Pp 87There are other Super I/O devices that do not have any standardized interface. 88Drivers for those devices can be written using facilities of the 89.Nm 90driver. 91.Pp 92The driver itself attaches to the ISA bus as all supported controllers are 93accessed via LPC I/O ports. 94.Pp 95The 96.Nm 97driver is unusual as it is both a controller driver for a variety of Super I/O 98controllers and a bus driver for supported devices in those controllers. 99.Sh HARDWARE 100The 101.Nm 102driver supports a multitude of Super I/O controllers produced by Nuvoton, 103formerly known as Winbond, and ITE, namely: 104.Pp 105.Bl -bullet -compact 106.It 107Fintek F81803 108.It 109Fintek F81865 110.It 111Nuvoton NCT5104D/NCT6102D/NCT6106D rev. A and B+ 112.It 113Nuvoton NCT5585D 114.It 115Nuvoton NCT6116D 116.It 117Nuvoton NCT6775 118.It 119Nuvoton NCT6776 120.It 121Nuvoton NCT6779 122.It 123Nuvoton NCT6791 124.It 125Nuvoton NCT6792 126.It 127Nuvoton NCT6793 128.It 129Nuvoton NCT6795 130.It 131Nuvoton NCT6796D-E 132.It 133Winbond 83627HF/F/HG/G/S/THF/EHF/DHG/UHG/DHG-P 134.It 135Winbond 83637HF 136.It 137Winbond 83667HG/HG-B 138.It 139Winbond 83687THF 140.It 141Winbond 83697HF/UG 142.El 143.Sh SEE ALSO 144.Xr superio 9 145.Sh HISTORY 146The 147.Nm 148driver was written by 149.An Andriy Gapon Aq Mt avg@FreeBSD.org . 150