Merge branch 'for-5.11' into for-linus
[platform/kernel/linux-rpi.git] / Documentation / i2c / busses / i2c-viapro.rst
1 ========================
2 Kernel driver i2c-viapro
3 ========================
4
5 Supported adapters:
6   * VIA Technologies, Inc. VT82C596A/B
7     Datasheet: Sometimes available at the VIA website
8
9   * VIA Technologies, Inc. VT82C686A/B
10     Datasheet: Sometimes available at the VIA website
11
12   * VIA Technologies, Inc. VT8231, VT8233, VT8233A
13     Datasheet: available on request from VIA
14
15   * VIA Technologies, Inc. VT8235, VT8237R, VT8237A, VT8237S, VT8251
16     Datasheet: available on request and under NDA from VIA
17
18   * VIA Technologies, Inc. CX700
19     Datasheet: available on request and under NDA from VIA
20
21   * VIA Technologies, Inc. VX800/VX820
22     Datasheet: available on http://linux.via.com.tw
23
24   * VIA Technologies, Inc. VX855/VX875
25     Datasheet: available on http://linux.via.com.tw
26
27   * VIA Technologies, Inc. VX900
28     Datasheet: available on http://linux.via.com.tw
29
30 Authors:
31         - Kyösti Mälkki <kmalkki@cc.hut.fi>,
32         - Mark D. Studebaker <mdsxyz123@yahoo.com>,
33         - Jean Delvare <jdelvare@suse.de>
34
35 Module Parameters
36 -----------------
37
38 * force: int
39   Forcibly enable the SMBus controller. DANGEROUS!
40 * force_addr: int
41   Forcibly enable the SMBus at the given address. EXTREMELY DANGEROUS!
42
43 Description
44 -----------
45
46 i2c-viapro is a true SMBus host driver for motherboards with one of the
47 supported VIA south bridges.
48
49 Your ``lspci -n`` listing must show one of these :
50
51  ================   ======================
52  device 1106:3050   (VT82C596A function 3)
53  device 1106:3051   (VT82C596B function 3)
54  device 1106:3057   (VT82C686 function 4)
55  device 1106:3074   (VT8233)
56  device 1106:3147   (VT8233A)
57  device 1106:8235   (VT8231 function 4)
58  device 1106:3177   (VT8235)
59  device 1106:3227   (VT8237R)
60  device 1106:3337   (VT8237A)
61  device 1106:3372   (VT8237S)
62  device 1106:3287   (VT8251)
63  device 1106:8324   (CX700)
64  device 1106:8353   (VX800/VX820)
65  device 1106:8409   (VX855/VX875)
66  device 1106:8410   (VX900)
67  ================   ======================
68
69 If none of these show up, you should look in the BIOS for settings like
70 enable ACPI / SMBus or even USB.
71
72 Except for the oldest chips (VT82C596A/B, VT82C686A and most probably
73 VT8231), this driver supports I2C block transactions. Such transactions
74 are mainly useful to read from and write to EEPROMs.
75
76 The CX700/VX800/VX820 additionally appears to support SMBus PEC, although
77 this driver doesn't implement it yet.