table of contents
SUPERIO(9) | Kernel Developer's Manual | SUPERIO(9) |
NAME¶
superio
,
superio_devid
,
superio_dev_disable
,
superio_dev_enable
,
superio_dev_enabled
,
superio_find_dev
,
superio_get_dma
,
superio_get_iobase
,
superio_get_irq
,
superio_get_ldn
,
superio_get_type
,
superio_read
, superio_revid
,
superio_vendor
,
superio_write
— Super I/O
bus interface
SYNOPSIS¶
#include
<sys/bus.h>
#include
<dev/superio/superio.h>
uint16_t
superio_devid
(device_t
dev);
void
superio_dev_disable
(device_t
dev, uint8_t
mask);
void
superio_dev_enable
(device_t
dev, uint8_t
mask);
bool
superio_dev_enabled
(device_t
dev, uint8_t
mask);
device_t
superio_find_dev
(device_t
dev, superio_dev_type_t
type, int ldn);
uint8_t
superio_get_dma
(device_t
dev);
uint16_t
superio_get_iobase
(device_t
dev);
uint8_t
superio_get_irq
(device_t
dev);
uint8_t
superio_get_ldn
(device_t
dev);
superio_dev_type_t
superio_get_type
(device_t
dev);
uint8_t
superio_read
(device_t
dev, uint8_t
reg);
uint8_t
superio_revid
(device_t
dev);
superio_vendor_t
superio_vendor
(device_t
dev);
void
superio_write
(device_t
dev, uint8_t reg,
uint8_t val);
DESCRIPTION¶
The superio
set of functions are used for
managing Super I/O devices. The functions provide support for raw
configuration access, locating devices, device information, and device
configuration.
The controller interface¶
The
superio_vendor
()
function is used to get a vendor of the Super I/O controller
dev. Possible return values are
SUPERIO_VENDOR_ITE
and
SUPERIO_VENDOR_NUVOTON
.
The
superio_devid
()
function is used to get a device ID of the Super I/O controller
dev.
The
superio_revid
()
function is used to get a revision ID of the Super I/O controller
dev.
The
superio_find_dev
()
function is used to find a device on the superio(4) bus,
specified by dev, that has the requested type and
logical device number. Either of those, but not both, can be a wildcard.
Supported types are SUPERIO_DEV_GPIO
,
SUPERIO_DEV_HWM
, and
SUPERIO_DEV_WDT
. The wildcard value for
type is SUPERIO_DEV_NONE
. The
wildcard value for ldn is -1.
The device interface¶
The
superio_read
()
function is used to read data from the Super I/O configuration register of
the device dev.
The
superio_write
()
function is used to write data to the Super I/O configuration register of
the device dev.
The
superio_dev_enable
(),
superio_dev_disable
(),
and
superio_dev_enabled
()
functions are used to enable, disable, or check status of the device
dev. The mask parameter selects
sub-functions of a device that supports them. For devices that do not have
sub-functions, mask should be set to 1.
The accessor interface¶
The
superio_get_dma
()
is used to get a DMA channel number configured for the device
dev.
The
superio_get_iobase
()
is used to get a base I/O port configured for the device
dev. The device may expose additional or alternative
configuration access via the I/O ports.
The
superio_get_irq
()
is used to get an interrupt number configured for the device
dev.
The
superio_get_ldn
()
is used to get a Logical Device Number of the device
dev.
The
superio_get_type
()
is used to get a type of the device dev.
SEE ALSO¶
AUTHORS¶
This manual page was written by Andriy Gapon avg@FreeBSD.org
October 11, 2019 | Debian |