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