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