LinuxCommandLibrary

isadump

Dump Intel System Architecture (ISA) information

SYNOPSIS

isadump [-f bus] [-y] [-a] address [first [last]]

PARAMETERS

-f bus
    Force use of specific I2C bus number; skips scanning all /dev/i2c-* devices

-y
    Disable interactive prompt; answer 'yes' to all confirmations automatically

-a
    Dump entire EEPROM (addresses 0x00 to 0xff); otherwise 0x00 to 0x7f

DESCRIPTION

isadump is a command-line utility from the i2c-tools package used to read and display the raw contents of I2C slave devices, particularly 24Cxx series EEPROMs on ISA or LPC buses. It outputs a formatted hexadecimal dump to stdout, making it ideal for extracting data like SMBIOS/DMI tables from motherboard EEPROMs (often at addresses 0x50-0x57 on bus 0).

The tool sequentially reads bytes from the specified starting offset, defaulting to 0-127 unless -a is used for full 0-255 coverage. It prompts for confirmation by default to prevent accidental reads, but -y skips this. Access requires root privileges or i2c group membership, as it opens /dev/i2c-* devices.

Typical use case: troubleshooting hardware inventory, BIOS dumps, or DIMM SPD data. Output resembles:
0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef
00: 01 eb 48 41 20 20 20 20 20 00 00 80 00 ff ff 0f
10: ff ff 00 00 00 00 00 00 00 00 f8 00 00 00 00 00 ...

It's read-only and safe, but failed reads show 'XX'. Widely used in Linux hardware diagnostics.

CAVEATS

Requires root or i2c group access.
Failed reads display 'XX'; NAKs or busy devices cause errors.
Not for SMBus block reads; use i2cdump for general I2C.

COMMON EXAMPLE

sudo isadump -y 0 0x50 0x00 0xff
Dumps full SMBIOS EEPROM from bus 0, address 0x50.

OUTPUT PARSING

Hex dump is 16 bytes per line; ASCII on right. Pipe to xwdump or xxd for further processing.

HISTORY

Introduced in early i2c-tools (pre-2000s) as part of Linux I2C subsystem for lm-sensors project. Evolved with kernel I2C support; maintained in i2c-tools git repository for hardware monitoring.

SEE ALSO

Copied to clipboard