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