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