| 1 | .TH I2CDUMP 8 "March 2008" |
|---|
| 2 | .SH NAME |
|---|
| 3 | i2cdump \- examine I2C registers |
|---|
| 4 | |
|---|
| 5 | .SH SYNOPSIS |
|---|
| 6 | .B i2cdump |
|---|
| 7 | .RB [ -f ] |
|---|
| 8 | .RB [ -y ] |
|---|
| 9 | .I i2cbus |
|---|
| 10 | .I address |
|---|
| 11 | .RI [ mode ] |
|---|
| 12 | .RI [ "bank " [ bankreg ]] |
|---|
| 13 | .br |
|---|
| 14 | .B i2cdump |
|---|
| 15 | .B -V |
|---|
| 16 | |
|---|
| 17 | .SH DESCRIPTION |
|---|
| 18 | i2cdump is a small helper program to examine registers |
|---|
| 19 | visible through the I2C bus. |
|---|
| 20 | |
|---|
| 21 | .SH OPTIONS |
|---|
| 22 | .TP |
|---|
| 23 | .B -V |
|---|
| 24 | Display the version and exit. |
|---|
| 25 | .TP |
|---|
| 26 | .B -f |
|---|
| 27 | Force access to the device even if it is already busy. By default, i2cdump |
|---|
| 28 | will refuse to access a device which is already under the control of a |
|---|
| 29 | kernel driver. Using this flag is dangerous, it can seriously confuse the |
|---|
| 30 | kernel driver in question. It can also cause i2cdump to return invalid |
|---|
| 31 | results. So use at your own risk and only if you know what you're doing. |
|---|
| 32 | .TP |
|---|
| 33 | .B -y |
|---|
| 34 | Disable interactive mode. By default, i2cdump will wait for a confirmation |
|---|
| 35 | from the user before messing with the I2C bus. When this flag is used, it |
|---|
| 36 | will perform the operation directly. This is mainly meant to be used in |
|---|
| 37 | scripts. |
|---|
| 38 | .PP |
|---|
| 39 | At least two options must be provided to i2cdump. \fIi2cbus\fR indicates the |
|---|
| 40 | number of the I2C bus to be scanned. This number should correspond to one |
|---|
| 41 | of the busses listed by \fIi2cdetect -l\fR. \fIaddress\fR indicates the |
|---|
| 42 | address to be scanned on that bus, and is an integer between 0x00 and 0x7F. |
|---|
| 43 | .PP |
|---|
| 44 | The \fImode\fR parameter, if specified, is one of the letters \fBb\fP, \fBw\fP, |
|---|
| 45 | \fBs\fP, or \fBi\fP, corresponding to a read size of a single byte, a 16-bit |
|---|
| 46 | word, an SMBus block, an I2C block, respectively. The \fBc\fP mode is a |
|---|
| 47 | little different, it reads all bytes consecutively, and is useful for chips that |
|---|
| 48 | have an address auto-increment feature, such as EEPROMs. The \fBW\fP mode is |
|---|
| 49 | also special, it is similar to \fBw\fP except that a read command will only |
|---|
| 50 | be issued on even register addresses; this is again mainly useful for EEPROMs. |
|---|
| 51 | .PP |
|---|
| 52 | A \fBp\fP can also be appended to the \fImode\fR parameter (except for |
|---|
| 53 | \fBi\fP and \fBW\fP) to enable PEC. If the \fImode\fR parameter is omitted, |
|---|
| 54 | i2cdump defaults to byte access without PEC. |
|---|
| 55 | .PP |
|---|
| 56 | The \fIbank\fR and \fIbankreg\fR parameters are useful on the W83781D and |
|---|
| 57 | similar chips (at the time of writing, all Winbond and Asus chips). |
|---|
| 58 | \fIbank\fR is an integer between 0 and 7, and \fIbankreg\fR is an integer |
|---|
| 59 | between 0x00 and 0xFF (default value: 0x4E). The W83781D data sheet has more |
|---|
| 60 | information on bank selection. |
|---|
| 61 | |
|---|
| 62 | .SH WARNING |
|---|
| 63 | i2cdump can be dangerous if used improperly. Most notably, the \fBc\fP mode |
|---|
| 64 | starts with WRITING a byte to the chip. On most chips it will be stored in the |
|---|
| 65 | address pointer register, which is OK, but some chips with a single register |
|---|
| 66 | or no (visible) register at all will most likely see this as a real WRITE, |
|---|
| 67 | resulting in possible misbehavior or corruption. Do not use i2cdump |
|---|
| 68 | on random addresses. Anyway, it is of little use unless you have good |
|---|
| 69 | knowledge of the chip you're working with and an idea of what you are looking |
|---|
| 70 | for. |
|---|
| 71 | |
|---|
| 72 | .SH SEE ALSO |
|---|
| 73 | i2cset(8), i2cdetect(8), isadump(8) |
|---|
| 74 | |
|---|
| 75 | .SH AUTHOR |
|---|
| 76 | Frodo Looijaard, Mark D. Studebaker and Jean Delvare |
|---|
| 77 | |
|---|
| 78 | This manual page was originally written by David Z Maze <dmaze@debian.org> for |
|---|
| 79 | the Debian GNU/Linux system. |
|---|