i2c: mv64xxx: Add support for the Allwinner A31 I2C driver
[linux-2.6-block.git] / drivers / i2c / busses / Kconfig
CommitLineData
1da177e4
LT
1#
2# Sensor device configuration
3#
4
5menu "I2C Hardware Bus support"
3ddb59d4 6 depends on HAS_IOMEM
1da177e4 7
f5b728a1
JD
8comment "PC SMBus host controller drivers"
9 depends on PCI
10
1da177e4
LT
11config I2C_ALI1535
12 tristate "ALI 1535"
16538e6b 13 depends on PCI
1da177e4
LT
14 help
15 If you say yes to this option, support will be included for the SMB
16 Host controller on Acer Labs Inc. (ALI) M1535 South Bridges. The SMB
17 controller is part of the 7101 device, which is an ACPI-compliant
18 Power Management Unit (PMU).
19
20 This driver can also be built as a module. If so, the module
21 will be called i2c-ali1535.
22
23config I2C_ALI1563
24 tristate "ALI 1563"
417e86ce 25 depends on PCI
1da177e4
LT
26 help
27 If you say yes to this option, support will be included for the SMB
28 Host controller on Acer Labs Inc. (ALI) M1563 South Bridges. The SMB
29 controller is part of the 7101 device, which is an ACPI-compliant
30 Power Management Unit (PMU).
31
32 This driver can also be built as a module. If so, the module
33 will be called i2c-ali1563.
34
35config I2C_ALI15X3
36 tristate "ALI 15x3"
16538e6b 37 depends on PCI
1da177e4
LT
38 help
39 If you say yes to this option, support will be included for the
40 Acer Labs Inc. (ALI) M1514 and M1543 motherboard I2C interfaces.
41
42 This driver can also be built as a module. If so, the module
43 will be called i2c-ali15x3.
44
45config I2C_AMD756
46 tristate "AMD 756/766/768/8111 and nVidia nForce"
16538e6b 47 depends on PCI
1da177e4
LT
48 help
49 If you say yes to this option, support will be included for the AMD
50 756/766/768 mainboard I2C interfaces. The driver also includes
51 support for the first (SMBus 1.0) I2C interface of the AMD 8111 and
52 the nVidia nForce I2C interface.
53
54 This driver can also be built as a module. If so, the module
55 will be called i2c-amd756.
56
57config I2C_AMD756_S4882
58 tristate "SMBus multiplexing on the Tyan S4882"
417e86ce 59 depends on I2C_AMD756 && X86
1da177e4
LT
60 help
61 Enabling this option will add specific SMBus support for the Tyan
62 S4882 motherboard. On this 4-CPU board, the SMBus is multiplexed
63 over 8 different channels, where the various memory module EEPROMs
64 and temperature sensors live. Saying yes here will give you access
65 to these in addition to the trunk.
66
67 This driver can also be built as a module. If so, the module
68 will be called i2c-amd756-s4882.
69
70config I2C_AMD8111
71 tristate "AMD 8111"
16538e6b 72 depends on PCI
1da177e4
LT
73 help
74 If you say yes to this option, support will be included for the
75 second (SMBus 2.0) AMD 8111 mainboard I2C interface.
76
77 This driver can also be built as a module. If so, the module
78 will be called i2c-amd8111.
79
1da177e4 80config I2C_I801
39376434 81 tristate "Intel 82801 (ICH/PCH)"
16538e6b 82 depends on PCI
8eacfceb 83 select CHECK_SIGNATURE if X86 && DMI
1da177e4
LT
84 help
85 If you say yes to this option, support will be included for the Intel
86 801 family of mainboard I2C interfaces. Specifically, the following
87 versions of the chipset are supported:
88 82801AA
89 82801AB
90 82801BA
91 82801CA/CAM
92 82801DB
93 82801EB/ER (ICH5/ICH5R)
94 6300ESB
95 ICH6
96 ICH7
b0a70b57 97 ESB2
8254fc4a 98 ICH8
adbc2a10 99 ICH9
cb04e95b 100 EP80579 (Tolapai)
d28dc711 101 ICH10
cb04e95b 102 5/3400 Series (PCH)
662cda8a 103 6 Series (PCH)
e30d9859 104 Patsburg (PCH)
662cda8a 105 DH89xxCC (PCH)
6e2a851e 106 Panther Point (PCH)
062737fb 107 Lynx Point (PCH)
4a8f1ddd 108 Lynx Point-LP (PCH)
c2db409c 109 Avoton (SOC)
a3fc0ff0 110 Wellsburg (PCH)
f39901c1 111 Coleto Creek (PCH)
afc65924 112 Wildcat Point-LP (PCH)
1da177e4
LT
113
114 This driver can also be built as a module. If so, the module
115 will be called i2c-i801.
116
5bc12008
AD
117config I2C_ISCH
118 tristate "Intel SCH SMBus 1.0"
0244ad00 119 depends on PCI
fd46a006 120 select LPC_SCH
5bc12008
AD
121 help
122 Say Y here if you want to use SMBus controller on the Intel SCH
123 based systems.
124
125 This driver can also be built as a module. If so, the module
126 will be called i2c-isch.
127
13f35ac1
NH
128config I2C_ISMT
129 tristate "Intel iSMT SMBus Controller"
130 depends on PCI && X86
131 help
132 If you say yes to this option, support will be included for the Intel
133 iSMT SMBus host controller interface.
134
135 This driver can also be built as a module. If so, the module will be
136 called i2c-ismt.
137
1da177e4 138config I2C_PIIX4
76b3e28f 139 tristate "Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC)"
16538e6b 140 depends on PCI
1da177e4
LT
141 help
142 If you say yes to this option, support will be included for the Intel
143 PIIX4 family of mainboard I2C interfaces. Specifically, the following
5f7ea3c5
MD
144 versions of the chipset are supported (note that Serverworks is part
145 of Broadcom):
1da177e4
LT
146 Intel PIIX4
147 Intel 440MX
02e0c5d5
RM
148 ATI IXP200
149 ATI IXP300
150 ATI IXP400
4e6697fc 151 ATI SB600
2a2f7404 152 ATI SB700/SP5100
60693e5a 153 ATI SB800
3806e94b 154 AMD Hudson-2
032f708b 155 AMD ML
b996ac90 156 AMD CZ
1da177e4
LT
157 Serverworks OSB4
158 Serverworks CSB5
159 Serverworks CSB6
5f7ea3c5 160 Serverworks HT-1000
506a8b6c 161 Serverworks HT-1100
1da177e4
LT
162 SMSC Victory66
163
2a2f7404
AA
164 Some AMD chipsets contain two PIIX4-compatible SMBus
165 controllers. This driver will attempt to use both controllers
166 on the SB700/SP5100, if they have been initialized by the BIOS.
167
1da177e4
LT
168 This driver can also be built as a module. If so, the module
169 will be called i2c-piix4.
170
1da177e4 171config I2C_NFORCE2
5d740fe9 172 tristate "Nvidia nForce2, nForce3 and nForce4"
16538e6b 173 depends on PCI
1da177e4
LT
174 help
175 If you say yes to this option, support will be included for the Nvidia
5d740fe9 176 nForce2, nForce3 and nForce4 families of mainboard I2C interfaces.
1da177e4
LT
177
178 This driver can also be built as a module. If so, the module
179 will be called i2c-nforce2.
180
279e9024
JD
181config I2C_NFORCE2_S4985
182 tristate "SMBus multiplexing on the Tyan S4985"
417e86ce 183 depends on I2C_NFORCE2 && X86
279e9024
JD
184 help
185 Enabling this option will add specific SMBus support for the Tyan
186 S4985 motherboard. On this 4-CPU board, the SMBus is multiplexed
187 over 4 different channels, where the various memory module EEPROMs
188 live. Saying yes here will give you access to these in addition
189 to the trunk.
190
191 This driver can also be built as a module. If so, the module
192 will be called i2c-nforce2-s4985.
193
f5b728a1
JD
194config I2C_SIS5595
195 tristate "SiS 5595"
196 depends on PCI
18f98b1e
PK
197 help
198 If you say yes to this option, support will be included for the
f5b728a1 199 SiS5595 SMBus (a subset of I2C) interface.
18f98b1e
PK
200
201 This driver can also be built as a module. If so, the module
f5b728a1 202 will be called i2c-sis5595.
18f98b1e 203
f5b728a1 204config I2C_SIS630
974d6a37 205 tristate "SiS 630/730/964"
f5b728a1 206 depends on PCI
010d442c
KS
207 help
208 If you say yes to this option, support will be included for the
974d6a37 209 SiS630, SiS730 and SiS964 SMBus (a subset of I2C) interface.
010d442c 210
f5b728a1
JD
211 This driver can also be built as a module. If so, the module
212 will be called i2c-sis630.
213
214config I2C_SIS96X
215 tristate "SiS 96x"
216 depends on PCI
217 help
218 If you say yes to this option, support will be included for the SiS
219 96x SMBus (a subset of I2C) interfaces. Specifically, the following
220 chipsets are supported:
221 645/961
222 645DX/961
223 645DX/962
224 648/961
225 650/961
226 735
227 745
228
229 This driver can also be built as a module. If so, the module
230 will be called i2c-sis96x.
231
232config I2C_VIA
233 tristate "VIA VT82C586B"
417e86ce 234 depends on PCI
1da177e4
LT
235 select I2C_ALGOBIT
236 help
f5b728a1
JD
237 If you say yes to this option, support will be included for the VIA
238 82C586B I2C interface
1da177e4 239
f5b728a1
JD
240 This driver can also be built as a module. If so, the module
241 will be called i2c-via.
e97b81dd 242
f5b728a1 243config I2C_VIAPRO
01d56a6a 244 tristate "VIA VT82C596/82C686/82xx and CX700/VX8xx/VX900"
f5b728a1
JD
245 depends on PCI
246 help
247 If you say yes to this option, support will be included for the VIA
248 VT82C596 and later SMBus interface. Specifically, the following
249 chipsets are supported:
250 VT82C596A/B
251 VT82C686A/B
252 VT8231
253 VT8233/A
254 VT8235
255 VT8237R/A/S
256 VT8251
257 CX700
a231591f
HW
258 VX800/VX820
259 VX855/VX875
01d56a6a 260 VX900
e97b81dd 261
f5b728a1
JD
262 This driver can also be built as a module. If so, the module
263 will be called i2c-viapro.
1da177e4 264
cfd550ed
JD
265if ACPI
266
267comment "ACPI drivers"
268
269config I2C_SCMI
270 tristate "SMBus Control Method Interface"
271 help
272 This driver supports the SMBus Control Method Interface. It needs the
273 BIOS to declare ACPI control methods as described in the SMBus Control
274 Method Interface specification.
275
276 To compile this driver as a module, choose M here:
277 the module will be called i2c-scmi.
278
279endif # ACPI
280
f5b728a1
JD
281comment "Mac SMBus host controller drivers"
282 depends on PPC_CHRP || PPC_PMAC
1da177e4 283
f5b728a1
JD
284config I2C_HYDRA
285 tristate "CHRP Apple Hydra Mac I/O I2C interface"
417e86ce 286 depends on PCI && PPC_CHRP
1da177e4
LT
287 select I2C_ALGOBIT
288 help
f5b728a1
JD
289 This supports the use of the I2C interface in the Apple Hydra Mac
290 I/O chip on some CHRP machines (e.g. the LongTrail). Say Y if you
291 have such a machine.
4c03f68f 292
f5b728a1
JD
293 This support is also available as a module. If so, the module
294 will be called i2c-hydra.
295
296config I2C_POWERMAC
297 tristate "Powermac I2C interface"
298 depends on PPC_PMAC
299 default y
300 help
301 This exposes the various PowerMac i2c interfaces to the linux i2c
302 layer and to userland. It is used by various drivers on the PowerMac
303 platform, and should generally be enabled.
1da177e4 304
4c03f68f 305 This support is also available as a module. If so, the module
f5b728a1
JD
306 will be called i2c-powermac.
307
308comment "I2C system bus drivers (mostly embedded / system-on-chip)"
309
310config I2C_AT91
311 tristate "Atmel AT91 I2C Two-Wire interface (TWI)"
417e86ce 312 depends on ARCH_AT91
f5b728a1
JD
313 help
314 This supports the use of the I2C interface on Atmel AT91
315 processors.
316
fac368a0
NV
317 A serious problem is that there is no documented way to issue
318 repeated START conditions for more than two messages, as needed
f5b728a1 319 to support combined I2C messages. Use the i2c-gpio driver
fac368a0
NV
320 unless your system can cope with this limitation.
321
322 Caution! at91rm9200, at91sam9261, at91sam9260, at91sam9263 devices
323 don't have clock stretching in transmission mode. For that reason,
324 you can encounter underrun issues causing premature stop sendings if
325 the latency to fill the transmission register is too long. If you
326 are facing this situation, use the i2c-gpio driver.
f5b728a1
JD
327
328config I2C_AU1550
809f36c6 329 tristate "Au1550/Au1200/Au1300 SMBus interface"
37663860 330 depends on MIPS_ALCHEMY
f5b728a1
JD
331 help
332 If you say yes to this option, support will be included for the
809f36c6 333 Au1550/Au1200/Au1300 SMBus interface.
f5b728a1
JD
334
335 This driver can also be built as a module. If so, the module
336 will be called i2c-au1550.
337
f3b54b9a
SW
338config I2C_BCM2835
339 tristate "Broadcom BCM2835 I2C controller"
340 depends on ARCH_BCM2835
341 help
342 If you say yes to this option, support will be included for the
343 BCM2835 I2C controller.
344
345 If you don't know what to do here, say N.
346
347 This support is also available as a module. If so, the module
348 will be called i2c-bcm2835.
349
93d17247
TK
350config I2C_BCM_KONA
351 tristate "BCM Kona I2C adapter"
352 depends on ARCH_BCM_MOBILE
353 default y
354 help
355 If you say yes to this option, support will be included for the
356 I2C interface on the Broadcom Kona family of processors.
357
358 If you do not need KONA I2C inteface, say N.
359
f5b728a1
JD
360config I2C_BLACKFIN_TWI
361 tristate "Blackfin TWI I2C support"
362 depends on BLACKFIN
363 depends on !BF561 && !BF531 && !BF532 && !BF533
364 help
365 This is the I2C bus driver for Blackfin on-chip TWI interface.
366
367 This driver can also be built as a module. If so, the module
368 will be called i2c-bfin-twi.
369
370config I2C_BLACKFIN_TWI_CLK_KHZ
371 int "Blackfin TWI I2C clock (kHz)"
372 depends on I2C_BLACKFIN_TWI
9528d1c7 373 range 21 400
f5b728a1
JD
374 default 50
375 help
376 The unit of the TWI clock is kHz.
377
0857ba3c
AK
378config I2C_CBUS_GPIO
379 tristate "CBUS I2C driver"
76ec9d18 380 depends on GPIOLIB
0857ba3c
AK
381 help
382 Support for CBUS access using I2C API. Mostly relevant for Nokia
383 Internet Tablets (770, N800 and N810).
384
385 This driver can also be built as a module. If so, the module
386 will be called i2c-cbus-gpio.
387
61045dbe
JF
388config I2C_CPM
389 tristate "Freescale CPM1 or CPM2 (MPC8xx/826x)"
390 depends on (CPM1 || CPM2) && OF_I2C
391 help
392 This supports the use of the I2C interface on Freescale
393 processors with CPM1 or CPM2.
394
395 This driver can also be built as a module. If so, the module
396 will be called i2c-cpm.
397
f5b728a1
JD
398config I2C_DAVINCI
399 tristate "DaVinci I2C driver"
d654b548 400 depends on ARCH_DAVINCI || ARCH_KEYSTONE
f5b728a1
JD
401 help
402 Support for TI DaVinci I2C controller driver.
403
404 This driver can also be built as a module. If so, the module
405 will be called i2c-davinci.
406
407 Please note that this driver might be needed to bring up other
408 devices such as DaVinci NIC.
409 For details please see http://www.ti.com/davinci
410
e68bb91b
AL
411config I2C_DESIGNWARE_CORE
412 tristate
413
2373f6b9 414config I2C_DESIGNWARE_PLATFORM
6b2aac42 415 tristate "Synopsys DesignWare Platform"
e68bb91b 416 select I2C_DESIGNWARE_CORE
1ab52cf9
BS
417 help
418 If you say yes to this option, support will be included for the
419 Synopsys DesignWare I2C adapter. Only master mode is supported.
420
421 This driver can also be built as a module. If so, the module
2373f6b9 422 will be called i2c-designware-platform.
1ab52cf9 423
fe20ff5c
DB
424config I2C_DESIGNWARE_PCI
425 tristate "Synopsys DesignWare PCI"
426 depends on PCI
e68bb91b 427 select I2C_DESIGNWARE_CORE
fe20ff5c
DB
428 help
429 If you say yes to this option, support will be included for the
430 Synopsys DesignWare I2C adapter. Only master mode is supported.
431
432 This driver can also be built as a module. If so, the module
433 will be called i2c-designware-pci.
1ab52cf9 434
3e1b76be
J
435config I2C_EG20T
436 tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) I2C"
437 depends on PCI
438 help
439 This driver is for PCH(Platform controller Hub) I2C of EG20T which
440 is an IOH(Input/Output Hub) for x86 embedded processor.
441 This driver can access PCH I2C bus device.
442
443 This driver also can be used for LAPIS Semiconductor IOH(Input/
444 Output Hub), ML7213, ML7223 and ML7831.
445 ML7213 IOH is for IVI(In-Vehicle Infotainment) use, ML7223 IOH is
446 for MP(Media Phone) use and ML7831 IOH is for general purpose use.
447 ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
448 ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
449
8a73cd4c
NKC
450config I2C_EXYNOS5
451 tristate "Exynos5 high-speed I2C driver"
452 depends on ARCH_EXYNOS5 && OF
453 help
454 Say Y here to include support for high-speed I2C controller in the
455 Exynos5 based Samsung SoCs.
456
f5b728a1
JD
457config I2C_GPIO
458 tristate "GPIO-based bitbanging I2C"
76ec9d18 459 depends on GPIOLIB
f5b728a1
JD
460 select I2C_ALGOBIT
461 help
462 This is a very simple bitbanging I2C driver utilizing the
463 arch-neutral GPIO API to control the SCL and SDA lines.
464
4ad48e6a
PM
465config I2C_HIGHLANDER
466 tristate "Highlander FPGA SMBus interface"
467 depends on SH_HIGHLANDER
468 help
469 If you say yes to this option, support will be included for
470 the SMBus interface located in the FPGA on various Highlander
471 boards, particularly the R0P7780LC0011RL and R0P7785LC0011RL
472 FPGAs. This is wholly unrelated to the SoC I2C.
473
474 This driver can also be built as a module. If so, the module
475 will be called i2c-highlander.
476
f5b728a1
JD
477config I2C_IBM_IIC
478 tristate "IBM PPC 4xx on-chip I2C interface"
479 depends on 4xx
480 help
481 Say Y here if you want to use IIC peripheral found on
482 embedded IBM PPC 4xx based systems.
483
484 This driver can also be built as a module. If so, the module
485 will be called i2c-ibm_iic.
486
aa11e38c
DA
487config I2C_IMX
488 tristate "IMX I2C interface"
489 depends on ARCH_MXC
490 help
491 Say Y here if you want to use the IIC bus controller on
492 the Freescale i.MX/MXC processors.
493
494 This driver can also be built as a module. If so, the module
495 will be called i2c-imx.
496
f5b728a1
JD
497config I2C_IOP3XX
498 tristate "Intel IOPx3xx and IXP4xx on-chip I2C interface"
499 depends on ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || ARCH_IOP13XX
500 help
501 Say Y here if you want to use the IIC bus controller on
502 the Intel IOPx3xx I/O Processors or IXP4xx Network Processors.
503
504 This driver can also be built as a module. If so, the module
505 will be called i2c-iop3xx.
506
e0b9b7b0
KS
507config I2C_KEMPLD
508 tristate "Kontron COM I2C Controller"
509 depends on MFD_KEMPLD
510 help
511 This enables support for the I2C bus interface on some Kontron ETX
512 and COMexpress (ETXexpress) modules.
513
514 This driver can also be built as a module. If so, the module
515 will be called i2c-kempld.
516
f5b728a1 517config I2C_MPC
f00d738f 518 tristate "MPC107/824x/85xx/512x/52xx/83xx/86xx"
0724d464 519 depends on PPC
f5b728a1
JD
520 help
521 If you say yes to this option, support will be included for the
f00d738f
WG
522 built-in I2C interface on the MPC107, Tsi107, MPC512x, MPC52xx,
523 MPC8240, MPC8245, MPC83xx, MPC85xx and MPC8641 family processors.
f5b728a1
JD
524
525 This driver can also be built as a module. If so, the module
526 will be called i2c-mpc.
527
528config I2C_MV64XXX
529 tristate "Marvell mv64xxx I2C Controller"
3d66ac7d 530 depends on (MV64X60 || PLAT_ORION || ARCH_SUNXI)
370136bc 531 select RESET_CONTROLLER
f5b728a1
JD
532 help
533 If you say yes to this option, support will be included for the
534 built-in I2C interface on the Marvell 64xxx line of host bridges.
3d66ac7d 535 This driver is also used for Allwinner SoCs I2C controllers.
f5b728a1
JD
536
537 This driver can also be built as a module. If so, the module
538 will be called i2c-mv64xxx.
539
a8da7fec
WS
540config I2C_MXS
541 tristate "Freescale i.MX28 I2C interface"
542 depends on SOC_IMX28
6b866c15 543 select STMP_DEVICE
a8da7fec
WS
544 help
545 Say Y here if you want to use the I2C bus controller on
546 the Freescale i.MX28 processors.
547
548 This driver can also be built as a module. If so, the module
549 will be called i2c-mxs.
550
3f9900f1 551config I2C_NOMADIK
552 tristate "ST-Ericsson Nomadik/Ux500 I2C Controller"
419408ed 553 depends on ARM_AMBA
3f9900f1 554 help
555 If you say yes to this option, support will be included for the
419408ed
AR
556 I2C interface from ST-Ericsson's Nomadik and Ux500 architectures,
557 as well as the STA2X11 PCIe I/O HUB.
3f9900f1 558
ededad3e
WZ
559config I2C_NUC900
560 tristate "NUC900 I2C Driver"
561 depends on ARCH_W90X900
562 help
563 Say Y here to include support for I2C controller in the
564 Winbond/Nuvoton NUC900 based System-on-Chip devices.
565
f5b728a1
JD
566config I2C_OCORES
567 tristate "OpenCores I2C Controller"
f5b728a1
JD
568 help
569 If you say yes to this option, support will be included for the
570 OpenCores I2C controller. For details see
571 http://www.opencores.org/projects.cgi/web/i2c/overview
572
573 This driver can also be built as a module. If so, the module
574 will be called i2c-ocores.
575
576config I2C_OMAP
577 tristate "OMAP I2C adapter"
578 depends on ARCH_OMAP
579 default y if MACH_OMAP_H3 || MACH_OMAP_OSK
580 help
581 If you say yes to this option, support will be included for the
582 I2C interface on the Texas Instruments OMAP1/2 family of processors.
583 Like OMAP1510/1610/1710/5912 and OMAP242x.
584 For details see http://www.ti.com/omap.
1da177e4 585
beb58aa3
OJ
586config I2C_PASEMI
587 tristate "PA Semi SMBus interface"
16538e6b 588 depends on PPC_PASEMI && PCI
beb58aa3
OJ
589 help
590 Supports the PA Semi PWRficient on-chip SMBus interfaces.
591
35bfc353
WS
592config I2C_PCA_PLATFORM
593 tristate "PCA9564/PCA9665 as platform device"
594 select I2C_ALGOPCA
595 default n
596 help
597 This driver supports a memory mapped Philips PCA9564/PCA9665
598 parallel bus to I2C bus controller.
599
600 This driver can also be built as a module. If so, the module
601 will be called i2c-pca-platform.
602
603config I2C_PMCMSP
604 tristate "PMC MSP I2C TWI Controller"
605 depends on PMC_MSP
606 help
607 This driver supports the PMC TWI controller on MSP devices.
608
609 This driver can also be built as module. If so, the module
610 will be called i2c-pmcmsp.
611
f5b728a1 612config I2C_PNX
c115167a 613 tristate "I2C bus support for Philips PNX and NXP LPC targets"
d684f05f 614 depends on ARCH_LPC32XX
f5b728a1
JD
615 help
616 This driver supports the Philips IP3204 I2C IP block master and/or
617 slave controller
618
619 This driver can also be built as a module. If so, the module
620 will be called i2c-pnx.
621
d10e4a66
G
622config I2C_PUV3
623 tristate "PKUnity v3 I2C bus support"
624 depends on UNICORE32 && ARCH_PUV3
625 select I2C_ALGOBIT
626 help
627 This driver supports the I2C IP inside the PKUnity-v3 SoC.
628 This I2C bus controller is under AMBA/AXI bus.
629
630 This driver can also be built as a module. If so, the module
631 will be called i2c-puv3.
632
f5b728a1 633config I2C_PXA
d7c46ddd 634 tristate "Intel PXA2XX I2C adapter"
7e94dd15 635 depends on ARCH_PXA || ARCH_MMP || (X86_32 && PCI && OF)
f5b728a1
JD
636 help
637 If you have devices in the PXA I2C bus, say yes to this option.
638 This driver can also be built as a module. If so, the module
639 will be called i2c-pxa.
640
7e94dd15
SAS
641config I2C_PXA_PCI
642 def_bool I2C_PXA && X86_32 && PCI && OF
643
f5b728a1
JD
644config I2C_PXA_SLAVE
645 bool "Intel PXA2XX I2C Slave comms support"
7e94dd15 646 depends on I2C_PXA && !X86_32
f5b728a1
JD
647 help
648 Support I2C slave mode communications on the PXA I2C bus. This
649 is necessary for systems where the PXA may be a target on the
650 I2C bus.
651
310c18a4
WS
652config I2C_RIIC
653 tristate "Renesas RIIC adapter"
654 depends on ARCH_SHMOBILE || COMPILE_TEST
655 help
656 If you say yes to this option, support will be included for the
657 Renesas RIIC I2C interface.
658
659 This driver can also be built as a module. If so, the module
660 will be called i2c-riic.
661
4b623926
NKC
662config HAVE_S3C2410_I2C
663 bool
664 help
665 This will include I2C support for Samsung SoCs. If you want to
666 include I2C support for any machine, kindly select this in the
667 respective Kconfig file.
668
1da177e4
LT
669config I2C_S3C2410
670 tristate "S3C2410 I2C Driver"
4b623926 671 depends on HAVE_S3C2410_I2C
1da177e4
LT
672 help
673 Say Y here to include support for I2C controller in the
4b623926 674 Samsung SoCs.
1da177e4 675
b486ddbc
OS
676config I2C_S6000
677 tristate "S6000 I2C support"
678 depends on XTENSA_VARIANT_S6000
679 help
680 This driver supports the on chip I2C device on the
681 S6000 xtensa processor family.
682
683 To compile this driver as a module, choose M here. The module
684 will be called i2c-s6000.
685
f5b728a1
JD
686config I2C_SH7760
687 tristate "Renesas SH7760 I2C Controller"
688 depends on CPU_SUBTYPE_SH7760
1da177e4 689 help
f5b728a1
JD
690 This driver supports the 2 I2C interfaces on the Renesas SH7760.
691
692 This driver can also be built as a module. If so, the module
693 will be called i2c-sh7760.
694
695config I2C_SH_MOBILE
696 tristate "SuperH Mobile I2C Controller"
46a4e737 697 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
f5b728a1
JD
698 help
699 If you say yes to this option, support will be included for the
700 built-in I2C interface on the Renesas SH-Mobile processor.
701
702 This driver can also be built as a module. If so, the module
703 will be called i2c-sh_mobile.
1da177e4 704
bcda9f1e
BD
705config I2C_SIMTEC
706 tristate "Simtec Generic I2C interface"
707 select I2C_ALGOBIT
708 help
01dd2fbf 709 If you say yes to this option, support will be included for
bcda9f1e
BD
710 the Simtec Generic I2C interface. This driver is for the
711 simple I2C bus used on newer Simtec products for general
712 I2C, such as DDC on the Simtec BBD2016A.
713
01dd2fbf 714 This driver can also be built as a module. If so, the module
bcda9f1e
BD
715 will be called i2c-simtec.
716
979b907f
ZS
717config I2C_SIRF
718 tristate "CSR SiRFprimaII I2C interface"
c5dece37 719 depends on ARCH_SIRF
979b907f
ZS
720 help
721 If you say yes to this option, support will be included for the
722 CSR SiRFprimaII I2C interface.
723
724 This driver can also be built as a module. If so, the module
725 will be called i2c-sirf.
726
85b4fab2
MC
727config I2C_ST
728 tristate "STMicroelectronics SSC I2C support"
729 depends on ARCH_STI
730 help
731 Enable this option to add support for STMicroelectronics SoCs
732 hardware SSC (Synchronous Serial Controller) as an I2C controller.
733
734 This driver can also be built as module. If so, the module
735 will be called i2c-st.
736
18904c0e
LW
737config I2C_STU300
738 tristate "ST Microelectronics DDC I2C interface"
4eaad8ad 739 depends on MACH_U300
18904c0e
LW
740 default y if MACH_U300
741 help
742 If you say yes to this option, support will be included for the
743 I2C interface from ST Microelectronics simply called "DDC I2C"
744 supporting both I2C and DDC, used in e.g. the U300 series
745 mobile platforms.
746
747 This driver can also be built as a module. If so, the module
748 will be called i2c-stu300.
749
db811ca0
CC
750config I2C_TEGRA
751 tristate "NVIDIA Tegra internal I2C controller"
752 depends on ARCH_TEGRA
753 help
754 If you say yes to this option, support will be included for the
755 I2C controller embedded in NVIDIA Tegra SOCs
756
f5b728a1
JD
757config I2C_VERSATILE
758 tristate "ARM Versatile/Realview I2C bus support"
ceade897 759 depends on ARCH_VERSATILE || ARCH_REALVIEW || ARCH_VEXPRESS
1da177e4
LT
760 select I2C_ALGOBIT
761 help
f5b728a1
JD
762 Say yes if you want to support the I2C serial bus on ARMs Versatile
763 range of platforms.
1da177e4 764
f5b728a1
JD
765 This driver can also be built as a module. If so, the module
766 will be called i2c-versatile.
1da177e4 767
560746eb
TP
768config I2C_WMT
769 tristate "Wondermedia WM8xxx SoC I2C bus support"
770 depends on ARCH_VT8500
771 help
772 Say yes if you want to support the I2C bus on Wondermedia 8xxx-series
773 SoCs.
774
775 This driver can also be built as a module. If so, the module will be
776 called i2c-wmt.
777
85660f43
RB
778config I2C_OCTEON
779 tristate "Cavium OCTEON I2C bus support"
9ddebc46 780 depends on CAVIUM_OCTEON_SOC
85660f43
RB
781 help
782 Say yes if you want to support the I2C serial bus on Cavium
783 OCTEON SOC.
784
785 This driver can also be built as a module. If so, the module
786 will be called i2c-octeon.
787
e1d5b659
RR
788config I2C_XILINX
789 tristate "Xilinx I2C Controller"
417e86ce 790 depends on HAS_IOMEM
e1d5b659
RR
791 help
792 If you say yes to this option, support will be included for the
793 Xilinx I2C controller.
794
795 This driver can also be built as a module. If so, the module
796 will be called xilinx_i2c.
797
401c3434
GR
798config I2C_XLR
799 tristate "XLR I2C support"
800 depends on CPU_XLR
801 help
802 This driver enables support for the on-chip I2C interface of
803 the Netlogic XLR/XLS MIPS processors.
804
805 This driver can also be built as a module. If so, the module
806 will be called i2c-xlr.
807
6ccbe607
KM
808config I2C_RCAR
809 tristate "Renesas R-Car I2C Controller"
46a4e737 810 depends on ARCH_SHMOBILE || COMPILE_TEST
6ccbe607
KM
811 help
812 If you say yes to this option, support will be included for the
813 R-Car I2C controller.
814
815 This driver can also be built as a module. If so, the module
816 will be called i2c-rcar.
817
f5b728a1 818comment "External I2C/SMBus adapter drivers"
11de70bd 819
335d7c58
GR
820config I2C_DIOLAN_U2C
821 tristate "Diolan U2C-12 USB adapter"
822 depends on USB
823 help
824 If you say yes to this option, support will be included for Diolan
825 U2C-12, a USB to I2C interface.
826
827 This driver can also be built as a module. If so, the module
828 will be called i2c-diolan-u2c.
829
f5b728a1
JD
830config I2C_PARPORT
831 tristate "Parallel port adapter"
0244ad00 832 depends on PARPORT
f5b728a1 833 select I2C_ALGOBIT
35859254 834 select I2C_SMBUS
1da177e4 835 help
f5b728a1
JD
836 This supports parallel port I2C adapters such as the ones made by
837 Philips or Velleman, Analog Devices evaluation boards, and more.
838 Basically any adapter using the parallel port as an I2C bus with
839 no extra chipset is supported by this driver, or could be.
1da177e4 840
f5b728a1
JD
841 This driver is a replacement for (and was inspired by) an older
842 driver named i2c-philips-par. The new driver supports more devices,
843 and makes it easier to add support for new devices.
1da177e4 844
f5b728a1
JD
845 An adapter type parameter is now mandatory. Please read the file
846 Documentation/i2c/busses/i2c-parport for details.
1da177e4 847
f5b728a1
JD
848 Another driver exists, named i2c-parport-light, which doesn't depend
849 on the parport driver. This is meant for embedded systems. Don't say
850 Y here if you intend to say Y or M there.
1da177e4 851
4c03f68f 852 This support is also available as a module. If so, the module
f5b728a1 853 will be called i2c-parport.
1da177e4 854
f5b728a1
JD
855config I2C_PARPORT_LIGHT
856 tristate "Parallel port adapter (light)"
857 select I2C_ALGOBIT
927ab2f8 858 select I2C_SMBUS
1da177e4 859 help
f5b728a1
JD
860 This supports parallel port I2C adapters such as the ones made by
861 Philips or Velleman, Analog Devices evaluation boards, and more.
862 Basically any adapter using the parallel port as an I2C bus with
863 no extra chipset is supported by this driver, or could be.
1da177e4 864
f5b728a1
JD
865 This driver is a light version of i2c-parport. It doesn't depend
866 on the parport driver, and uses direct I/O access instead. This
867 might be preferred on embedded systems where wasting memory for
868 the clean but heavy parport handling is not an option. The
869 drawback is a reduced portability and the impossibility to
870 daisy-chain other parallel port devices.
1da177e4 871
f5b728a1
JD
872 Don't say Y here if you said Y or M to i2c-parport. Saying M to
873 both is possible but both modules should not be loaded at the same
874 time.
1da177e4 875
f5b728a1
JD
876 This support is also available as a module. If so, the module
877 will be called i2c-parport-light.
1da177e4 878
83e53a8f
AL
879config I2C_ROBOTFUZZ_OSIF
880 tristate "RobotFuzz Open Source InterFace USB adapter"
881 depends on USB
882 help
883 If you say yes to this option, support will be included for the
884 RobotFuzz Open Source InterFace USB to I2C interface.
885
886 This driver can also be built as a module. If so, the module
887 will be called i2c-osif.
888
b9cdad74
JD
889config I2C_TAOS_EVM
890 tristate "TAOS evaluation module"
21eaab6d 891 depends on TTY
b9cdad74
JD
892 select SERIO
893 select SERIO_SERPORT
894 default n
895 help
896 This supports TAOS evaluation modules on serial port. In order to
897 use this driver, you will need the inputattach tool, which is part
898 of the input-utils package.
899
900 If unsure, say N.
901
902 This support is also available as a module. If so, the module
903 will be called i2c-taos-evm.
904
e8c76eed 905config I2C_TINY_USB
f5b728a1 906 tristate "Tiny-USB adapter"
e8c76eed
TH
907 depends on USB
908 help
909 If you say yes to this option, support will be included for the
910 i2c-tiny-usb, a simple do-it-yourself USB to I2C interface. See
911 http://www.harbaum.org/till/i2c_tiny_usb for hardware details.
912
913 This driver can also be built as a module. If so, the module
914 will be called i2c-tiny-usb.
915
174a13aa
LP
916config I2C_VIPERBOARD
917 tristate "Viperboard I2C master support"
918 depends on MFD_VIPERBOARD && USB
919 help
920 Say yes here to access the I2C part of the Nano River
921 Technologies Viperboard as I2C master.
922 See viperboard API specification and Nano
923 River Tech's viperboard.h for detailed meaning
924 of the module parameters.
925
f5b728a1 926comment "Other I2C/SMBus bus drivers"
6b65cd74 927
8d91cbad 928config I2C_ACORN
2a9915c8 929 tristate "Acorn IOC/IOMD I2C bus support"
16538e6b 930 depends on ARCH_ACORN
8d91cbad
RK
931 default y
932 select I2C_ALGOBIT
933 help
934 Say yes if you want to support the I2C bus on Acorn platforms.
935
936 If you don't know, say Y.
937
f5b728a1
JD
938config I2C_ELEKTOR
939 tristate "Elektor ISA card"
9519282a 940 depends on ISA && HAS_IOPORT && BROKEN_ON_SMP
f5b728a1 941 select I2C_ALGOPCF
1da177e4 942 help
f5b728a1
JD
943 This supports the PCF8584 ISA bus I2C adapter. Say Y if you own
944 such an adapter.
1da177e4 945
f5b728a1
JD
946 This support is also available as a module. If so, the module
947 will be called i2c-elektor.
1da177e4
LT
948
949config I2C_PCA_ISA
eff9ec95 950 tristate "PCA9564/PCA9665 on an ISA bus"
16538e6b 951 depends on ISA
1da177e4 952 select I2C_ALGOPCA
aee62305 953 default n
1da177e4 954 help
eff9ec95 955 This driver supports ISA boards using the Philips PCA9564/PCA9665
244fbbb8 956 parallel bus to I2C bus controller.
4c03f68f 957
1da177e4
LT
958 This driver can also be built as a module. If so, the module
959 will be called i2c-pca-isa.
960
aee62305
JD
961 This device is almost undetectable and using this driver on a
962 system which doesn't have this device will result in long
963 delays when I2C/SMBus chip drivers are loaded (e.g. at boot
964 time). If unsure, say N.
965
f5b728a1
JD
966config I2C_SIBYTE
967 tristate "SiByte SMBus interface"
968 depends on SIBYTE_SB1xxx_SOC
a26c20b1 969 help
f5b728a1 970 Supports the SiByte SOC on-chip I2C interfaces (2 channels).
a26c20b1 971
f5b728a1
JD
972config SCx200_I2C
973 tristate "NatSemi SCx200 I2C using GPIO pins (DEPRECATED)"
974 depends on SCx200_GPIO
975 select I2C_ALGOBIT
da672773 976 help
f5b728a1 977 Enable the use of two GPIO pins of a SCx200 processor as an I2C bus.
da672773 978
f5b728a1
JD
979 If you don't know what to do here, say N.
980
981 This support is also available as a module. If so, the module
982 will be called scx200_i2c.
983
984 This driver is deprecated and will be dropped soon. Use i2c-gpio
985 (or scx200_acb) instead.
986
987config SCx200_I2C_SCL
988 int "GPIO pin used for SCL"
989 depends on SCx200_I2C
990 default "12"
991 help
992 Enter the GPIO pin number used for the SCL signal. This value can
993 also be specified with a module parameter.
994
995config SCx200_I2C_SDA
996 int "GPIO pin used for SDA"
997 depends on SCx200_I2C
998 default "13"
999 help
1000 Enter the GPIO pin number used for the SSA signal. This value can
1001 also be specified with a module parameter.
1002
1003config SCx200_ACB
1004 tristate "Geode ACCESS.bus support"
1005 depends on X86_32 && PCI
1006 help
1007 Enable the use of the ACCESS.bus controllers on the Geode SCx200 and
1008 SC1100 processors and the CS5535 and CS5536 Geode companion devices.
1009
1010 If you don't know what to do here, say N.
1011
1012 This support is also available as a module. If so, the module
1013 will be called scx200_acb.
da672773 1014
1da177e4 1015endmenu