]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blame - drivers/i2c/busses/Kconfig
x86/speculation/mds: Add mitigation control for MDS
[mirror_ubuntu-bionic-kernel.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
e95ed23b
NS
80config I2C_AMD_MP2
81 tristate "AMD MP2"
3d2fb8c6 82 depends on ACPI && PCI
e95ed23b
NS
83 help
84 If you say yes to this option, support will be included for mp2
85 I2C interface.
86
87 This driver can also be built as a module. If so, the module
88 will be called i2c-amd-platdrv.
89
15ef2775
WY
90config I2C_HIX5HD2
91 tristate "Hix5hd2 high-speed I2C driver"
ae824f00 92 depends on ARCH_HISI || ARCH_HIX5HD2 || COMPILE_TEST
15ef2775 93 help
ae824f00
RJ
94 Say Y here to include support for the high-speed I2C controller
95 used in HiSilicon hix5hd2 SoCs.
15ef2775 96
ae824f00 97 This driver can also be built as a module. If so, the module
15ef2775
WY
98 will be called i2c-hix5hd2.
99
1da177e4 100config I2C_I801
39376434 101 tristate "Intel 82801 (ICH/PCH)"
16538e6b 102 depends on PCI
8eacfceb 103 select CHECK_SIGNATURE if X86 && DMI
7b0ed334 104 select I2C_SMBUS
1da177e4
LT
105 help
106 If you say yes to this option, support will be included for the Intel
107 801 family of mainboard I2C interfaces. Specifically, the following
108 versions of the chipset are supported:
109 82801AA
110 82801AB
111 82801BA
112 82801CA/CAM
113 82801DB
114 82801EB/ER (ICH5/ICH5R)
115 6300ESB
116 ICH6
117 ICH7
b0a70b57 118 ESB2
8254fc4a 119 ICH8
adbc2a10 120 ICH9
cb04e95b 121 EP80579 (Tolapai)
d28dc711 122 ICH10
cb04e95b 123 5/3400 Series (PCH)
662cda8a 124 6 Series (PCH)
e30d9859 125 Patsburg (PCH)
662cda8a 126 DH89xxCC (PCH)
6e2a851e 127 Panther Point (PCH)
062737fb 128 Lynx Point (PCH)
4a8f1ddd 129 Lynx Point-LP (PCH)
c2db409c 130 Avoton (SOC)
a3fc0ff0 131 Wellsburg (PCH)
f39901c1 132 Coleto Creek (PCH)
b299de83 133 Wildcat Point (PCH)
afc65924 134 Wildcat Point-LP (PCH)
1b31e9b7 135 BayTrail (SOC)
3e27a844 136 Sunrise Point-H (PCH)
3eee1799 137 Sunrise Point-LP (PCH)
2b630df7
JN
138 DNV (SOC)
139 Broxton (SOC)
cdc5a311 140 Lewisburg (PCH)
9827f9eb 141 Gemini Lake (SOC)
09a1de04
SP
142 Cannon Lake-H (PCH)
143 Cannon Lake-LP (PCH)
cb09d943 144 Cedar Fork (PCH)
1da177e4
LT
145
146 This driver can also be built as a module. If so, the module
147 will be called i2c-i801.
148
5bc12008
AD
149config I2C_ISCH
150 tristate "Intel SCH SMBus 1.0"
0244ad00 151 depends on PCI
fd46a006 152 select LPC_SCH
5bc12008
AD
153 help
154 Say Y here if you want to use SMBus controller on the Intel SCH
155 based systems.
156
157 This driver can also be built as a module. If so, the module
158 will be called i2c-isch.
159
13f35ac1
NH
160config I2C_ISMT
161 tristate "Intel iSMT SMBus Controller"
162 depends on PCI && X86
163 help
164 If you say yes to this option, support will be included for the Intel
165 iSMT SMBus host controller interface.
166
167 This driver can also be built as a module. If so, the module will be
168 called i2c-ismt.
169
1da177e4 170config I2C_PIIX4
76b3e28f 171 tristate "Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC)"
16538e6b 172 depends on PCI
1da177e4
LT
173 help
174 If you say yes to this option, support will be included for the Intel
175 PIIX4 family of mainboard I2C interfaces. Specifically, the following
5f7ea3c5
MD
176 versions of the chipset are supported (note that Serverworks is part
177 of Broadcom):
1da177e4
LT
178 Intel PIIX4
179 Intel 440MX
02e0c5d5
RM
180 ATI IXP200
181 ATI IXP300
182 ATI IXP400
4e6697fc 183 ATI SB600
2a2f7404 184 ATI SB700/SP5100
60693e5a 185 ATI SB800
3806e94b 186 AMD Hudson-2
032f708b 187 AMD ML
b996ac90 188 AMD CZ
1da177e4
LT
189 Serverworks OSB4
190 Serverworks CSB5
191 Serverworks CSB6
5f7ea3c5 192 Serverworks HT-1000
506a8b6c 193 Serverworks HT-1100
1da177e4
LT
194 SMSC Victory66
195
2a2f7404
AA
196 Some AMD chipsets contain two PIIX4-compatible SMBus
197 controllers. This driver will attempt to use both controllers
198 on the SB700/SP5100, if they have been initialized by the BIOS.
199
1da177e4
LT
200 This driver can also be built as a module. If so, the module
201 will be called i2c-piix4.
202
17a924bf
HG
203config I2C_CHT_WC
204 tristate "Intel Cherry Trail Whiskey Cove PMIC smbus controller"
205 depends on INTEL_SOC_PMIC_CHTWC
206 help
207 If you say yes to this option, support will be included for the
208 SMBus controller found in the Intel Cherry Trail Whiskey Cove PMIC
209 found on some Intel Cherry Trail systems.
210
0224d45c
HG
211 Note this controller is hooked up to a TI bq24292i charger-IC,
212 combined with a FUSB302 Type-C port-controller as such it is advised
213 to also select CONFIG_CHARGER_BQ24190=m and CONFIG_TYPEC_FUSB302=m
214 (the fusb302 driver currently is in drivers/staging).
215
1da177e4 216config I2C_NFORCE2
5d740fe9 217 tristate "Nvidia nForce2, nForce3 and nForce4"
16538e6b 218 depends on PCI
1da177e4
LT
219 help
220 If you say yes to this option, support will be included for the Nvidia
5d740fe9 221 nForce2, nForce3 and nForce4 families of mainboard I2C interfaces.
1da177e4
LT
222
223 This driver can also be built as a module. If so, the module
224 will be called i2c-nforce2.
225
279e9024
JD
226config I2C_NFORCE2_S4985
227 tristate "SMBus multiplexing on the Tyan S4985"
417e86ce 228 depends on I2C_NFORCE2 && X86
279e9024
JD
229 help
230 Enabling this option will add specific SMBus support for the Tyan
231 S4985 motherboard. On this 4-CPU board, the SMBus is multiplexed
232 over 4 different channels, where the various memory module EEPROMs
233 live. Saying yes here will give you access to these in addition
234 to the trunk.
235
236 This driver can also be built as a module. If so, the module
237 will be called i2c-nforce2-s4985.
238
f5b728a1
JD
239config I2C_SIS5595
240 tristate "SiS 5595"
241 depends on PCI
18f98b1e
PK
242 help
243 If you say yes to this option, support will be included for the
f5b728a1 244 SiS5595 SMBus (a subset of I2C) interface.
18f98b1e
PK
245
246 This driver can also be built as a module. If so, the module
f5b728a1 247 will be called i2c-sis5595.
18f98b1e 248
f5b728a1 249config I2C_SIS630
974d6a37 250 tristate "SiS 630/730/964"
f5b728a1 251 depends on PCI
010d442c
KS
252 help
253 If you say yes to this option, support will be included for the
974d6a37 254 SiS630, SiS730 and SiS964 SMBus (a subset of I2C) interface.
010d442c 255
f5b728a1
JD
256 This driver can also be built as a module. If so, the module
257 will be called i2c-sis630.
258
259config I2C_SIS96X
260 tristate "SiS 96x"
261 depends on PCI
262 help
263 If you say yes to this option, support will be included for the SiS
264 96x SMBus (a subset of I2C) interfaces. Specifically, the following
265 chipsets are supported:
266 645/961
267 645DX/961
268 645DX/962
269 648/961
270 650/961
271 735
272 745
273
274 This driver can also be built as a module. If so, the module
275 will be called i2c-sis96x.
276
277config I2C_VIA
278 tristate "VIA VT82C586B"
417e86ce 279 depends on PCI
1da177e4
LT
280 select I2C_ALGOBIT
281 help
f5b728a1
JD
282 If you say yes to this option, support will be included for the VIA
283 82C586B I2C interface
1da177e4 284
f5b728a1
JD
285 This driver can also be built as a module. If so, the module
286 will be called i2c-via.
e97b81dd 287
f5b728a1 288config I2C_VIAPRO
01d56a6a 289 tristate "VIA VT82C596/82C686/82xx and CX700/VX8xx/VX900"
f5b728a1
JD
290 depends on PCI
291 help
292 If you say yes to this option, support will be included for the VIA
293 VT82C596 and later SMBus interface. Specifically, the following
294 chipsets are supported:
295 VT82C596A/B
296 VT82C686A/B
297 VT8231
298 VT8233/A
299 VT8235
300 VT8237R/A/S
301 VT8251
302 CX700
a231591f
HW
303 VX800/VX820
304 VX855/VX875
01d56a6a 305 VX900
e97b81dd 306
f5b728a1
JD
307 This driver can also be built as a module. If so, the module
308 will be called i2c-viapro.
1da177e4 309
cfd550ed
JD
310if ACPI
311
312comment "ACPI drivers"
313
314config I2C_SCMI
315 tristate "SMBus Control Method Interface"
316 help
317 This driver supports the SMBus Control Method Interface. It needs the
318 BIOS to declare ACPI control methods as described in the SMBus Control
319 Method Interface specification.
320
321 To compile this driver as a module, choose M here:
322 the module will be called i2c-scmi.
323
324endif # ACPI
325
f5b728a1
JD
326comment "Mac SMBus host controller drivers"
327 depends on PPC_CHRP || PPC_PMAC
1da177e4 328
f5b728a1
JD
329config I2C_HYDRA
330 tristate "CHRP Apple Hydra Mac I/O I2C interface"
417e86ce 331 depends on PCI && PPC_CHRP
1da177e4
LT
332 select I2C_ALGOBIT
333 help
f5b728a1
JD
334 This supports the use of the I2C interface in the Apple Hydra Mac
335 I/O chip on some CHRP machines (e.g. the LongTrail). Say Y if you
336 have such a machine.
4c03f68f 337
f5b728a1
JD
338 This support is also available as a module. If so, the module
339 will be called i2c-hydra.
340
341config I2C_POWERMAC
342 tristate "Powermac I2C interface"
343 depends on PPC_PMAC
344 default y
345 help
346 This exposes the various PowerMac i2c interfaces to the linux i2c
347 layer and to userland. It is used by various drivers on the PowerMac
348 platform, and should generally be enabled.
1da177e4 349
4c03f68f 350 This support is also available as a module. If so, the module
f5b728a1
JD
351 will be called i2c-powermac.
352
353comment "I2C system bus drivers (mostly embedded / system-on-chip)"
354
0560ad57
TT
355config I2C_ALTERA
356 tristate "Altera Soft IP I2C"
357 depends on (ARCH_SOCFPGA || NIOS2) && OF
358 help
359 If you say yes to this option, support will be included for the
360 Altera Soft IP I2C interfaces on SoCFPGA and Nios2 architectures.
361
362 This driver can also be built as a module. If so, the module
363 will be called i2c-altera.
364
f327c686
BH
365config I2C_ASPEED
366 tristate "Aspeed I2C Controller"
367 depends on ARCH_ASPEED || COMPILE_TEST
368 help
369 If you say yes to this option, support will be included for the
370 Aspeed I2C controller.
371
372 This driver can also be built as a module. If so, the module
373 will be called i2c-aspeed.
374
f5b728a1
JD
375config I2C_AT91
376 tristate "Atmel AT91 I2C Two-Wire interface (TWI)"
417e86ce 377 depends on ARCH_AT91
f5b728a1
JD
378 help
379 This supports the use of the I2C interface on Atmel AT91
380 processors.
381
fac368a0
NV
382 A serious problem is that there is no documented way to issue
383 repeated START conditions for more than two messages, as needed
f5b728a1 384 to support combined I2C messages. Use the i2c-gpio driver
fac368a0
NV
385 unless your system can cope with this limitation.
386
387 Caution! at91rm9200, at91sam9261, at91sam9260, at91sam9263 devices
388 don't have clock stretching in transmission mode. For that reason,
389 you can encounter underrun issues causing premature stop sendings if
390 the latency to fill the transmission register is too long. If you
391 are facing this situation, use the i2c-gpio driver.
f5b728a1
JD
392
393config I2C_AU1550
809f36c6 394 tristate "Au1550/Au1200/Au1300 SMBus interface"
37663860 395 depends on MIPS_ALCHEMY
f5b728a1
JD
396 help
397 If you say yes to this option, support will be included for the
809f36c6 398 Au1550/Au1200/Au1300 SMBus interface.
f5b728a1
JD
399
400 This driver can also be built as a module. If so, the module
401 will be called i2c-au1550.
402
08678b85
AB
403config I2C_AXXIA
404 tristate "Axxia I2C controller"
405 depends on ARCH_AXXIA || COMPILE_TEST
406 default ARCH_AXXIA
407 help
408 Say yes if you want to support the I2C bus on Axxia platforms.
409
410 Please note that this controller is limited to transfers of maximum
411 255 bytes in length. Any attempt to to a larger transfer will return
412 an error.
413
f3b54b9a
SW
414config I2C_BCM2835
415 tristate "Broadcom BCM2835 I2C controller"
416 depends on ARCH_BCM2835
417 help
418 If you say yes to this option, support will be included for the
419 BCM2835 I2C controller.
420
421 If you don't know what to do here, say N.
422
423 This support is also available as a module. If so, the module
424 will be called i2c-bcm2835.
425
e6e5dd35
RJ
426config I2C_BCM_IPROC
427 tristate "Broadcom iProc I2C controller"
428 depends on ARCH_BCM_IPROC || COMPILE_TEST
429 default ARCH_BCM_IPROC
430 help
431 If you say yes to this option, support will be included for the
432 Broadcom iProc I2C controller.
433
434 If you don't know what to do here, say N.
435
93d17247
TK
436config I2C_BCM_KONA
437 tristate "BCM Kona I2C adapter"
438 depends on ARCH_BCM_MOBILE
439 default y
440 help
441 If you say yes to this option, support will be included for the
442 I2C interface on the Broadcom Kona family of processors.
443
f54619f2 444 If you do not need KONA I2C interface, say N.
93d17247 445
dd1aa252
KD
446config I2C_BRCMSTB
447 tristate "BRCM Settop I2C controller"
bcf358aa 448 depends on ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST
dd1aa252
KD
449 default y
450 help
451 If you say yes to this option, support will be included for the
452 I2C interface on the Broadcom Settop SoCs.
453
454 If you do not need I2C interface, say N.
455
f5b728a1
JD
456config I2C_BLACKFIN_TWI
457 tristate "Blackfin TWI I2C support"
458 depends on BLACKFIN
459 depends on !BF561 && !BF531 && !BF532 && !BF533
460 help
461 This is the I2C bus driver for Blackfin on-chip TWI interface.
462
463 This driver can also be built as a module. If so, the module
464 will be called i2c-bfin-twi.
465
466config I2C_BLACKFIN_TWI_CLK_KHZ
467 int "Blackfin TWI I2C clock (kHz)"
468 depends on I2C_BLACKFIN_TWI
9528d1c7 469 range 21 400
f5b728a1
JD
470 default 50
471 help
472 The unit of the TWI clock is kHz.
473
df8eb569
SB
474config I2C_CADENCE
475 tristate "Cadence I2C Controller"
f8989783 476 depends on ARCH_ZYNQ || ARM64 || XTENSA
df8eb569
SB
477 help
478 Say yes here to select Cadence I2C Host Controller. This controller is
479 e.g. used by Xilinx Zynq.
480
0857ba3c
AK
481config I2C_CBUS_GPIO
482 tristate "CBUS I2C driver"
7e5cd69a 483 depends on GPIOLIB || COMPILE_TEST
0857ba3c
AK
484 help
485 Support for CBUS access using I2C API. Mostly relevant for Nokia
486 Internet Tablets (770, N800 and N810).
487
488 This driver can also be built as a module. If so, the module
489 will be called i2c-cbus-gpio.
490
61045dbe
JF
491config I2C_CPM
492 tristate "Freescale CPM1 or CPM2 (MPC8xx/826x)"
62c19c9d 493 depends on CPM1 || CPM2
61045dbe
JF
494 help
495 This supports the use of the I2C interface on Freescale
496 processors with CPM1 or CPM2.
497
498 This driver can also be built as a module. If so, the module
499 will be called i2c-cpm.
500
f5b728a1
JD
501config I2C_DAVINCI
502 tristate "DaVinci I2C driver"
d654b548 503 depends on ARCH_DAVINCI || ARCH_KEYSTONE
f5b728a1
JD
504 help
505 Support for TI DaVinci I2C controller driver.
506
507 This driver can also be built as a module. If so, the module
508 will be called i2c-davinci.
509
510 Please note that this driver might be needed to bring up other
511 devices such as DaVinci NIC.
512 For details please see http://www.ti.com/davinci
513
e68bb91b
AL
514config I2C_DESIGNWARE_CORE
515 tristate
516
2373f6b9 517config I2C_DESIGNWARE_PLATFORM
6b2aac42 518 tristate "Synopsys DesignWare Platform"
e68bb91b 519 select I2C_DESIGNWARE_CORE
a445900c 520 depends on (ACPI && COMMON_CLK) || !ACPI
1ab52cf9
BS
521 help
522 If you say yes to this option, support will be included for the
9f3e065c 523 Synopsys DesignWare I2C adapter.
1ab52cf9
BS
524
525 This driver can also be built as a module. If so, the module
2373f6b9 526 will be called i2c-designware-platform.
1ab52cf9 527
9f3e065c
LO
528config I2C_DESIGNWARE_SLAVE
529 bool "Synopsys DesignWare Slave"
530 select I2C_SLAVE
531 depends on I2C_DESIGNWARE_PLATFORM
532 help
533 If you say yes to this option, support will be included for the
534 Synopsys DesignWare I2C slave adapter.
535
536 This is not a standalone module, this module compiles together with
537 i2c-designware-core.
538
fe20ff5c
DB
539config I2C_DESIGNWARE_PCI
540 tristate "Synopsys DesignWare PCI"
541 depends on PCI
e68bb91b 542 select I2C_DESIGNWARE_CORE
fe20ff5c
DB
543 help
544 If you say yes to this option, support will be included for the
545 Synopsys DesignWare I2C adapter. Only master mode is supported.
546
547 This driver can also be built as a module. If so, the module
548 will be called i2c-designware-pci.
1ab52cf9 549
894acb2f
DB
550config I2C_DESIGNWARE_BAYTRAIL
551 bool "Intel Baytrail I2C semaphore support"
f41021bb
JN
552 depends on ACPI
553 depends on (I2C_DESIGNWARE_PLATFORM=m && IOSF_MBI) || \
554 (I2C_DESIGNWARE_PLATFORM=y && IOSF_MBI=y)
894acb2f
DB
555 help
556 This driver enables managed host access to the PMIC I2C bus on select
557 Intel BayTrail platforms using the X-Powers AXP288 PMIC. It allows
558 the host to request uninterrupted access to the PMIC's I2C bus from
559 the platform firmware controlling it. You should say Y if running on
560 a BayTrail system using the AXP288.
561
4a7a0822
BS
562config I2C_DIGICOLOR
563 tristate "Conexant Digicolor I2C driver"
564 depends on ARCH_DIGICOLOR
565 help
566 Support for Conexant Digicolor SoCs (CX92755) I2C controller driver.
567
568 This driver can also be built as a module. If so, the module
569 will be called i2c-digicolor.
570
1b5b2371
UKK
571config I2C_EFM32
572 tristate "EFM32 I2C controller"
573 depends on ARCH_EFM32 || COMPILE_TEST
574 help
575 This driver supports the i2c block found in Energy Micro's EFM32
576 SoCs.
577
3e1b76be
J
578config I2C_EG20T
579 tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) I2C"
7a852b02 580 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
3e1b76be
J
581 help
582 This driver is for PCH(Platform controller Hub) I2C of EG20T which
583 is an IOH(Input/Output Hub) for x86 embedded processor.
584 This driver can access PCH I2C bus device.
585
586 This driver also can be used for LAPIS Semiconductor IOH(Input/
587 Output Hub), ML7213, ML7223 and ML7831.
588 ML7213 IOH is for IVI(In-Vehicle Infotainment) use, ML7223 IOH is
589 for MP(Media Phone) use and ML7831 IOH is for general purpose use.
590 ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
591 ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
592
5faf6e1f
WS
593config I2C_EMEV2
594 tristate "EMMA Mobile series I2C adapter"
595 depends on HAVE_CLK
b7d518e6 596 select I2C_SLAVE
5faf6e1f
WS
597 help
598 If you say yes to this option, support will be included for the
599 I2C interface on the Renesas Electronics EM/EV family of processors.
600
8a73cd4c
NKC
601config I2C_EXYNOS5
602 tristate "Exynos5 high-speed I2C driver"
2374a539 603 depends on ARCH_EXYNOS && OF
741d3589 604 default y
8a73cd4c 605 help
741d3589 606 High-speed I2C controller on Exynos5 based Samsung SoCs.
8a73cd4c 607
f5b728a1
JD
608config I2C_GPIO
609 tristate "GPIO-based bitbanging I2C"
7e5cd69a 610 depends on GPIOLIB || COMPILE_TEST
f5b728a1
JD
611 select I2C_ALGOBIT
612 help
613 This is a very simple bitbanging I2C driver utilizing the
614 arch-neutral GPIO API to control the SCL and SDA lines.
615
4ad48e6a
PM
616config I2C_HIGHLANDER
617 tristate "Highlander FPGA SMBus interface"
618 depends on SH_HIGHLANDER
619 help
620 If you say yes to this option, support will be included for
621 the SMBus interface located in the FPGA on various Highlander
622 boards, particularly the R0P7780LC0011RL and R0P7785LC0011RL
623 FPGAs. This is wholly unrelated to the SoC I2C.
624
625 This driver can also be built as a module. If so, the module
626 will be called i2c-highlander.
627
f5b728a1
JD
628config I2C_IBM_IIC
629 tristate "IBM PPC 4xx on-chip I2C interface"
630 depends on 4xx
631 help
632 Say Y here if you want to use IIC peripheral found on
633 embedded IBM PPC 4xx based systems.
634
635 This driver can also be built as a module. If so, the module
636 will be called i2c-ibm_iic.
637
27bce457
JH
638config I2C_IMG
639 tristate "Imagination Technologies I2C SCB Controller"
06205206 640 depends on MIPS || METAG || COMPILE_TEST
27bce457
JH
641 help
642 Say Y here if you want to use the IMG I2C SCB controller,
06205206 643 available on the TZ1090 and other IMG SoCs.
27bce457
JH
644
645 This driver can also be built as a module. If so, the module
646 will be called i2c-img-scb.
647
aa11e38c
DA
648config I2C_IMX
649 tristate "IMX I2C interface"
17791650 650 depends on ARCH_MXC || ARCH_LAYERSCAPE || COLDFIRE
aa11e38c
DA
651 help
652 Say Y here if you want to use the IIC bus controller on
17791650 653 the Freescale i.MX/MXC, Layerscape or ColdFire processors.
aa11e38c
DA
654
655 This driver can also be built as a module. If so, the module
656 will be called i2c-imx.
657
a55fa9d0
GP
658config I2C_IMX_LPI2C
659 tristate "IMX Low Power I2C interface"
660 depends on ARCH_MXC || COMPILE_TEST
661 help
662 Say Y here if you want to use the Low Power IIC bus controller
663 on the Freescale i.MX processors.
664
665 This driver can also be built as a module. If so, the module
666 will be called i2c-imx-lpi2c.
667
f5b728a1
JD
668config I2C_IOP3XX
669 tristate "Intel IOPx3xx and IXP4xx on-chip I2C interface"
670 depends on ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || ARCH_IOP13XX
671 help
672 Say Y here if you want to use the IIC bus controller on
673 the Intel IOPx3xx I/O Processors or IXP4xx Network Processors.
674
675 This driver can also be built as a module. If so, the module
676 will be called i2c-iop3xx.
677
ba92222e
ZLK
678config I2C_JZ4780
679 tristate "JZ4780 I2C controller interface support"
680 depends on MACH_JZ4780 || COMPILE_TEST
681 help
682 If you say yes to this option, support will be included for the
683 Ingenic JZ4780 I2C controller.
684
685 If you don't know what to do here, say N.
686
e0b9b7b0
KS
687config I2C_KEMPLD
688 tristate "Kontron COM I2C Controller"
689 depends on MFD_KEMPLD
690 help
691 This enables support for the I2C bus interface on some Kontron ETX
692 and COMexpress (ETXexpress) modules.
693
694 This driver can also be built as a module. If so, the module
695 will be called i2c-kempld.
696
3f9c37a0
JE
697config I2C_LPC2K
698 tristate "I2C bus support for NXP LPC2K/LPC178x/18xx/43xx"
699 depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
700 help
701 This driver supports the I2C interface found several NXP
702 devices including LPC2xxx, LPC178x/7x and LPC18xx/43xx.
703
704 This driver can also be built as a module. If so, the module
705 will be called i2c-lpc2k.
706
30021e37
BG
707config I2C_MESON
708 tristate "Amlogic Meson I2C controller"
91401783 709 depends on ARCH_MESON || COMPILE_TEST
30021e37
BG
710 help
711 If you say yes to this option, support will be included for the
712 I2C interface on the Amlogic Meson family of SoCs.
713
f5b728a1 714config I2C_MPC
f00d738f 715 tristate "MPC107/824x/85xx/512x/52xx/83xx/86xx"
0724d464 716 depends on PPC
f5b728a1
JD
717 help
718 If you say yes to this option, support will be included for the
f00d738f
WG
719 built-in I2C interface on the MPC107, Tsi107, MPC512x, MPC52xx,
720 MPC8240, MPC8245, MPC83xx, MPC85xx and MPC8641 family processors.
f5b728a1
JD
721
722 This driver can also be built as a module. If so, the module
723 will be called i2c-mpc.
724
ce38815d
XC
725config I2C_MT65XX
726 tristate "MediaTek I2C adapter"
727 depends on ARCH_MEDIATEK || COMPILE_TEST
fc0a1f03 728 depends on HAS_DMA
ce38815d
XC
729 help
730 This selects the MediaTek(R) Integrated Inter Circuit bus driver
731 for MT65xx and MT81xx.
732 If you want to use MediaTek(R) I2C interface, say Y or M here.
733 If unsure, say N.
734
f5b728a1
JD
735config I2C_MV64XXX
736 tristate "Marvell mv64xxx I2C Controller"
05872b80 737 depends on MV64X60 || PLAT_ORION || ARCH_SUNXI || ARCH_MVEBU
f5b728a1
JD
738 help
739 If you say yes to this option, support will be included for the
740 built-in I2C interface on the Marvell 64xxx line of host bridges.
3d66ac7d 741 This driver is also used for Allwinner SoCs I2C controllers.
f5b728a1
JD
742
743 This driver can also be built as a module. If so, the module
744 will be called i2c-mv64xxx.
745
a8da7fec
WS
746config I2C_MXS
747 tristate "Freescale i.MX28 I2C interface"
748 depends on SOC_IMX28
6b866c15 749 select STMP_DEVICE
a8da7fec
WS
750 help
751 Say Y here if you want to use the I2C bus controller on
752 the Freescale i.MX28 processors.
753
754 This driver can also be built as a module. If so, the module
755 will be called i2c-mxs.
756
3f9900f1 757config I2C_NOMADIK
758 tristate "ST-Ericsson Nomadik/Ux500 I2C Controller"
419408ed 759 depends on ARM_AMBA
3f9900f1 760 help
761 If you say yes to this option, support will be included for the
419408ed
AR
762 I2C interface from ST-Ericsson's Nomadik and Ux500 architectures,
763 as well as the STA2X11 PCIe I/O HUB.
3f9900f1 764
f5b728a1
JD
765config I2C_OCORES
766 tristate "OpenCores I2C Controller"
f5b728a1
JD
767 help
768 If you say yes to this option, support will be included for the
769 OpenCores I2C controller. For details see
770 http://www.opencores.org/projects.cgi/web/i2c/overview
771
772 This driver can also be built as a module. If so, the module
773 will be called i2c-ocores.
774
775config I2C_OMAP
776 tristate "OMAP I2C adapter"
777 depends on ARCH_OMAP
778 default y if MACH_OMAP_H3 || MACH_OMAP_OSK
779 help
780 If you say yes to this option, support will be included for the
781 I2C interface on the Texas Instruments OMAP1/2 family of processors.
782 Like OMAP1510/1610/1710/5912 and OMAP242x.
783 For details see http://www.ti.com/omap.
1da177e4 784
beb58aa3
OJ
785config I2C_PASEMI
786 tristate "PA Semi SMBus interface"
16538e6b 787 depends on PPC_PASEMI && PCI
beb58aa3
OJ
788 help
789 Supports the PA Semi PWRficient on-chip SMBus interfaces.
790
35bfc353
WS
791config I2C_PCA_PLATFORM
792 tristate "PCA9564/PCA9665 as platform device"
793 select I2C_ALGOPCA
794 default n
795 help
796 This driver supports a memory mapped Philips PCA9564/PCA9665
797 parallel bus to I2C bus controller.
798
799 This driver can also be built as a module. If so, the module
800 will be called i2c-pca-platform.
801
802config I2C_PMCMSP
803 tristate "PMC MSP I2C TWI Controller"
804 depends on PMC_MSP
805 help
806 This driver supports the PMC TWI controller on MSP devices.
807
808 This driver can also be built as module. If so, the module
809 will be called i2c-pmcmsp.
810
f5b728a1 811config I2C_PNX
c115167a 812 tristate "I2C bus support for Philips PNX and NXP LPC targets"
d684f05f 813 depends on ARCH_LPC32XX
f5b728a1
JD
814 help
815 This driver supports the Philips IP3204 I2C IP block master and/or
816 slave controller
817
818 This driver can also be built as a module. If so, the module
819 will be called i2c-pnx.
820
d10e4a66
G
821config I2C_PUV3
822 tristate "PKUnity v3 I2C bus support"
823 depends on UNICORE32 && ARCH_PUV3
824 select I2C_ALGOBIT
825 help
826 This driver supports the I2C IP inside the PKUnity-v3 SoC.
827 This I2C bus controller is under AMBA/AXI bus.
828
829 This driver can also be built as a module. If so, the module
830 will be called i2c-puv3.
831
f5b728a1 832config I2C_PXA
d7c46ddd 833 tristate "Intel PXA2XX I2C adapter"
294be03c 834 depends on ARCH_PXA || ARCH_MMP || ARCH_MVEBU || (X86_32 && PCI && OF)
f5b728a1
JD
835 help
836 If you have devices in the PXA I2C bus, say yes to this option.
837 This driver can also be built as a module. If so, the module
838 will be called i2c-pxa.
839
7e94dd15
SAS
840config I2C_PXA_PCI
841 def_bool I2C_PXA && X86_32 && PCI && OF
842
f5b728a1
JD
843config I2C_PXA_SLAVE
844 bool "Intel PXA2XX I2C Slave comms support"
7e94dd15 845 depends on I2C_PXA && !X86_32
f5b728a1
JD
846 help
847 Support I2C slave mode communications on the PXA I2C bus. This
848 is necessary for systems where the PXA may be a target on the
849 I2C bus.
850
bd1e9f7b
TT
851config I2C_QCOM_CCI
852 tristate "Qualcomm Camera Control Interface"
853 depends on ARCH_QCOM
854 help
855 If you say yes to this option, support will be included for the
856 built-in camera control interface on the Qualcomm SoCs.
857
858 This driver can also be built as a module. If so, the module
859 will be called i2c-qcom-cci.
860
10c5a842
BA
861config I2C_QUP
862 tristate "Qualcomm QUP based I2C controller"
863 depends on ARCH_QCOM
864 help
865 If you say yes to this option, support will be included for the
866 built-in I2C interface on the Qualcomm SoCs.
867
868 This driver can also be built as a module. If so, the module
869 will be called i2c-qup.
870
310c18a4
WS
871config I2C_RIIC
872 tristate "Renesas RIIC adapter"
07316149 873 depends on ARCH_RENESAS || COMPILE_TEST
310c18a4
WS
874 help
875 If you say yes to this option, support will be included for the
876 Renesas RIIC I2C interface.
877
878 This driver can also be built as a module. If so, the module
879 will be called i2c-riic.
880
c41aa3ce
MS
881config I2C_RK3X
882 tristate "Rockchip RK3xxx I2C adapter"
80f1774f 883 depends on OF && COMMON_CLK
c41aa3ce
MS
884 help
885 Say Y here to include support for the I2C adapter in Rockchip RK3xxx
886 SoCs.
887
888 This driver can also be built as a module. If so, the module will
889 be called i2c-rk3x.
890
4b623926
NKC
891config HAVE_S3C2410_I2C
892 bool
893 help
894 This will include I2C support for Samsung SoCs. If you want to
895 include I2C support for any machine, kindly select this in the
896 respective Kconfig file.
897
1da177e4
LT
898config I2C_S3C2410
899 tristate "S3C2410 I2C Driver"
4b623926 900 depends on HAVE_S3C2410_I2C
1da177e4
LT
901 help
902 Say Y here to include support for I2C controller in the
4b623926 903 Samsung SoCs.
1da177e4 904
f5b728a1
JD
905config I2C_SH7760
906 tristate "Renesas SH7760 I2C Controller"
907 depends on CPU_SUBTYPE_SH7760
1da177e4 908 help
f5b728a1
JD
909 This driver supports the 2 I2C interfaces on the Renesas SH7760.
910
911 This driver can also be built as a module. If so, the module
912 will be called i2c-sh7760.
913
914config I2C_SH_MOBILE
915 tristate "SuperH Mobile I2C Controller"
f16ea4f0 916 depends on HAS_DMA
17f80487 917 depends on ARCH_SHMOBILE || ARCH_RENESAS || COMPILE_TEST
f5b728a1
JD
918 help
919 If you say yes to this option, support will be included for the
920 built-in I2C interface on the Renesas SH-Mobile processor.
921
922 This driver can also be built as a module. If so, the module
923 will be called i2c-sh_mobile.
1da177e4 924
bcda9f1e
BD
925config I2C_SIMTEC
926 tristate "Simtec Generic I2C interface"
927 select I2C_ALGOBIT
928 help
01dd2fbf 929 If you say yes to this option, support will be included for
bcda9f1e
BD
930 the Simtec Generic I2C interface. This driver is for the
931 simple I2C bus used on newer Simtec products for general
932 I2C, such as DDC on the Simtec BBD2016A.
933
01dd2fbf 934 This driver can also be built as a module. If so, the module
bcda9f1e
BD
935 will be called i2c-simtec.
936
979b907f
ZS
937config I2C_SIRF
938 tristate "CSR SiRFprimaII I2C interface"
c5dece37 939 depends on ARCH_SIRF
979b907f
ZS
940 help
941 If you say yes to this option, support will be included for the
942 CSR SiRFprimaII I2C interface.
943
944 This driver can also be built as a module. If so, the module
945 will be called i2c-sirf.
946
8b9ec071
BW
947config I2C_SPRD
948 bool "Spreadtrum I2C interface"
8ce906c1 949 depends on I2C=y && ARCH_SPRD
8b9ec071
BW
950 help
951 If you say yes to this option, support will be included for the
952 Spreadtrum I2C interface.
953
85b4fab2
MC
954config I2C_ST
955 tristate "STMicroelectronics SSC I2C support"
956 depends on ARCH_STI
957 help
958 Enable this option to add support for STMicroelectronics SoCs
959 hardware SSC (Synchronous Serial Controller) as an I2C controller.
960
961 This driver can also be built as module. If so, the module
962 will be called i2c-st.
963
62817fc8
CM
964config I2C_STM32F4
965 tristate "STMicroelectronics STM32F4 I2C support"
966 depends on ARCH_STM32 || COMPILE_TEST
967 help
968 Enable this option to add support for STM32 I2C controller embedded
969 in STM32F4 SoCs.
970
971 This driver can also be built as module. If so, the module
972 will be called i2c-stm32f4.
973
aeb068c5
PYM
974config I2C_STM32F7
975 tristate "STMicroelectronics STM32F7 I2C support"
976 depends on ARCH_STM32 || COMPILE_TEST
977 help
978 Enable this option to add support for STM32 I2C controller embedded
979 in STM32F7 SoCs.
980
981 This driver can also be built as module. If so, the module
982 will be called i2c-stm32f7.
983
18904c0e
LW
984config I2C_STU300
985 tristate "ST Microelectronics DDC I2C interface"
4eaad8ad 986 depends on MACH_U300
18904c0e
LW
987 default y if MACH_U300
988 help
989 If you say yes to this option, support will be included for the
990 I2C interface from ST Microelectronics simply called "DDC I2C"
991 supporting both I2C and DDC, used in e.g. the U300 series
992 mobile platforms.
993
994 This driver can also be built as a module. If so, the module
995 will be called i2c-stu300.
996
3e833490
BB
997config I2C_SUN6I_P2WI
998 tristate "Allwinner sun6i internal P2WI controller"
999 depends on RESET_CONTROLLER
1000 depends on MACH_SUN6I || COMPILE_TEST
1001 help
1002 If you say yes to this option, support will be included for the
1003 P2WI (Push/Pull 2 Wire Interface) controller embedded in some sunxi
1004 SOCs.
1005 The P2WI looks like an SMBus controller (which supports only byte
1006 accesses), except that it only supports one slave device.
1007 This interface is used to connect to specific PMIC devices (like the
1008 AXP221).
1009
db811ca0
CC
1010config I2C_TEGRA
1011 tristate "NVIDIA Tegra internal I2C controller"
1012 depends on ARCH_TEGRA
1013 help
1014 If you say yes to this option, support will be included for the
1015 I2C controller embedded in NVIDIA Tegra SOCs
1016
0297ffa6
SSM
1017config I2C_TEGRA_BPMP
1018 tristate "NVIDIA Tegra BPMP I2C controller"
1019 depends on TEGRA_BPMP
1ae5214a 1020 default y
0297ffa6
SSM
1021 help
1022 If you say yes to this option, support will be included for the I2C
1023 controller embedded in NVIDIA Tegra SoCs accessed via the BPMP.
1024
1025 This I2C driver is a 'virtual' I2C driver. The real driver is part
1026 of the BPMP firmware, and this driver merely communicates with that
1027 real driver.
1028
dd6fd4a3
MY
1029config I2C_UNIPHIER
1030 tristate "UniPhier FIFO-less I2C controller"
61c18aeb 1031 depends on ARCH_UNIPHIER || COMPILE_TEST
dd6fd4a3
MY
1032 help
1033 If you say yes to this option, support will be included for
1034 the UniPhier FIFO-less I2C interface embedded in PH1-LD4, PH1-sLD8,
1035 or older UniPhier SoCs.
1036
6a62974b
MY
1037config I2C_UNIPHIER_F
1038 tristate "UniPhier FIFO-builtin I2C controller"
61c18aeb 1039 depends on ARCH_UNIPHIER || COMPILE_TEST
6a62974b
MY
1040 help
1041 If you say yes to this option, support will be included for
1042 the UniPhier FIFO-builtin I2C interface embedded in PH1-Pro4,
1043 PH1-Pro5, or newer UniPhier SoCs.
1044
f5b728a1
JD
1045config I2C_VERSATILE
1046 tristate "ARM Versatile/Realview I2C bus support"
5871a153 1047 depends on ARCH_MPS2 || ARCH_VERSATILE || ARCH_REALVIEW || ARCH_VEXPRESS || COMPILE_TEST
1da177e4
LT
1048 select I2C_ALGOBIT
1049 help
f5b728a1
JD
1050 Say yes if you want to support the I2C serial bus on ARMs Versatile
1051 range of platforms.
1da177e4 1052
f5b728a1
JD
1053 This driver can also be built as a module. If so, the module
1054 will be called i2c-versatile.
1da177e4 1055
560746eb
TP
1056config I2C_WMT
1057 tristate "Wondermedia WM8xxx SoC I2C bus support"
1058 depends on ARCH_VT8500
1059 help
1060 Say yes if you want to support the I2C bus on Wondermedia 8xxx-series
1061 SoCs.
1062
1063 This driver can also be built as a module. If so, the module will be
1064 called i2c-wmt.
1065
85660f43
RB
1066config I2C_OCTEON
1067 tristate "Cavium OCTEON I2C bus support"
9ddebc46 1068 depends on CAVIUM_OCTEON_SOC
85660f43
RB
1069 help
1070 Say yes if you want to support the I2C serial bus on Cavium
1071 OCTEON SOC.
1072
1073 This driver can also be built as a module. If so, the module
1074 will be called i2c-octeon.
1075
22d40209
JG
1076config I2C_THUNDERX
1077 tristate "Cavium ThunderX I2C bus support"
1078 depends on 64BIT && PCI && (ARM64 || COMPILE_TEST)
1e586671 1079 select I2C_SMBUS
22d40209
JG
1080 help
1081 Say yes if you want to support the I2C serial bus on Cavium
1082 ThunderX SOC.
1083
1084 This driver can also be built as a module. If so, the module
1085 will be called i2c-thunderx.
1086
e1d5b659
RR
1087config I2C_XILINX
1088 tristate "Xilinx I2C Controller"
417e86ce 1089 depends on HAS_IOMEM
e1d5b659
RR
1090 help
1091 If you say yes to this option, support will be included for the
1092 Xilinx I2C controller.
1093
1094 This driver can also be built as a module. If so, the module
1095 will be called xilinx_i2c.
1096
401c3434 1097config I2C_XLR
75d31c23 1098 tristate "Netlogic XLR and Sigma Designs I2C support"
e3879e4f 1099 depends on CPU_XLR || ARCH_TANGO
401c3434
GR
1100 help
1101 This driver enables support for the on-chip I2C interface of
75d31c23 1102 the Netlogic XLR/XLS MIPS processors and Sigma Designs SOCs.
401c3434
GR
1103
1104 This driver can also be built as a module. If so, the module
1105 will be called i2c-xlr.
1106
2bbd681b
SSB
1107config I2C_XLP9XX
1108 tristate "XLP9XX I2C support"
4165bd4b 1109 depends on CPU_XLP || ARCH_THUNDER2 || COMPILE_TEST
2bbd681b
SSB
1110 help
1111 This driver enables support for the on-chip I2C interface of
8574ad78 1112 the Broadcom XLP9xx/XLP5xx MIPS and Vulcan ARM64 processors.
2bbd681b
SSB
1113
1114 This driver can also be built as a module. If so, the module will
1115 be called i2c-xlp9xx.
1116
6ccbe607
KM
1117config I2C_RCAR
1118 tristate "Renesas R-Car I2C Controller"
79439d83 1119 depends on HAS_DMA
07316149 1120 depends on ARCH_RENESAS || COMPILE_TEST
d5fd120e 1121 select I2C_SLAVE
6ccbe607
KM
1122 help
1123 If you say yes to this option, support will be included for the
1124 R-Car I2C controller.
1125
1126 This driver can also be built as a module. If so, the module
1127 will be called i2c-rcar.
1128
f5b728a1 1129comment "External I2C/SMBus adapter drivers"
11de70bd 1130
335d7c58
GR
1131config I2C_DIOLAN_U2C
1132 tristate "Diolan U2C-12 USB adapter"
1133 depends on USB
1134 help
1135 If you say yes to this option, support will be included for Diolan
1136 U2C-12, a USB to I2C interface.
1137
1138 This driver can also be built as a module. If so, the module
1139 will be called i2c-diolan-u2c.
1140
db23e500
LP
1141config I2C_DLN2
1142 tristate "Diolan DLN-2 USB I2C adapter"
1143 depends on MFD_DLN2
1144 help
1145 If you say yes to this option, support will be included for Diolan
1146 DLN2, a USB to I2C interface.
1147
1148 This driver can also be built as a module. If so, the module
1149 will be called i2c-dln2.
1150
f5b728a1
JD
1151config I2C_PARPORT
1152 tristate "Parallel port adapter"
0244ad00 1153 depends on PARPORT
f5b728a1 1154 select I2C_ALGOBIT
35859254 1155 select I2C_SMBUS
1da177e4 1156 help
f5b728a1
JD
1157 This supports parallel port I2C adapters such as the ones made by
1158 Philips or Velleman, Analog Devices evaluation boards, and more.
1159 Basically any adapter using the parallel port as an I2C bus with
1160 no extra chipset is supported by this driver, or could be.
1da177e4 1161
f5b728a1
JD
1162 This driver is a replacement for (and was inspired by) an older
1163 driver named i2c-philips-par. The new driver supports more devices,
1164 and makes it easier to add support for new devices.
1da177e4 1165
f5b728a1
JD
1166 An adapter type parameter is now mandatory. Please read the file
1167 Documentation/i2c/busses/i2c-parport for details.
1da177e4 1168
f5b728a1
JD
1169 Another driver exists, named i2c-parport-light, which doesn't depend
1170 on the parport driver. This is meant for embedded systems. Don't say
1171 Y here if you intend to say Y or M there.
1da177e4 1172
4c03f68f 1173 This support is also available as a module. If so, the module
f5b728a1 1174 will be called i2c-parport.
1da177e4 1175
f5b728a1
JD
1176config I2C_PARPORT_LIGHT
1177 tristate "Parallel port adapter (light)"
1178 select I2C_ALGOBIT
927ab2f8 1179 select I2C_SMBUS
1da177e4 1180 help
f5b728a1
JD
1181 This supports parallel port I2C adapters such as the ones made by
1182 Philips or Velleman, Analog Devices evaluation boards, and more.
1183 Basically any adapter using the parallel port as an I2C bus with
1184 no extra chipset is supported by this driver, or could be.
1da177e4 1185
f5b728a1
JD
1186 This driver is a light version of i2c-parport. It doesn't depend
1187 on the parport driver, and uses direct I/O access instead. This
1188 might be preferred on embedded systems where wasting memory for
1189 the clean but heavy parport handling is not an option. The
1190 drawback is a reduced portability and the impossibility to
1191 daisy-chain other parallel port devices.
1da177e4 1192
f5b728a1
JD
1193 Don't say Y here if you said Y or M to i2c-parport. Saying M to
1194 both is possible but both modules should not be loaded at the same
1195 time.
1da177e4 1196
f5b728a1
JD
1197 This support is also available as a module. If so, the module
1198 will be called i2c-parport-light.
1da177e4 1199
83e53a8f
AL
1200config I2C_ROBOTFUZZ_OSIF
1201 tristate "RobotFuzz Open Source InterFace USB adapter"
1202 depends on USB
1203 help
1204 If you say yes to this option, support will be included for the
1205 RobotFuzz Open Source InterFace USB to I2C interface.
1206
1207 This driver can also be built as a module. If so, the module
1208 will be called i2c-osif.
1209
b9cdad74
JD
1210config I2C_TAOS_EVM
1211 tristate "TAOS evaluation module"
21eaab6d 1212 depends on TTY
b9cdad74
JD
1213 select SERIO
1214 select SERIO_SERPORT
1215 default n
1216 help
1217 This supports TAOS evaluation modules on serial port. In order to
1218 use this driver, you will need the inputattach tool, which is part
1219 of the input-utils package.
1220
1221 If unsure, say N.
1222
1223 This support is also available as a module. If so, the module
1224 will be called i2c-taos-evm.
1225
e8c76eed 1226config I2C_TINY_USB
f5b728a1 1227 tristate "Tiny-USB adapter"
e8c76eed
TH
1228 depends on USB
1229 help
1230 If you say yes to this option, support will be included for the
1231 i2c-tiny-usb, a simple do-it-yourself USB to I2C interface. See
1232 http://www.harbaum.org/till/i2c_tiny_usb for hardware details.
1233
1234 This driver can also be built as a module. If so, the module
1235 will be called i2c-tiny-usb.
1236
174a13aa
LP
1237config I2C_VIPERBOARD
1238 tristate "Viperboard I2C master support"
1239 depends on MFD_VIPERBOARD && USB
1240 help
1241 Say yes here to access the I2C part of the Nano River
1242 Technologies Viperboard as I2C master.
1243 See viperboard API specification and Nano
1244 River Tech's viperboard.h for detailed meaning
1245 of the module parameters.
1246
f5b728a1 1247comment "Other I2C/SMBus bus drivers"
6b65cd74 1248
8d91cbad 1249config I2C_ACORN
2a9915c8 1250 tristate "Acorn IOC/IOMD I2C bus support"
16538e6b 1251 depends on ARCH_ACORN
8d91cbad
RK
1252 default y
1253 select I2C_ALGOBIT
1254 help
1255 Say yes if you want to support the I2C bus on Acorn platforms.
1256
1257 If you don't know, say Y.
1258
f5b728a1
JD
1259config I2C_ELEKTOR
1260 tristate "Elektor ISA card"
ce816fa8 1261 depends on ISA && HAS_IOPORT_MAP && BROKEN_ON_SMP
f5b728a1 1262 select I2C_ALGOPCF
1da177e4 1263 help
f5b728a1
JD
1264 This supports the PCF8584 ISA bus I2C adapter. Say Y if you own
1265 such an adapter.
1da177e4 1266
f5b728a1
JD
1267 This support is also available as a module. If so, the module
1268 will be called i2c-elektor.
1da177e4 1269
6bec23bf
VP
1270config I2C_MLXCPLD
1271 tristate "Mellanox I2C driver"
1272 depends on X86_64
1273 help
1274 This exposes the Mellanox platform I2C busses to the linux I2C layer
1275 for X86 based systems.
1276 Controller is implemented as CPLD logic.
1277
1278 This driver can also be built as a module. If so, the module will be
1279 called as i2c-mlxcpld.
1280
1da177e4 1281config I2C_PCA_ISA
eff9ec95 1282 tristate "PCA9564/PCA9665 on an ISA bus"
16538e6b 1283 depends on ISA
1da177e4 1284 select I2C_ALGOPCA
aee62305 1285 default n
1da177e4 1286 help
eff9ec95 1287 This driver supports ISA boards using the Philips PCA9564/PCA9665
244fbbb8 1288 parallel bus to I2C bus controller.
4c03f68f 1289
1da177e4
LT
1290 This driver can also be built as a module. If so, the module
1291 will be called i2c-pca-isa.
1292
aee62305
JD
1293 This device is almost undetectable and using this driver on a
1294 system which doesn't have this device will result in long
1295 delays when I2C/SMBus chip drivers are loaded (e.g. at boot
1296 time). If unsure, say N.
1297
f5b728a1
JD
1298config I2C_SIBYTE
1299 tristate "SiByte SMBus interface"
1300 depends on SIBYTE_SB1xxx_SOC
a26c20b1 1301 help
f5b728a1 1302 Supports the SiByte SOC on-chip I2C interfaces (2 channels).
a26c20b1 1303
9d230c9e
DA
1304config I2C_CROS_EC_TUNNEL
1305 tristate "ChromeOS EC tunnel I2C bus"
480b141a 1306 depends on MFD_CROS_EC
9d230c9e
DA
1307 help
1308 If you say yes here you get an I2C bus that will tunnel i2c commands
1309 through to the other side of the ChromeOS EC to the i2c bus
1310 connected there. This will work whatever the interface used to
1311 talk to the EC (SPI, I2C or LPC).
1312
f6505fba
FK
1313config I2C_XGENE_SLIMPRO
1314 tristate "APM X-Gene SoC I2C SLIMpro devices support"
1315 depends on ARCH_XGENE && MAILBOX
1316 help
1317 Enable I2C bus access using the APM X-Gene SoC SLIMpro
1318 co-processor. The I2C device access the I2C bus via the X-Gene
1319 to SLIMpro (On chip coprocessor) mailbox mechanism.
1320 If unsure, say N.
1321
f5b728a1
JD
1322config SCx200_ACB
1323 tristate "Geode ACCESS.bus support"
1324 depends on X86_32 && PCI
1325 help
1326 Enable the use of the ACCESS.bus controllers on the Geode SCx200 and
1327 SC1100 processors and the CS5535 and CS5536 Geode companion devices.
1328
1329 If you don't know what to do here, say N.
1330
1331 This support is also available as a module. If so, the module
1332 will be called scx200_acb.
da672773 1333
47083450
NG
1334config I2C_OPAL
1335 tristate "IBM OPAL I2C driver"
1336 depends on PPC_POWERNV
1337 default y
1338 help
1339 This exposes the PowerNV platform i2c busses to the linux i2c layer,
1340 the driver is based on the OPAL interfaces.
1341
1342 This driver can also be built as a module. If so, the module will be
1343 called as i2c-opal.
1344
9615a01f
BX
1345config I2C_ZX2967
1346 tristate "ZTE ZX2967 I2C support"
86766a3e 1347 depends on ARCH_ZX
9615a01f
BX
1348 default y
1349 help
1350 Selecting this option will add ZX2967 I2C driver.
1351 This driver can also be built as a module. If so, the module will be
1352 called i2c-zx2967.
1353
1da177e4 1354endmenu