Provided by: freebsd-manpages_12.2-1_all bug

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

       superio(4), device(9), driver(9)

AUTHORS

       This manual page was written by Andriy Gapon avg@FreeBSD.org

Debian                                          October 11, 2019                                      SUPERIO(9)