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.\" $FreeBSD$ 28.\" 29.Dd October 11, 2019 30.Dt SUPERIO 4 31.Os 32.Sh NAME 33.Nm superio 34.Nd Super I/O controller and bus driver 35.Sh SYNOPSIS 36To compile this driver into the kernel, 37place the following line in your 38kernel configuration file: 39.Bd -ragged -offset indent 40.Cd "device superio" 41.Ed 42.Pp 43Alternatively, to load the driver as a 44module at boot time, place the following line in 45.Xr loader.conf 5 : 46.Bd -literal -offset indent 47superio_load="YES" 48.Ed 49.Sh DESCRIPTION 50Super I/O is an I/O controller that combines various low-bandwidth devices 51that can be functionally unrelated otherwise. 52A typical Super I/O can contain devices such as 53.Bl -bullet -compact 54.It 55a floppy disk controller 56.It 57a parallel port 58.It 59a serial port 60.It 61a PS/2 mouse and keyboard controller 62.It 63a hardware monitoring controller 64.It 65a watchdog timer 66.It 67a controller for general purpose input-output 68.El 69.Pp 70The 71.Nm 72driver provides support for devices residing in the Super I/O controller 73that can only be accessed or discovered using the controller's interface. 74Some of the Super I/O devices have standardized interfaces. 75Such devices either use well-known legacy resources or they are advertised 76via ACPI or both. 77They can be configured either using ISA bus hints or they are auto-configured by 78.Xr acpi 4 . 79The 80.Nm 81driver is not designed to interact with that kind of devices. 82They can be handled by their respective drivers without any knowledge of the 83Super I/O specifics. 84For instance, 85.Xr fdc 4 86provides access to the floppy disk controller. 87.Pp 88There are other Super I/O devices that do not have any standardized interface. 89Drivers for those devices can be written using facilities of the 90.Nm 91driver. 92.Pp 93The driver itself attaches to the ISA bus as all supported controllers are 94accessed via LPC I/O ports. 95.Pp 96The 97.Nm 98driver is unusual as it is both a controller driver for a variety of Super I/O 99controllers and a bus driver for supported devices in those controllers. 100.Sh HARDWARE 101The 102.Nm 103driver supports a multitude of Super I/O controllers produced by Nuvoton, 104formerly known as Winbond, and ITE. Namely: 105 106.Bl -bullet -compact 107.It 108Fintek F81803 109.It 110Fintek F81865 111.It 112Nuvoton NCT5104D/NCT6102D/NCT6106D rev. A and B+ 113.It 114Nuvoton NCT5585D 115.It 116Nuvoton NCT6116D 117.It 118Nuvoton NCT6775 119.It 120Nuvoton NCT6776 121.It 122Nuvoton NCT6779 123.It 124Nuvoton NCT6791 125.It 126Nuvoton NCT6792 127.It 128Nuvoton NCT6793 129.It 130Nuvoton NCT6795 131.It 132Nuvoton NCT6796D-E 133.It 134Winbond 83627HF/F/HG/G/S/THF/EHF/DHG/UHG/DHG-P 135.It 136Winbond 83637HF 137.It 138Winbond 83667HG/HG-B 139.It 140Winbond 83687THF 141.It 142Winbond 83697HF/UG 143.El 144 145.Sh SEE ALSO 146.Xr superio 9 147.Sh HISTORY 148The 149.Nm 150driver was written by 151.An Andriy Gapon Aq Mt avg@FreeBSD.org . 152