Merge branch 'upstream-davem' of master.kernel.org:/pub/scm/linux/kernel/git/linville...
[linux-2.6] / 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             ATI SB700
211             Serverworks OSB4
212             Serverworks CSB5
213             Serverworks CSB6
214             Serverworks HT-1000
215             SMSC Victory66
216
217           This driver can also be built as a module.  If so, the module
218           will be called i2c-piix4.
219
220 config I2C_IBM_IIC
221         tristate "IBM PPC 4xx on-chip I2C interface"
222         depends on IBM_OCP
223         help
224           Say Y here if you want to use IIC peripheral found on 
225           embedded IBM PPC 4xx based systems. 
226
227           This driver can also be built as a module.  If so, the module
228           will be called i2c-ibm_iic.
229
230 config I2C_IOP3XX
231         tristate "Intel IOPx3xx and IXP4xx on-chip I2C interface"
232         depends on ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || ARCH_IOP13XX
233         help
234           Say Y here if you want to use the IIC bus controller on
235           the Intel IOPx3xx I/O Processors or IXP4xx Network Processors.
236
237           This driver can also be built as a module.  If so, the module
238           will be called i2c-iop3xx.
239
240 config I2C_ISA
241         tristate
242
243 config I2C_IXP4XX
244         tristate "IXP4xx GPIO-Based I2C Interface (DEPRECATED)"
245         depends on ARCH_IXP4XX
246         select I2C_ALGOBIT
247         help
248           Say Y here if you have an Intel IXP4xx(420,421,422,425) based 
249           system and are using GPIO lines for an I2C bus.
250
251           This support is also available as a module. If so, the module
252           will be called i2c-ixp4xx.
253
254           This driver is deprecated and will be dropped soon. Use i2c-gpio
255           instead.
256
257 config I2C_IXP2000
258         tristate "IXP2000 GPIO-Based I2C Interface (DEPRECATED)"
259         depends on ARCH_IXP2000
260         select I2C_ALGOBIT
261         help
262           Say Y here if you have an Intel IXP2000(2400, 2800, 2850) based 
263           system and are using GPIO lines for an I2C bus.
264
265           This support is also available as a module. If so, the module
266           will be called i2c-ixp2000.
267
268           This driver is deprecated and will be dropped soon. Use i2c-gpio
269           instead.
270
271 config I2C_POWERMAC
272         tristate "Powermac I2C interface"
273         depends on PPC_PMAC
274         default y
275         help
276           This exposes the various PowerMac i2c interfaces to the linux i2c
277           layer and to userland. It is used by various drivers on the powemac
278           platform, thus should generally be enabled.
279
280           This support is also available as a module.  If so, the module
281           will be called i2c-powermac.
282
283 config I2C_MPC
284         tristate "MPC107/824x/85xx/52xx/86xx"
285         depends on PPC32
286         help
287           If you say yes to this option, support will be included for the
288           built-in I2C interface on the MPC107/Tsi107/MPC8240/MPC8245 and
289           MPC85xx/MPC8641 family processors. The driver may also work on 52xx
290           family processors, though interrupts are known not to work.
291
292           This driver can also be built as a module.  If so, the module
293           will be called i2c-mpc.
294
295 config I2C_NFORCE2
296         tristate "Nvidia nForce2, nForce3 and nForce4"
297         depends on PCI
298         help
299           If you say yes to this option, support will be included for the Nvidia
300           nForce2, nForce3 and nForce4 families of mainboard I2C interfaces.
301
302           This driver can also be built as a module.  If so, the module
303           will be called i2c-nforce2.
304
305 config I2C_OCORES
306         tristate "OpenCores I2C Controller"
307         depends on EXPERIMENTAL
308         help
309           If you say yes to this option, support will be included for the
310           OpenCores I2C controller. For details see
311           http://www.opencores.org/projects.cgi/web/i2c/overview
312
313           This driver can also be built as a module.  If so, the module
314           will be called i2c-ocores.
315
316 config I2C_OMAP
317         tristate "OMAP I2C adapter"
318         depends on ARCH_OMAP
319         default y if MACH_OMAP_H3 || MACH_OMAP_OSK
320         help
321           If you say yes to this option, support will be included for the
322           I2C interface on the Texas Instruments OMAP1/2 family of processors.
323           Like OMAP1510/1610/1710/5912 and OMAP242x.
324           For details see http://www.ti.com/omap.
325
326 config I2C_PARPORT
327         tristate "Parallel port adapter"
328         depends on PARPORT
329         select I2C_ALGOBIT
330         help
331           This supports parallel port I2C adapters such as the ones made by
332           Philips or Velleman, Analog Devices evaluation boards, and more.
333           Basically any adapter using the parallel port as an I2C bus with
334           no extra chipset is supported by this driver, or could be.
335
336           This driver is a replacement for (and was inspired by) an older
337           driver named i2c-philips-par.  The new driver supports more devices,
338           and makes it easier to add support for new devices.
339
340           An adapter type parameter is now mandatory.  Please read the file
341           Documentation/i2c/busses/i2c-parport for details.
342
343           Another driver exists, named i2c-parport-light, which doesn't depend
344           on the parport driver.  This is meant for embedded systems. Don't say
345           Y here if you intend to say Y or M there.
346
347           This support is also available as a module.  If so, the module 
348           will be called i2c-parport.
349
350 config I2C_PARPORT_LIGHT
351         tristate "Parallel port adapter (light)"
352         select I2C_ALGOBIT
353         help
354           This supports parallel port I2C adapters such as the ones made by
355           Philips or Velleman, Analog Devices evaluation boards, and more.
356           Basically any adapter using the parallel port as an I2C bus with
357           no extra chipset is supported by this driver, or could be.
358
359           This driver is a light version of i2c-parport.  It doesn't depend
360           on the parport driver, and uses direct I/O access instead.  This
361           might be preferred on embedded systems where wasting memory for
362           the clean but heavy parport handling is not an option.  The
363           drawback is a reduced portability and the impossibility to
364           daisy-chain other parallel port devices.
365           
366           Don't say Y here if you said Y or M to i2c-parport.  Saying M to
367           both is possible but both modules should not be loaded at the same
368           time.
369
370           This support is also available as a module.  If so, the module 
371           will be called i2c-parport-light.
372
373 config I2C_PASEMI
374         tristate "PA Semi SMBus interface"
375         depends on PPC_PASEMI && PCI
376         help
377           Supports the PA Semi PWRficient on-chip SMBus interfaces.
378
379 config I2C_PROSAVAGE
380         tristate "S3/VIA (Pro)Savage"
381         depends on PCI
382         select I2C_ALGOBIT
383         help
384           If you say yes to this option, support will be included for the
385           I2C bus and DDC bus of the S3VIA embedded Savage4 and ProSavage8
386           graphics processors.
387           chipsets supported:
388             S3/VIA KM266/VT8375 aka ProSavage8
389             S3/VIA KM133/VT8365 aka Savage4
390
391           This support is also available as a module.  If so, the module 
392           will be called i2c-prosavage.
393
394 config I2C_S3C2410
395         tristate "S3C2410 I2C Driver"
396         depends on ARCH_S3C2410
397         help
398           Say Y here to include support for I2C controller in the
399           Samsung S3C2410 based System-on-Chip devices.
400
401 config I2C_SAVAGE4
402         tristate "S3 Savage 4"
403         depends on PCI && EXPERIMENTAL
404         select I2C_ALGOBIT
405         help
406           If you say yes to this option, support will be included for the 
407           S3 Savage 4 I2C interface.
408
409           This driver can also be built as a module.  If so, the module
410           will be called i2c-savage4.
411
412 config I2C_SIBYTE
413         tristate "SiByte SMBus interface"
414         depends on SIBYTE_SB1xxx_SOC
415         help
416           Supports the SiByte SOC on-chip I2C interfaces (2 channels).
417
418 config I2C_SIMTEC
419         tristate "Simtec Generic I2C interface"
420         select I2C_ALGOBIT
421         help
422           If you say yes to this option, support will be inclyded for
423           the Simtec Generic I2C interface. This driver is for the
424           simple I2C bus used on newer Simtec products for general
425           I2C, such as DDC on the Simtec BBD2016A.
426
427           This driver can also be build as a module. If so, the module
428           will be called i2c-simtec.
429
430 config SCx200_I2C
431         tristate "NatSemi SCx200 I2C using GPIO pins (DEPRECATED)"
432         depends on SCx200_GPIO
433         select I2C_ALGOBIT
434         help
435           Enable the use of two GPIO pins of a SCx200 processor as an I2C bus.
436
437           If you don't know what to do here, say N.
438
439           This support is also available as a module.  If so, the module 
440           will be called scx200_i2c.
441
442           This driver is deprecated and will be dropped soon. Use i2c-gpio
443           (or scx200_acb) instead.
444
445 config SCx200_I2C_SCL
446         int "GPIO pin used for SCL"
447         depends on SCx200_I2C
448         default "12"
449         help
450           Enter the GPIO pin number used for the SCL signal.  This value can
451           also be specified with a module parameter.
452
453 config SCx200_I2C_SDA
454         int "GPIO pin used for SDA"
455         depends on SCx200_I2C
456         default "13"
457         help
458           Enter the GPIO pin number used for the SSA signal.  This value can
459           also be specified with a module parameter.
460
461 config SCx200_ACB
462         tristate "Geode ACCESS.bus support"
463         depends on X86_32 && PCI
464         help
465           Enable the use of the ACCESS.bus controllers on the Geode SCx200 and
466           SC1100 processors and the CS5535 and CS5536 Geode companion devices.
467
468           If you don't know what to do here, say N.
469
470           This support is also available as a module.  If so, the module 
471           will be called scx200_acb.
472
473 config I2C_SIS5595
474         tristate "SiS 5595"
475         depends on PCI
476         help
477           If you say yes to this option, support will be included for the 
478           SiS5595 SMBus (a subset of I2C) interface.
479
480           This driver can also be built as a module.  If so, the module
481           will be called i2c-sis5595.
482
483 config I2C_SIS630
484         tristate "SiS 630/730"
485         depends on PCI
486         help
487           If you say yes to this option, support will be included for the 
488           SiS630 and SiS730 SMBus (a subset of I2C) interface.
489
490           This driver can also be built as a module.  If so, the module
491           will be called i2c-sis630.
492
493 config I2C_SIS96X
494         tristate "SiS 96x"
495         depends on PCI
496         help
497           If you say yes to this option, support will be included for the SiS
498           96x SMBus (a subset of I2C) interfaces.  Specifically, the following
499           chipsets are supported:
500             645/961
501             645DX/961
502             645DX/962
503             648/961
504             650/961
505             735
506             745
507
508           This driver can also be built as a module.  If so, the module
509           will be called i2c-sis96x.
510
511 config I2C_TAOS_EVM
512         tristate "TAOS evaluation module"
513         depends on EXPERIMENTAL
514         select SERIO
515         select SERIO_SERPORT
516         default n
517         help
518           This supports TAOS evaluation modules on serial port. In order to
519           use this driver, you will need the inputattach tool, which is part
520           of the input-utils package.
521
522           If unsure, say N.
523
524           This support is also available as a module.  If so, the module
525           will be called i2c-taos-evm.
526
527 config I2C_STUB
528         tristate "I2C/SMBus Test Stub"
529         depends on EXPERIMENTAL && m
530         default 'n'
531         help
532           This module may be useful to developers of SMBus client drivers,
533           especially for certain kinds of sensor chips.
534
535           If you do build this module, be sure to read the notes and warnings
536           in <file:Documentation/i2c/i2c-stub>.
537
538           If you don't know what to do here, definitely say N.
539
540 config I2C_TINY_USB
541         tristate "I2C-Tiny-USB"
542         depends on USB
543         help
544           If you say yes to this option, support will be included for the
545           i2c-tiny-usb, a simple do-it-yourself USB to I2C interface. See
546           http://www.harbaum.org/till/i2c_tiny_usb for hardware details.
547
548           This driver can also be built as a module.  If so, the module
549           will be called i2c-tiny-usb.
550
551 config I2C_VERSATILE
552         tristate "ARM Versatile/Realview I2C bus support"
553         depends on ARCH_VERSATILE || ARCH_REALVIEW
554         select I2C_ALGOBIT
555         help
556           Say yes if you want to support the I2C serial bus on ARMs Versatile
557           range of platforms.
558
559           This driver can also be built as a module.  If so, the module
560           will be called i2c-versatile.
561
562 config I2C_ACORN
563         bool "Acorn IOC/IOMD I2C bus support"
564         depends on ARCH_ACORN
565         default y
566         select I2C_ALGOBIT
567         help
568           Say yes if you want to support the I2C bus on Acorn platforms.
569
570           If you don't know, say Y.
571
572 config I2C_VIA
573         tristate "VIA 82C586B"
574         depends on PCI && EXPERIMENTAL
575         select I2C_ALGOBIT
576         help
577           If you say yes to this option, support will be included for the VIA
578           82C586B I2C interface
579
580           This driver can also be built as a module.  If so, the module
581           will be called i2c-via.
582
583 config I2C_VIAPRO
584         tristate "VIA VT82C596/82C686/82xx and CX700"
585         depends on PCI
586         help
587           If you say yes to this option, support will be included for the VIA
588           VT82C596 and later SMBus interface.  Specifically, the following
589           chipsets are supported:
590             VT82C596A/B
591             VT82C686A/B
592             VT8231
593             VT8233/A
594             VT8235
595             VT8237R/A
596             VT8251
597             CX700
598
599           This driver can also be built as a module.  If so, the module
600           will be called i2c-viapro.
601
602 config I2C_VOODOO3
603         tristate "Voodoo 3"
604         depends on PCI
605         select I2C_ALGOBIT
606         help
607           If you say yes to this option, support will be included for the
608           Voodoo 3 I2C interface.
609
610           This driver can also be built as a module.  If so, the module
611           will be called i2c-voodoo3.
612
613 config I2C_PCA_ISA
614         tristate "PCA9564 on an ISA bus"
615         depends on ISA
616         select I2C_ALGOPCA
617         default n
618         help
619           This driver supports ISA boards using the Philips PCA 9564
620           Parallel bus to I2C bus controller
621           
622           This driver can also be built as a module.  If so, the module
623           will be called i2c-pca-isa.
624
625           This device is almost undetectable and using this driver on a
626           system which doesn't have this device will result in long
627           delays when I2C/SMBus chip drivers are loaded (e.g. at boot
628           time).  If unsure, say N.
629
630 config I2C_MV64XXX
631         tristate "Marvell mv64xxx I2C Controller"
632         depends on MV64X60 && EXPERIMENTAL
633         help
634           If you say yes to this option, support will be included for the
635           built-in I2C interface on the Marvell 64xxx line of host bridges.
636
637           This driver can also be built as a module.  If so, the module
638           will be called i2c-mv64xxx.
639
640 config I2C_PNX
641         tristate "I2C bus support for Philips PNX targets"
642         depends on ARCH_PNX4008
643         help
644           This driver supports the Philips IP3204 I2C IP block master and/or
645           slave controller
646
647           This driver can also be built as a module.  If so, the module
648           will be called i2c-pnx.
649
650 config I2C_PMCMSP
651         tristate "PMC MSP I2C TWI Controller"
652         depends on PMC_MSP
653         help
654           This driver supports the PMC TWI controller on MSP devices.
655
656           This driver can also be built as module. If so, the module
657           will be called i2c-pmcmsp.
658
659 endmenu