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