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