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