superiotool - Super I/O detection tool
superiotool is a GPL’d user-space utility which can
* detect which Super I/O chip is soldered onto your mainboard,
* at which configuration port it’s located (usually 0x2e or 0x4e), and
* dump all register contents of the Super I/O chip, together with the
default values as per datasheet (to make comparing the values easy).
It is mainly used for coreboot development purposes (see coreboot.org
for details on coreboot), but it may also be useful for other things.
The list of supported Super I/O chips is available at
http://coreboot.org/Superiotool#Supported_devices, but it can also be
viewed by running superiotool -l.
If no command line option is specified, superiotool merely tries to
detect the Super I/O chip. You must use the -d option to dump the
Super I/O register contents.
Dump Super I/O registers (if the Super I/O chip is detected and
superiotool supports the --dump option for this chip). The
output will look something like this:
$ superiotool -d
Found SMSC FDC37N769 (id=0x28, rev=0x01) at 0x3f0
idx 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11...
val 20 90 80 f4 00 00 ff 00 00 00 40 00 0e 28 01 00 00 00...
def 28 9c 88 70 00 00 ff 00 00 00 00 00 02 28 NA 00 00 80...
The idx fields contain the register numbers/indexes of the Super
I/O, the val fields contain the contents of the respective
register as read from the Super I/O, and the def fields contain
the default values for the respective register, as specified in
The numbers in the output are all in hex format, and some
special values may also occur: NA stands for not available
(i.e., the datasheet doesn’t specify a default value for the
respective register), RR means reserved (the datasheet
explicitly marks this register as reserved), and MM means misc,
which can mean several things. It’s recommended to consult the
datasheet for detailed information about the MM fields.
Dump extra secondary register contents too, if available. Only
in combination with the --dump option. This option will, for
instance, dump the environmental controller (EC) configuration
registers for the ITE IT8716F chip. The format is similar to the
output of the --dump option.
List all Super I/O chips recognized by superiotool. The phrase
(dump available) following a chip name indicates that
superiotool supports the --dump option for this chip.
Enable verbose mode. This option can be used together with the
The verbose output will not only list for which type of Super
I/O the tool is scanning, but also at which configuration port
it’s probing, and which Super I/O initialization sequence is
used. If no Super I/O was detected in a probing run, the
returned output will be shown, as it may be useful for figuring
out which (currently unrecognized) Super I/O chip this may be.
Show version information and exit.
Show a help text and exit.
Please report any bugs at
http://tracker.coreboot.org/trac/coreboot/newticket or on the coreboot
mailing list (http://coreboot.org/Mailinglist).
Please see the individual source code files and/or the README file.
superiotool is covered by the GNU General Public License (GPL), either
version 2 of the License, or (at your option) any later version.
January 18, 2008