Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

i2cdump(8) [suse man page]

I2CDUMP(8)						      System Manager's Manual							I2CDUMP(8)

NAME
i2cdump - examine I2C registers SYNOPSIS
i2cdump [-f] [-r first-last] [-y] i2cbus address [mode [bank [bankreg]]] i2cdump -V DESCRIPTION
i2cdump is a small helper program to examine registers visible through the I2C bus. OPTIONS
-V Display the version and exit. -f Force access to the device even if it is already busy. By default, i2cdump will refuse to access a device which is already under the control of a kernel driver. Using this flag is dangerous, it can seriously confuse the kernel driver in question. It can also cause i2cdump to return invalid results. So use at your own risk and only if you know what you're doing. -r first-last Limit the range of registers being accessed. This option is only available with modes b, w, c and W. For mode W, first must be even and last must be odd. -y Disable interactive mode. By default, i2cdump will wait for a confirmation from the user before messing with the I2C bus. When this flag is used, it will perform the operation directly. This is mainly meant to be used in scripts. At least two options must be provided to i2cdump. i2cbus indicates the number or name of the I2C bus to be scanned. This number should cor- respond to one of the busses listed by i2cdetect -l. address indicates the address to be scanned on that bus, and is an integer between 0x03 and 0x77. The mode parameter, if specified, is one of the letters b, w, s, or i, corresponding to a read size of a single byte, a 16-bit word, an SMBus block, an I2C block, respectively. The c mode is a little different, it reads all bytes consecutively, and is useful for chips that have an address auto-increment feature, such as EEPROMs. The W mode is also special, it is similar to w except that a read command will only be issued on even register addresses; this is again mainly useful for EEPROMs. A p can also be appended to the mode parameter (except for i and W) to enable PEC. If the mode parameter is omitted, i2cdump defaults to byte access without PEC. The bank and bankreg parameters are useful on the W83781D and similar chips (at the time of writing, all Winbond and Asus chips). bank is an integer between 0 and 7, and bankreg is an integer between 0x00 and 0xFF (default value: 0x4E). The W83781D data sheet has more informa- tion on bank selection. WARNING
i2cdump can be dangerous if used improperly. Most notably, the c mode starts with WRITING a byte to the chip. On most chips it will be stored in the address pointer register, which is OK, but some chips with a single register or no (visible) register at all will most likely see this as a real WRITE, resulting in possible misbehavior or corruption. Do not use i2cdump on random addresses. Anyway, it is of little use unless you have good knowledge of the chip you're working with and an idea of what you are looking for. SEE ALSO
i2cset(8), i2cdetect(8), isadump(8) AUTHOR
Frodo Looijaard, Mark D. Studebaker and Jean Delvare This manual page was originally written by David Z Maze <dmaze@debian.org> for the Debian GNU/Linux system. May 2008 I2CDUMP(8)

Check Out this Related Man Page

ISADUMP(8)						      System Manager's Manual							ISADUMP(8)

NAME
isadump - examine ISA registers SYNOPSIS
isadump [-y] [-W|-L] [-k V1,V2...] addrreg datareg [bank [bankreg]] #for I2C-like access isadump -f [-y] [-W|-L] address [range [bank [bankreg]]] #for flat address space DESCRIPTION
isadump is a small helper program to examine registers visible through the ISA bus. It is intended to probe any chip that lives on the ISA bus working with an address register and a data register (I2C-like access) or a flat range (of up to 256 bytes). OPTIONS
-f Enable flat address space mode. -y Disable interactive mode. By default, isadump will wait for a confirmation from the user before messing with the ISA bus. When this flag is used, it will perform the operation directly. This is mainly meant to be used in scripts. -k V1,V2... Specify a comma-separated list of bytes to send as the key sequence to enter the chip configuration mode. Most Super-I/O chips need this. Known key sequences are: 0x87,0x01,0x55,0x55 for ITE, 0x55 for SMSC, 0x87,0x87 for Winbond and VIA, none needed for National Semiconductor. -W Perform 16-bit reads. -L Perform 32-bit reads. OPTIONS (I2C-like access mode) At least two options must be provided to isadump. addrreg contains the ISA address of the address register for the chip to probe; datareg contains the address of the data register. Both addresses are integers between 0x0000 and 0x3FFF. Usually, if the chip's base address is 0x0nn0, the address register is at 0x0nn5 and the data register is at 0x0nn6. The most common base address for hardware monitoring chips is 0x0290. For Super-I/O chips, address register is typically at 0x2E with data register at 0x2F. The bank and bankreg parameters are useful on the Winbond chips as well as on Super-I/O chips. bank is an integer between 0 and 31, and bankreg is an integer between 0x00 and 0xFF (default value: 0x4E for Winbond chips, 0x07 for Super-I/O chips). The W83781D datasheet has more information on bank selection. OPTIONS (flat address space mode) In flat mode, only one parameter is mandatory. address contains the ISA address of the chip to probe; it is an integer between 0x0000 and 0xFFFF. If provided, range is how many bytes should be read (must be a multiple of 16). If the range isn't provided, it defaults to 256 bytes and the address is forcibly aligned on a 256-byte boundary. The bank and bankreg parameters are useful on the National Semiconductor PC87365 and PC87366 Super-I/O chips. bank is an integer between 0 and 31, and bankreg is an integer between 0x00 and 0xFF (default value: 0x09; must fit in the specified range). See the PC87365 datasheet for more information on bank selection. NOTES
If no bank is specified, no bank change operation is performed. If a bank is specified, the original value is restored before isadump exits. Dumping Super-I/O chips is typically a two-step process. First, you will have to access the main Super-I/O address using a command like: isadump 0x2e 0x2f 0x09. This will select logical device 9 (correct value depend on the chip). At 0x60 you will find the logical device address word, for example "ec c0". Then you can use a command like: isadump -f 0xecc0 16. This will dump the logical device registers. The correct range depends on the chip. WARNING
Poking around in ISA data space is extremely dangerous. Running isadump with random parameters can cause system crashes, data loss, and worse! Be extremely careful when using this program. SEE ALSO
i2cdump(8), isaset(8) AUTHOR
Frodo Looijaard, Mark D. Studebaker, and the lm_sensors group (http://www.lm-sensors.org/) This manual page was originally written by David Z Maze <dmaze@debian.org> for the Debian GNU/Linux system. It was then reviewed and aug- mented by the lm_sensors team and is now part of the lm_sensors source distribution. April 2011 ISADUMP(8)
Man Page