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.


