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