ipc: use device_initcall
[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)"
62c19c9d 390 depends on CPM1 || CPM2
61045dbe
JF
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)
f5b728a1
JD
531 help
532 If you say yes to this option, support will be included for the
533 built-in I2C interface on the Marvell 64xxx line of host bridges.
3d66ac7d 534 This driver is also used for Allwinner SoCs I2C controllers.
f5b728a1
JD
535
536 This driver can also be built as a module. If so, the module
537 will be called i2c-mv64xxx.
538
a8da7fec
WS
539config I2C_MXS
540 tristate "Freescale i.MX28 I2C interface"
541 depends on SOC_IMX28
6b866c15 542 select STMP_DEVICE
a8da7fec
WS
543 help
544 Say Y here if you want to use the I2C bus controller on
545 the Freescale i.MX28 processors.
546
547 This driver can also be built as a module. If so, the module
548 will be called i2c-mxs.
549
3f9900f1 550config I2C_NOMADIK
551 tristate "ST-Ericsson Nomadik/Ux500 I2C Controller"
419408ed 552 depends on ARM_AMBA
3f9900f1 553 help
554 If you say yes to this option, support will be included for the
419408ed
AR
555 I2C interface from ST-Ericsson's Nomadik and Ux500 architectures,
556 as well as the STA2X11 PCIe I/O HUB.
3f9900f1 557
ededad3e
WZ
558config I2C_NUC900
559 tristate "NUC900 I2C Driver"
560 depends on ARCH_W90X900
561 help
562 Say Y here to include support for I2C controller in the
563 Winbond/Nuvoton NUC900 based System-on-Chip devices.
564
f5b728a1
JD
565config I2C_OCORES
566 tristate "OpenCores I2C Controller"
f5b728a1
JD
567 help
568 If you say yes to this option, support will be included for the
569 OpenCores I2C controller. For details see
570 http://www.opencores.org/projects.cgi/web/i2c/overview
571
572 This driver can also be built as a module. If so, the module
573 will be called i2c-ocores.
574
575config I2C_OMAP
576 tristate "OMAP I2C adapter"
577 depends on ARCH_OMAP
578 default y if MACH_OMAP_H3 || MACH_OMAP_OSK
579 help
580 If you say yes to this option, support will be included for the
581 I2C interface on the Texas Instruments OMAP1/2 family of processors.
582 Like OMAP1510/1610/1710/5912 and OMAP242x.
583 For details see http://www.ti.com/omap.
1da177e4 584
beb58aa3
OJ
585config I2C_PASEMI
586 tristate "PA Semi SMBus interface"
16538e6b 587 depends on PPC_PASEMI && PCI
beb58aa3
OJ
588 help
589 Supports the PA Semi PWRficient on-chip SMBus interfaces.
590
35bfc353
WS
591config I2C_PCA_PLATFORM
592 tristate "PCA9564/PCA9665 as platform device"
593 select I2C_ALGOPCA
594 default n
595 help
596 This driver supports a memory mapped Philips PCA9564/PCA9665
597 parallel bus to I2C bus controller.
598
599 This driver can also be built as a module. If so, the module
600 will be called i2c-pca-platform.
601
602config I2C_PMCMSP
603 tristate "PMC MSP I2C TWI Controller"
604 depends on PMC_MSP
605 help
606 This driver supports the PMC TWI controller on MSP devices.
607
608 This driver can also be built as module. If so, the module
609 will be called i2c-pmcmsp.
610
f5b728a1 611config I2C_PNX
c115167a 612 tristate "I2C bus support for Philips PNX and NXP LPC targets"
d684f05f 613 depends on ARCH_LPC32XX
f5b728a1
JD
614 help
615 This driver supports the Philips IP3204 I2C IP block master and/or
616 slave controller
617
618 This driver can also be built as a module. If so, the module
619 will be called i2c-pnx.
620
d10e4a66
G
621config I2C_PUV3
622 tristate "PKUnity v3 I2C bus support"
623 depends on UNICORE32 && ARCH_PUV3
624 select I2C_ALGOBIT
625 help
626 This driver supports the I2C IP inside the PKUnity-v3 SoC.
627 This I2C bus controller is under AMBA/AXI bus.
628
629 This driver can also be built as a module. If so, the module
630 will be called i2c-puv3.
631
f5b728a1 632config I2C_PXA
d7c46ddd 633 tristate "Intel PXA2XX I2C adapter"
7e94dd15 634 depends on ARCH_PXA || ARCH_MMP || (X86_32 && PCI && OF)
f5b728a1
JD
635 help
636 If you have devices in the PXA I2C bus, say yes to this option.
637 This driver can also be built as a module. If so, the module
638 will be called i2c-pxa.
639
7e94dd15
SAS
640config I2C_PXA_PCI
641 def_bool I2C_PXA && X86_32 && PCI && OF
642
f5b728a1
JD
643config I2C_PXA_SLAVE
644 bool "Intel PXA2XX I2C Slave comms support"
7e94dd15 645 depends on I2C_PXA && !X86_32
f5b728a1
JD
646 help
647 Support I2C slave mode communications on the PXA I2C bus. This
648 is necessary for systems where the PXA may be a target on the
649 I2C bus.
650
310c18a4
WS
651config I2C_RIIC
652 tristate "Renesas RIIC adapter"
653 depends on ARCH_SHMOBILE || COMPILE_TEST
654 help
655 If you say yes to this option, support will be included for the
656 Renesas RIIC I2C interface.
657
658 This driver can also be built as a module. If so, the module
659 will be called i2c-riic.
660
4b623926
NKC
661config HAVE_S3C2410_I2C
662 bool
663 help
664 This will include I2C support for Samsung SoCs. If you want to
665 include I2C support for any machine, kindly select this in the
666 respective Kconfig file.
667
1da177e4
LT
668config I2C_S3C2410
669 tristate "S3C2410 I2C Driver"
4b623926 670 depends on HAVE_S3C2410_I2C
1da177e4
LT
671 help
672 Say Y here to include support for I2C controller in the
4b623926 673 Samsung SoCs.
1da177e4 674
b486ddbc
OS
675config I2C_S6000
676 tristate "S6000 I2C support"
677 depends on XTENSA_VARIANT_S6000
678 help
679 This driver supports the on chip I2C device on the
680 S6000 xtensa processor family.
681
682 To compile this driver as a module, choose M here. The module
683 will be called i2c-s6000.
684
f5b728a1
JD
685config I2C_SH7760
686 tristate "Renesas SH7760 I2C Controller"
687 depends on CPU_SUBTYPE_SH7760
1da177e4 688 help
f5b728a1
JD
689 This driver supports the 2 I2C interfaces on the Renesas SH7760.
690
691 This driver can also be built as a module. If so, the module
692 will be called i2c-sh7760.
693
694config I2C_SH_MOBILE
695 tristate "SuperH Mobile I2C Controller"
46a4e737 696 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
f5b728a1
JD
697 help
698 If you say yes to this option, support will be included for the
699 built-in I2C interface on the Renesas SH-Mobile processor.
700
701 This driver can also be built as a module. If so, the module
702 will be called i2c-sh_mobile.
1da177e4 703
bcda9f1e
BD
704config I2C_SIMTEC
705 tristate "Simtec Generic I2C interface"
706 select I2C_ALGOBIT
707 help
01dd2fbf 708 If you say yes to this option, support will be included for
bcda9f1e
BD
709 the Simtec Generic I2C interface. This driver is for the
710 simple I2C bus used on newer Simtec products for general
711 I2C, such as DDC on the Simtec BBD2016A.
712
01dd2fbf 713 This driver can also be built as a module. If so, the module
bcda9f1e
BD
714 will be called i2c-simtec.
715
979b907f
ZS
716config I2C_SIRF
717 tristate "CSR SiRFprimaII I2C interface"
c5dece37 718 depends on ARCH_SIRF
979b907f
ZS
719 help
720 If you say yes to this option, support will be included for the
721 CSR SiRFprimaII I2C interface.
722
723 This driver can also be built as a module. If so, the module
724 will be called i2c-sirf.
725
85b4fab2
MC
726config I2C_ST
727 tristate "STMicroelectronics SSC I2C support"
728 depends on ARCH_STI
729 help
730 Enable this option to add support for STMicroelectronics SoCs
731 hardware SSC (Synchronous Serial Controller) as an I2C controller.
732
733 This driver can also be built as module. If so, the module
734 will be called i2c-st.
735
18904c0e
LW
736config I2C_STU300
737 tristate "ST Microelectronics DDC I2C interface"
4eaad8ad 738 depends on MACH_U300
18904c0e
LW
739 default y if MACH_U300
740 help
741 If you say yes to this option, support will be included for the
742 I2C interface from ST Microelectronics simply called "DDC I2C"
743 supporting both I2C and DDC, used in e.g. the U300 series
744 mobile platforms.
745
746 This driver can also be built as a module. If so, the module
747 will be called i2c-stu300.
748
db811ca0
CC
749config I2C_TEGRA
750 tristate "NVIDIA Tegra internal I2C controller"
751 depends on ARCH_TEGRA
752 help
753 If you say yes to this option, support will be included for the
754 I2C controller embedded in NVIDIA Tegra SOCs
755
f5b728a1
JD
756config I2C_VERSATILE
757 tristate "ARM Versatile/Realview I2C bus support"
ceade897 758 depends on ARCH_VERSATILE || ARCH_REALVIEW || ARCH_VEXPRESS
1da177e4
LT
759 select I2C_ALGOBIT
760 help
f5b728a1
JD
761 Say yes if you want to support the I2C serial bus on ARMs Versatile
762 range of platforms.
1da177e4 763
f5b728a1
JD
764 This driver can also be built as a module. If so, the module
765 will be called i2c-versatile.
1da177e4 766
560746eb
TP
767config I2C_WMT
768 tristate "Wondermedia WM8xxx SoC I2C bus support"
769 depends on ARCH_VT8500
770 help
771 Say yes if you want to support the I2C bus on Wondermedia 8xxx-series
772 SoCs.
773
774 This driver can also be built as a module. If so, the module will be
775 called i2c-wmt.
776
85660f43
RB
777config I2C_OCTEON
778 tristate "Cavium OCTEON I2C bus support"
9ddebc46 779 depends on CAVIUM_OCTEON_SOC
85660f43
RB
780 help
781 Say yes if you want to support the I2C serial bus on Cavium
782 OCTEON SOC.
783
784 This driver can also be built as a module. If so, the module
785 will be called i2c-octeon.
786
e1d5b659
RR
787config I2C_XILINX
788 tristate "Xilinx I2C Controller"
417e86ce 789 depends on HAS_IOMEM
e1d5b659
RR
790 help
791 If you say yes to this option, support will be included for the
792 Xilinx I2C controller.
793
794 This driver can also be built as a module. If so, the module
795 will be called xilinx_i2c.
796
401c3434
GR
797config I2C_XLR
798 tristate "XLR I2C support"
799 depends on CPU_XLR
800 help
801 This driver enables support for the on-chip I2C interface of
802 the Netlogic XLR/XLS MIPS processors.
803
804 This driver can also be built as a module. If so, the module
805 will be called i2c-xlr.
806
6ccbe607
KM
807config I2C_RCAR
808 tristate "Renesas R-Car I2C Controller"
46a4e737 809 depends on ARCH_SHMOBILE || COMPILE_TEST
6ccbe607
KM
810 help
811 If you say yes to this option, support will be included for the
812 R-Car I2C controller.
813
814 This driver can also be built as a module. If so, the module
815 will be called i2c-rcar.
816
f5b728a1 817comment "External I2C/SMBus adapter drivers"
11de70bd 818
335d7c58
GR
819config I2C_DIOLAN_U2C
820 tristate "Diolan U2C-12 USB adapter"
821 depends on USB
822 help
823 If you say yes to this option, support will be included for Diolan
824 U2C-12, a USB to I2C interface.
825
826 This driver can also be built as a module. If so, the module
827 will be called i2c-diolan-u2c.
828
f5b728a1
JD
829config I2C_PARPORT
830 tristate "Parallel port adapter"
0244ad00 831 depends on PARPORT
f5b728a1 832 select I2C_ALGOBIT
35859254 833 select I2C_SMBUS
1da177e4 834 help
f5b728a1
JD
835 This supports parallel port I2C adapters such as the ones made by
836 Philips or Velleman, Analog Devices evaluation boards, and more.
837 Basically any adapter using the parallel port as an I2C bus with
838 no extra chipset is supported by this driver, or could be.
1da177e4 839
f5b728a1
JD
840 This driver is a replacement for (and was inspired by) an older
841 driver named i2c-philips-par. The new driver supports more devices,
842 and makes it easier to add support for new devices.
1da177e4 843
f5b728a1
JD
844 An adapter type parameter is now mandatory. Please read the file
845 Documentation/i2c/busses/i2c-parport for details.
1da177e4 846
f5b728a1
JD
847 Another driver exists, named i2c-parport-light, which doesn't depend
848 on the parport driver. This is meant for embedded systems. Don't say
849 Y here if you intend to say Y or M there.
1da177e4 850
4c03f68f 851 This support is also available as a module. If so, the module
f5b728a1 852 will be called i2c-parport.
1da177e4 853
f5b728a1
JD
854config I2C_PARPORT_LIGHT
855 tristate "Parallel port adapter (light)"
856 select I2C_ALGOBIT
927ab2f8 857 select I2C_SMBUS
1da177e4 858 help
f5b728a1
JD
859 This supports parallel port I2C adapters such as the ones made by
860 Philips or Velleman, Analog Devices evaluation boards, and more.
861 Basically any adapter using the parallel port as an I2C bus with
862 no extra chipset is supported by this driver, or could be.
1da177e4 863
f5b728a1
JD
864 This driver is a light version of i2c-parport. It doesn't depend
865 on the parport driver, and uses direct I/O access instead. This
866 might be preferred on embedded systems where wasting memory for
867 the clean but heavy parport handling is not an option. The
868 drawback is a reduced portability and the impossibility to
869 daisy-chain other parallel port devices.
1da177e4 870
f5b728a1
JD
871 Don't say Y here if you said Y or M to i2c-parport. Saying M to
872 both is possible but both modules should not be loaded at the same
873 time.
1da177e4 874
f5b728a1
JD
875 This support is also available as a module. If so, the module
876 will be called i2c-parport-light.
1da177e4 877
83e53a8f
AL
878config I2C_ROBOTFUZZ_OSIF
879 tristate "RobotFuzz Open Source InterFace USB adapter"
880 depends on USB
881 help
882 If you say yes to this option, support will be included for the
883 RobotFuzz Open Source InterFace USB to I2C interface.
884
885 This driver can also be built as a module. If so, the module
886 will be called i2c-osif.
887
b9cdad74
JD
888config I2C_TAOS_EVM
889 tristate "TAOS evaluation module"
21eaab6d 890 depends on TTY
b9cdad74
JD
891 select SERIO
892 select SERIO_SERPORT
893 default n
894 help
895 This supports TAOS evaluation modules on serial port. In order to
896 use this driver, you will need the inputattach tool, which is part
897 of the input-utils package.
898
899 If unsure, say N.
900
901 This support is also available as a module. If so, the module
902 will be called i2c-taos-evm.
903
e8c76eed 904config I2C_TINY_USB
f5b728a1 905 tristate "Tiny-USB adapter"
e8c76eed
TH
906 depends on USB
907 help
908 If you say yes to this option, support will be included for the
909 i2c-tiny-usb, a simple do-it-yourself USB to I2C interface. See
910 http://www.harbaum.org/till/i2c_tiny_usb for hardware details.
911
912 This driver can also be built as a module. If so, the module
913 will be called i2c-tiny-usb.
914
174a13aa
LP
915config I2C_VIPERBOARD
916 tristate "Viperboard I2C master support"
917 depends on MFD_VIPERBOARD && USB
918 help
919 Say yes here to access the I2C part of the Nano River
920 Technologies Viperboard as I2C master.
921 See viperboard API specification and Nano
922 River Tech's viperboard.h for detailed meaning
923 of the module parameters.
924
f5b728a1 925comment "Other I2C/SMBus bus drivers"
6b65cd74 926
8d91cbad 927config I2C_ACORN
2a9915c8 928 tristate "Acorn IOC/IOMD I2C bus support"
16538e6b 929 depends on ARCH_ACORN
8d91cbad
RK
930 default y
931 select I2C_ALGOBIT
932 help
933 Say yes if you want to support the I2C bus on Acorn platforms.
934
935 If you don't know, say Y.
936
f5b728a1
JD
937config I2C_ELEKTOR
938 tristate "Elektor ISA card"
9519282a 939 depends on ISA && HAS_IOPORT && BROKEN_ON_SMP
f5b728a1 940 select I2C_ALGOPCF
1da177e4 941 help
f5b728a1
JD
942 This supports the PCF8584 ISA bus I2C adapter. Say Y if you own
943 such an adapter.
1da177e4 944
f5b728a1
JD
945 This support is also available as a module. If so, the module
946 will be called i2c-elektor.
1da177e4
LT
947
948config I2C_PCA_ISA
eff9ec95 949 tristate "PCA9564/PCA9665 on an ISA bus"
16538e6b 950 depends on ISA
1da177e4 951 select I2C_ALGOPCA
aee62305 952 default n
1da177e4 953 help
eff9ec95 954 This driver supports ISA boards using the Philips PCA9564/PCA9665
244fbbb8 955 parallel bus to I2C bus controller.
4c03f68f 956
1da177e4
LT
957 This driver can also be built as a module. If so, the module
958 will be called i2c-pca-isa.
959
aee62305
JD
960 This device is almost undetectable and using this driver on a
961 system which doesn't have this device will result in long
962 delays when I2C/SMBus chip drivers are loaded (e.g. at boot
963 time). If unsure, say N.
964
f5b728a1
JD
965config I2C_SIBYTE
966 tristate "SiByte SMBus interface"
967 depends on SIBYTE_SB1xxx_SOC
a26c20b1 968 help
f5b728a1 969 Supports the SiByte SOC on-chip I2C interfaces (2 channels).
a26c20b1 970
f5b728a1
JD
971config SCx200_I2C
972 tristate "NatSemi SCx200 I2C using GPIO pins (DEPRECATED)"
973 depends on SCx200_GPIO
974 select I2C_ALGOBIT
da672773 975 help
f5b728a1 976 Enable the use of two GPIO pins of a SCx200 processor as an I2C bus.
da672773 977
f5b728a1
JD
978 If you don't know what to do here, say N.
979
980 This support is also available as a module. If so, the module
981 will be called scx200_i2c.
982
983 This driver is deprecated and will be dropped soon. Use i2c-gpio
984 (or scx200_acb) instead.
985
986config SCx200_I2C_SCL
987 int "GPIO pin used for SCL"
988 depends on SCx200_I2C
989 default "12"
990 help
991 Enter the GPIO pin number used for the SCL signal. This value can
992 also be specified with a module parameter.
993
994config SCx200_I2C_SDA
995 int "GPIO pin used for SDA"
996 depends on SCx200_I2C
997 default "13"
998 help
999 Enter the GPIO pin number used for the SSA signal. This value can
1000 also be specified with a module parameter.
1001
1002config SCx200_ACB
1003 tristate "Geode ACCESS.bus support"
1004 depends on X86_32 && PCI
1005 help
1006 Enable the use of the ACCESS.bus controllers on the Geode SCx200 and
1007 SC1100 processors and the CS5535 and CS5536 Geode companion devices.
1008
1009 If you don't know what to do here, say N.
1010
1011 This support is also available as a module. If so, the module
1012 will be called scx200_acb.
da672773 1013
1da177e4 1014endmenu