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