1I2CDUMP(8)                  System Manager's Manual                 I2CDUMP(8)
2
3
4

NAME

6       i2cdump - examine I2C registers
7
8

SYNOPSIS

10       i2cdump   [-f]   [-r   first-last]  [-y]  i2cbus  address  [mode  [bank
11       [bankreg]]]
12       i2cdump -V
13
14

DESCRIPTION

16       i2cdump is a small helper program to examine registers visible  through
17       the I2C bus.
18
19

OPTIONS

21       -V     Display the version and exit.
22
23       -f     Force  access  to  the  device  even  if  it is already busy. By
24              default, i2cdump will refuse to access a device which is already
25              under the control of a kernel driver. Using this flag is danger‐
26              ous, it can seriously confuse the kernel driver in question.  It
27              can also cause i2cdump to return invalid results. So use at your
28              own risk and only if you know what you're doing.
29
30       -r first-last
31              Limit the range of registers being accessed. This option is only
32              available  with  modes  b, w, c and W. For mode W, first must be
33              even and last must be odd.
34
35       -y     Disable interactive mode. By default, i2cdump will  wait  for  a
36              confirmation from the user before messing with the I2C bus. When
37              this flag is used, it will perform the operation directly.  This
38              is mainly meant to be used in scripts.
39
40       At  least two options must be provided to i2cdump. i2cbus indicates the
41       number or name of the I2C bus to be scanned. This number should  corre‐
42       spond  to  one  of the busses listed by i2cdetect -l. address indicates
43       the address to be scanned on that bus, and is an integer  between  0x03
44       and 0x77.
45
46       The  mode parameter, if specified, is one of the letters b, w, s, or i,
47       corresponding to a read size of a single byte, a 16-bit word, an  SMBus
48       block, an I2C block, respectively. The c mode is a little different, it
49       reads all bytes consecutively, and is useful for  chips  that  have  an
50       address  auto-increment  feature,  such  as EEPROMs. The W mode is also
51       special, it is similar to w except that a read  command  will  only  be
52       issued on even register addresses; this is again mainly useful for EEP‐
53       ROMs.
54
55       A p can also be appended to the mode parameter (except for i and W)  to
56       enable  PEC. If the mode parameter is omitted, i2cdump defaults to byte
57       access without PEC.
58
59       The bank and bankreg parameters are useful on the W83781D  and  similar
60       chips (at the time of writing, all Winbond and Asus chips).  bank is an
61       integer between 0 and 7, and bankreg is an  integer  between  0x00  and
62       0xFF (default value: 0x4E). The W83781D data sheet has more information
63       on bank selection.
64
65

WARNING

67       i2cdump can be dangerous if used improperly. Most notably, the  c  mode
68       starts with WRITING a byte to the chip. On most chips it will be stored
69       in the address pointer register, which is OK, but  some  chips  with  a
70       single  register  or  no (visible) register at all will most likely see
71       this as a real WRITE, resulting in possible misbehavior or  corruption.
72       Do  not  use  i2cdump  on random addresses. Anyway, it is of little use
73       unless you have good knowledge of the chip you're working with  and  an
74       idea of what you are looking for.
75
76

EXAMPLES

78       Dump  the  whole  contents of I2C device at 7-bit address 0x50 on bus 9
79       (i2c-9), using the default read method (byte mode), after user  confir‐
80       mation:
81              # i2cdump 9 0x50
82
83       Immediately dump the whole contents of I2C device at 7-bit address 0x50
84       on bus 9 (i2c-9), using I2C block read transactions (no user  confirma‐
85       tion):
86              # i2cdump -y 9 0x50 i
87       If  the  device is an EEPROM, the output would typically be the same as
88       output of the previous example.
89
90       Dump registers 0x00 to 0x3f of the I2C device at 7-bit address 0x2d  on
91       bus  1  (i2c-1),  using the default read method (byte mode), after user
92       confirmation:
93              # i2cdump -r 0x00-0x3f 1 0x2d
94
95       Dump the registers of the  SMBus  device  at  address  0x69  on  bus  0
96       (i2c-0),  using  one  SMBus  block read transaction with error checking
97       enabled, after user confirmation:
98              # i2cdump 0 0x69 sp
99
100

SEE ALSO

102       i2cdetect(8), i2cget(8), i2cset(8), i2ctransfer(8), isadump(8)
103
104

AUTHOR

106       Frodo Looijaard, Mark D. Studebaker and Jean Delvare
107
108       This  manual  page   was   originally   written   by   David   Z   Maze
109       <dmaze@debian.org> for the Debian GNU/Linux system.
110
111
112
113                                 October 2017                       I2CDUMP(8)
Impressum