xref: /openbmc/linux/drivers/i2c/busses/Kconfig (revision 606d099c)
1#
2# Sensor device configuration
3#
4
5menu "I2C Hardware Bus support"
6	depends on I2C
7
8config I2C_ALI1535
9	tristate "ALI 1535"
10	depends on I2C && PCI
11	help
12	  If you say yes to this option, support will be included for the SMB
13	  Host controller on Acer Labs Inc. (ALI) M1535 South Bridges.  The SMB
14	  controller is part of the 7101 device, which is an ACPI-compliant
15	  Power Management Unit (PMU).
16
17	  This driver can also be built as a module.  If so, the module
18	  will be called i2c-ali1535.
19
20config I2C_ALI1563
21	tristate "ALI 1563"
22	depends on I2C && PCI && EXPERIMENTAL
23	help
24	  If you say yes to this option, support will be included for the SMB
25	  Host controller on Acer Labs Inc. (ALI) M1563 South Bridges.  The SMB
26	  controller is part of the 7101 device, which is an ACPI-compliant
27	  Power Management Unit (PMU).
28
29	  This driver can also be built as a module.  If so, the module
30	  will be called i2c-ali1563.
31
32config I2C_ALI15X3
33	tristate "ALI 15x3"
34	depends on I2C && PCI
35	help
36	  If you say yes to this option, support will be included for the
37	  Acer Labs Inc. (ALI) M1514 and M1543 motherboard I2C interfaces.
38
39	  This driver can also be built as a module.  If so, the module
40	  will be called i2c-ali15x3.
41
42config I2C_AMD756
43	tristate "AMD 756/766/768/8111 and nVidia nForce"
44	depends on I2C && PCI
45	help
46	  If you say yes to this option, support will be included for the AMD
47	  756/766/768 mainboard I2C interfaces.  The driver also includes
48	  support for the first (SMBus 1.0) I2C interface of the AMD 8111 and
49	  the nVidia nForce I2C interface.
50
51	  This driver can also be built as a module.  If so, the module
52	  will be called i2c-amd756.
53
54config I2C_AMD756_S4882
55	tristate "SMBus multiplexing on the Tyan S4882"
56	depends on I2C_AMD756 && EXPERIMENTAL
57	help
58	  Enabling this option will add specific SMBus support for the Tyan
59	  S4882 motherboard.  On this 4-CPU board, the SMBus is multiplexed
60	  over 8 different channels, where the various memory module EEPROMs
61	  and temperature sensors live.  Saying yes here will give you access
62	  to these in addition to the trunk.
63
64	  This driver can also be built as a module.  If so, the module
65	  will be called i2c-amd756-s4882.
66
67config I2C_AMD8111
68	tristate "AMD 8111"
69	depends on I2C && PCI
70	help
71	  If you say yes to this option, support will be included for the
72	  second (SMBus 2.0) AMD 8111 mainboard I2C interface.
73
74	  This driver can also be built as a module.  If so, the module
75	  will be called i2c-amd8111.
76
77config I2C_AU1550
78	tristate "Au1550/Au1200 SMBus interface"
79	depends on I2C && (SOC_AU1550 || SOC_AU1200)
80	help
81	  If you say yes to this option, support will be included for the
82	  Au1550 and Au1200 SMBus interface.
83
84	  This driver can also be built as a module.  If so, the module
85	  will be called i2c-au1550.
86
87config I2C_ELEKTOR
88	tristate "Elektor ISA card"
89	depends on I2C && ISA && BROKEN_ON_SMP
90	select I2C_ALGOPCF
91	help
92	  This supports the PCF8584 ISA bus I2C adapter.  Say Y if you own
93	  such an adapter.
94
95	  This support is also available as a module.  If so, the module
96	  will be called i2c-elektor.
97
98config I2C_HYDRA
99	tristate "CHRP Apple Hydra Mac I/O I2C interface"
100	depends on I2C && PCI && PPC_CHRP && EXPERIMENTAL
101	select I2C_ALGOBIT
102	help
103	  This supports the use of the I2C interface in the Apple Hydra Mac
104	  I/O chip on some CHRP machines (e.g. the LongTrail).  Say Y if you
105	  have such a machine.
106
107	  This support is also available as a module.  If so, the module
108	  will be called i2c-hydra.
109
110config I2C_I801
111	tristate "Intel 82801 (ICH)"
112	depends on I2C && PCI
113	help
114	  If you say yes to this option, support will be included for the Intel
115	  801 family of mainboard I2C interfaces.  Specifically, the following
116	  versions of the chipset are supported:
117	    82801AA
118	    82801AB
119	    82801BA
120	    82801CA/CAM
121	    82801DB
122	    82801EB/ER (ICH5/ICH5R)
123	    6300ESB
124	    ICH6
125	    ICH7
126	    ESB2
127	    ICH8
128	    ICH9
129
130	  This driver can also be built as a module.  If so, the module
131	  will be called i2c-i801.
132
133config I2C_I810
134	tristate "Intel 810/815"
135	depends on I2C && PCI
136	select I2C_ALGOBIT
137	help
138	  If you say yes to this option, support will be included for the Intel
139	  810/815 family of mainboard I2C interfaces.  Specifically, the
140	  following versions of the chipset are supported:
141	    i810AA
142	    i810AB
143	    i810E
144	    i815
145	    i845G
146
147	  This driver can also be built as a module.  If so, the module
148	  will be called i2c-i810.
149
150config I2C_PXA
151	tristate "Intel PXA2XX I2C adapter (EXPERIMENTAL)"
152	depends on I2C && EXPERIMENTAL && ARCH_PXA
153	help
154	  If you have devices in the PXA I2C bus, say yes to this option.
155	  This driver can also be built as a module.  If so, the module
156	  will be called i2c-pxa.
157
158config I2C_PXA_SLAVE
159	bool "Intel PXA2XX I2C Slave comms support"
160	depends on I2C_PXA
161	help
162	  Support I2C slave mode communications on the PXA I2C bus.  This
163	  is necessary for systems where the PXA may be a target on the
164	  I2C bus.
165
166config I2C_PIIX4
167	tristate "Intel PIIX4 and compatible (ATI/Serverworks/Broadcom/SMSC)"
168	depends on I2C && PCI
169	help
170	  If you say yes to this option, support will be included for the Intel
171	  PIIX4 family of mainboard I2C interfaces.  Specifically, the following
172	  versions of the chipset are supported (note that Serverworks is part
173	  of Broadcom):
174	    Intel PIIX4
175	    Intel 440MX
176	    ATI IXP200
177	    ATI IXP300
178	    ATI IXP400
179	    Serverworks OSB4
180	    Serverworks CSB5
181	    Serverworks CSB6
182	    Serverworks HT-1000
183	    SMSC Victory66
184
185	  This driver can also be built as a module.  If so, the module
186	  will be called i2c-piix4.
187
188config I2C_IBM_IIC
189	tristate "IBM PPC 4xx on-chip I2C interface"
190	depends on IBM_OCP && I2C
191	help
192	  Say Y here if you want to use IIC peripheral found on
193	  embedded IBM PPC 4xx based systems.
194
195	  This driver can also be built as a module.  If so, the module
196	  will be called i2c-ibm_iic.
197
198config I2C_IOP3XX
199	tristate "Intel IOPx3xx and IXP4xx on-chip I2C interface"
200	depends on (ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || ARCH_IOP13XX) && I2C
201	help
202	  Say Y here if you want to use the IIC bus controller on
203	  the Intel IOPx3xx I/O Processors or IXP4xx Network Processors.
204
205	  This driver can also be built as a module.  If so, the module
206	  will be called i2c-iop3xx.
207
208config I2C_ISA
209	tristate
210	depends on I2C
211
212config I2C_ITE
213	tristate "ITE I2C Adapter"
214	depends on I2C && MIPS_ITE8172
215	select I2C_ALGOITE
216	help
217	  This supports the ITE8172 I2C peripheral found on some MIPS
218	  systems. Say Y if you have one of these. You should also say Y for
219	  the ITE I2C driver algorithm support above.
220
221	  This support is also available as a module.  If so, the module
222	  will be called i2c-ite.
223
224config I2C_IXP4XX
225	tristate "IXP4xx GPIO-Based I2C Interface"
226	depends on I2C && ARCH_IXP4XX
227	select I2C_ALGOBIT
228	help
229	  Say Y here if you have an Intel IXP4xx(420,421,422,425) based
230	  system and are using GPIO lines for an I2C bus.
231
232	  This support is also available as a module. If so, the module
233	  will be called i2c-ixp4xx.
234
235config I2C_IXP2000
236	tristate "IXP2000 GPIO-Based I2C Interface"
237	depends on I2C && ARCH_IXP2000
238	select I2C_ALGOBIT
239	help
240	  Say Y here if you have an Intel IXP2000(2400, 2800, 2850) based
241	  system and are using GPIO lines for an I2C bus.
242
243	  This support is also available as a module. If so, the module
244	  will be called i2c-ixp2000.
245
246config I2C_POWERMAC
247	tristate "Powermac I2C interface"
248	depends on I2C && PPC_PMAC
249	default y
250	help
251	  This exposes the various PowerMac i2c interfaces to the linux i2c
252	  layer and to userland. It is used by various drivers on the powemac
253	  platform, thus should generally be enabled.
254
255	  This support is also available as a module.  If so, the module
256	  will be called i2c-powermac.
257
258config I2C_MPC
259	tristate "MPC107/824x/85xx/52xx/86xx"
260	depends on I2C && PPC32
261	help
262	  If you say yes to this option, support will be included for the
263	  built-in I2C interface on the MPC107/Tsi107/MPC8240/MPC8245 and
264	  MPC85xx/MPC8641 family processors. The driver may also work on 52xx
265	  family processors, though interrupts are known not to work.
266
267	  This driver can also be built as a module.  If so, the module
268	  will be called i2c-mpc.
269
270config I2C_NFORCE2
271	tristate "Nvidia nForce2, nForce3 and nForce4"
272	depends on I2C && PCI
273	help
274	  If you say yes to this option, support will be included for the Nvidia
275	  nForce2, nForce3 and nForce4 families of mainboard I2C interfaces.
276
277	  This driver can also be built as a module.  If so, the module
278	  will be called i2c-nforce2.
279
280config I2C_OCORES
281	tristate "OpenCores I2C Controller"
282	depends on I2C && EXPERIMENTAL
283	help
284	  If you say yes to this option, support will be included for the
285	  OpenCores I2C controller. For details see
286	  http://www.opencores.org/projects.cgi/web/i2c/overview
287
288	  This driver can also be built as a module.  If so, the module
289	  will be called i2c-ocores.
290
291config I2C_OMAP
292	tristate "OMAP I2C adapter"
293	depends on I2C && ARCH_OMAP
294	default y if MACH_OMAP_H3 || MACH_OMAP_OSK
295	help
296	  If you say yes to this option, support will be included for the
297	  I2C interface on the Texas Instruments OMAP1/2 family of processors.
298	  Like OMAP1510/1610/1710/5912 and OMAP242x.
299	  For details see http://www.ti.com/omap.
300
301config I2C_PARPORT
302	tristate "Parallel port adapter"
303	depends on I2C && PARPORT
304	select I2C_ALGOBIT
305	help
306	  This supports parallel port I2C adapters such as the ones made by
307	  Philips or Velleman, Analog Devices evaluation boards, and more.
308	  Basically any adapter using the parallel port as an I2C bus with
309	  no extra chipset is supported by this driver, or could be.
310
311	  This driver is a replacement for (and was inspired by) an older
312	  driver named i2c-philips-par.  The new driver supports more devices,
313	  and makes it easier to add support for new devices.
314
315	  An adapter type parameter is now mandatory.  Please read the file
316	  Documentation/i2c/busses/i2c-parport for details.
317
318	  Another driver exists, named i2c-parport-light, which doesn't depend
319	  on the parport driver.  This is meant for embedded systems. Don't say
320	  Y here if you intend to say Y or M there.
321
322	  This support is also available as a module.  If so, the module
323	  will be called i2c-parport.
324
325config I2C_PARPORT_LIGHT
326	tristate "Parallel port adapter (light)"
327	depends on I2C
328	select I2C_ALGOBIT
329	help
330	  This supports parallel port I2C adapters such as the ones made by
331	  Philips or Velleman, Analog Devices evaluation boards, and more.
332	  Basically any adapter using the parallel port as an I2C bus with
333	  no extra chipset is supported by this driver, or could be.
334
335	  This driver is a light version of i2c-parport.  It doesn't depend
336	  on the parport driver, and uses direct I/O access instead.  This
337	  might be preferred on embedded systems where wasting memory for
338	  the clean but heavy parport handling is not an option.  The
339	  drawback is a reduced portability and the impossibility to
340	  daisy-chain other parallel port devices.
341
342	  Don't say Y here if you said Y or M to i2c-parport.  Saying M to
343	  both is possible but both modules should not be loaded at the same
344	  time.
345
346	  This support is also available as a module.  If so, the module
347	  will be called i2c-parport-light.
348
349config I2C_PROSAVAGE
350	tristate "S3/VIA (Pro)Savage"
351	depends on I2C && PCI
352	select I2C_ALGOBIT
353	help
354	  If you say yes to this option, support will be included for the
355	  I2C bus and DDC bus of the S3VIA embedded Savage4 and ProSavage8
356	  graphics processors.
357	  chipsets supported:
358	    S3/VIA KM266/VT8375 aka ProSavage8
359	    S3/VIA KM133/VT8365 aka Savage4
360
361	  This support is also available as a module.  If so, the module
362	  will be called i2c-prosavage.
363
364config I2C_RPXLITE
365	tristate "Embedded Planet RPX Lite/Classic support"
366	depends on (RPXLITE || RPXCLASSIC) && I2C
367	select I2C_ALGO8XX
368
369config I2C_S3C2410
370	tristate "S3C2410 I2C Driver"
371	depends on I2C && ARCH_S3C2410
372	help
373	  Say Y here to include support for I2C controller in the
374	  Samsung S3C2410 based System-on-Chip devices.
375
376config I2C_SAVAGE4
377	tristate "S3 Savage 4"
378	depends on I2C && PCI && EXPERIMENTAL
379	select I2C_ALGOBIT
380	help
381	  If you say yes to this option, support will be included for the
382	  S3 Savage 4 I2C interface.
383
384	  This driver can also be built as a module.  If so, the module
385	  will be called i2c-savage4.
386
387config I2C_SIBYTE
388	tristate "SiByte SMBus interface"
389	depends on SIBYTE_SB1xxx_SOC && I2C
390	help
391	  Supports the SiByte SOC on-chip I2C interfaces (2 channels).
392
393config SCx200_I2C
394	tristate "NatSemi SCx200 I2C using GPIO pins"
395	depends on SCx200_GPIO && I2C
396	select I2C_ALGOBIT
397	help
398	  Enable the use of two GPIO pins of a SCx200 processor as an I2C bus.
399
400	  If you don't know what to do here, say N.
401
402	  This support is also available as a module.  If so, the module
403	  will be called scx200_i2c.
404
405config SCx200_I2C_SCL
406	int "GPIO pin used for SCL"
407	depends on SCx200_I2C
408	default "12"
409	help
410	  Enter the GPIO pin number used for the SCL signal.  This value can
411	  also be specified with a module parameter.
412
413config SCx200_I2C_SDA
414	int "GPIO pin used for SDA"
415	depends on SCx200_I2C
416	default "13"
417	help
418	  Enter the GPIO pin number used for the SSA signal.  This value can
419	  also be specified with a module parameter.
420
421config SCx200_ACB
422	tristate "Geode ACCESS.bus support"
423	depends on X86_32 && I2C && PCI
424	help
425	  Enable the use of the ACCESS.bus controllers on the Geode SCx200 and
426	  SC1100 processors and the CS5535 and CS5536 Geode companion devices.
427
428	  If you don't know what to do here, say N.
429
430	  This support is also available as a module.  If so, the module
431	  will be called scx200_acb.
432
433config I2C_SIS5595
434	tristate "SiS 5595"
435	depends on I2C && PCI
436	help
437	  If you say yes to this option, support will be included for the
438	  SiS5595 SMBus (a subset of I2C) interface.
439
440	  This driver can also be built as a module.  If so, the module
441	  will be called i2c-sis5595.
442
443config I2C_SIS630
444	tristate "SiS 630/730"
445	depends on I2C && PCI
446	help
447	  If you say yes to this option, support will be included for the
448	  SiS630 and SiS730 SMBus (a subset of I2C) interface.
449
450	  This driver can also be built as a module.  If so, the module
451	  will be called i2c-sis630.
452
453config I2C_SIS96X
454	tristate "SiS 96x"
455	depends on I2C && PCI
456	help
457	  If you say yes to this option, support will be included for the SiS
458	  96x SMBus (a subset of I2C) interfaces.  Specifically, the following
459	  chipsets are supported:
460	    645/961
461	    645DX/961
462	    645DX/962
463	    648/961
464	    650/961
465	    735
466	    745
467
468	  This driver can also be built as a module.  If so, the module
469	  will be called i2c-sis96x.
470
471config I2C_STUB
472	tristate "I2C/SMBus Test Stub"
473	depends on I2C && EXPERIMENTAL && 'm'
474	default 'n'
475	help
476	  This module may be useful to developers of SMBus client drivers,
477	  especially for certain kinds of sensor chips.
478
479	  If you do build this module, be sure to read the notes and warnings
480	  in <file:Documentation/i2c/i2c-stub>.
481
482	  If you don't know what to do here, definitely say N.
483
484config I2C_VIA
485	tristate "VIA 82C586B"
486	depends on I2C && PCI && EXPERIMENTAL
487	select I2C_ALGOBIT
488	help
489	  If you say yes to this option, support will be included for the VIA
490          82C586B I2C interface
491
492	  This driver can also be built as a module.  If so, the module
493	  will be called i2c-via.
494
495config I2C_VIAPRO
496	tristate "VIA 82C596/82C686/82xx"
497	depends on I2C && PCI
498	help
499	  If you say yes to this option, support will be included for the VIA
500	  82C596/82C686/82xx I2C interfaces.  Specifically, the following
501	  chipsets are supported:
502	    VT82C596A/B
503	    VT82C686A/B
504	    VT8231
505	    VT8233/A
506	    VT8235
507	    VT8237R/A
508	    VT8251
509
510	  This driver can also be built as a module.  If so, the module
511	  will be called i2c-viapro.
512
513config I2C_VOODOO3
514	tristate "Voodoo 3"
515	depends on I2C && PCI
516	select I2C_ALGOBIT
517	help
518	  If you say yes to this option, support will be included for the
519	  Voodoo 3 I2C interface.
520
521	  This driver can also be built as a module.  If so, the module
522	  will be called i2c-voodoo3.
523
524config I2C_PCA_ISA
525	tristate "PCA9564 on an ISA bus"
526	depends on I2C
527	select I2C_ALGOPCA
528	default n
529	help
530	  This driver supports ISA boards using the Philips PCA 9564
531	  Parallel bus to I2C bus controller
532
533	  This driver can also be built as a module.  If so, the module
534	  will be called i2c-pca-isa.
535
536	  This device is almost undetectable and using this driver on a
537	  system which doesn't have this device will result in long
538	  delays when I2C/SMBus chip drivers are loaded (e.g. at boot
539	  time).  If unsure, say N.
540
541config I2C_MV64XXX
542	tristate "Marvell mv64xxx I2C Controller"
543	depends on I2C && MV64X60 && EXPERIMENTAL
544	help
545	  If you say yes to this option, support will be included for the
546	  built-in I2C interface on the Marvell 64xxx line of host bridges.
547
548	  This driver can also be built as a module.  If so, the module
549	  will be called i2c-mv64xxx.
550
551endmenu
552