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