xref: /openbmc/linux/drivers/i2c/busses/Kconfig (revision 95e9fd10)
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/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
153config 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
163config 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
176config 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
186config 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
196config 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
214config 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
225config 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
246if ACPI
247
248comment "ACPI drivers"
249
250config 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
260endif # ACPI
261
262comment "Mac SMBus host controller drivers"
263	depends on PPC_CHRP || PPC_PMAC
264
265config 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
277config 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
289comment "I2C system bus drivers (mostly embedded / system-on-chip)"
290
291config 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
306config 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
316config 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
326config 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
334config 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
344config 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
357config 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
367config 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
377config 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
392config 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
400config 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
412config 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
422config 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
432config 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
442config 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
452config 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
463config 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
473config 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
484config 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
492config 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
499config 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
510config 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
520config 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
526config 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
537config 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
546config 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
556config 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
567config 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
575config I2C_PXA_PCI
576	def_bool I2C_PXA && X86_32 && PCI && OF
577
578config 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
586config 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
593config 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
600config 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
610config 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
619config 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
629config 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
641config 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
651config 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
664config 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
671config 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
682config 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
692config 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
702config 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
712comment "External I2C/SMBus adapter drivers"
713
714config 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
724config 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
749config 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
773config 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
789config 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
800comment "Other I2C/SMBus bus drivers"
801
802config 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
812config 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
823config 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
840config 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
846config 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
859config 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
874config 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
882config 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
890config 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
902endmenu
903