i2c: New Simtec I2C bus driver
[linux-2.6-block.git] / drivers / i2c / busses / Kconfig
CommitLineData
1da177e4
LT
1#
2# Sensor device configuration
3#
4
5menu "I2C Hardware Bus support"
1da177e4
LT
6
7config I2C_ALI1535
8 tristate "ALI 1535"
16538e6b 9 depends on PCI
1da177e4
LT
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
19config I2C_ALI1563
20 tristate "ALI 1563"
16538e6b 21 depends on PCI && EXPERIMENTAL
1da177e4
LT
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
31config I2C_ALI15X3
32 tristate "ALI 15x3"
16538e6b 33 depends on PCI
1da177e4
LT
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
41config I2C_AMD756
42 tristate "AMD 756/766/768/8111 and nVidia nForce"
16538e6b 43 depends on PCI
1da177e4
LT
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
53config 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
66config I2C_AMD8111
67 tristate "AMD 8111"
16538e6b 68 depends on PCI
1da177e4
LT
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
813e30e9
AV
76config I2C_AT91
77 tristate "Atmel AT91 I2C Two-Wire interface (TWI)"
16538e6b 78 depends on ARCH_AT91 && EXPERIMENTAL
813e30e9
AV
79 help
80 This supports the use of the I2C interface on Atmel AT91
81 processors.
82
1da177e4 83config I2C_AU1550
a294de4e 84 tristate "Au1550/Au1200 SMBus interface"
16538e6b 85 depends on SOC_AU1550 || SOC_AU1200
1da177e4
LT
86 help
87 If you say yes to this option, support will be included for the
a294de4e 88 Au1550 and Au1200 SMBus interface.
1da177e4
LT
89
90 This driver can also be built as a module. If so, the module
91 will be called i2c-au1550.
92
d24ecfcc
BW
93config I2C_BLACKFIN_TWI
94 tristate "Blackfin TWI I2C support"
16538e6b 95 depends on BF534 || BF536 || BF537
d24ecfcc
BW
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
101config 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
1da177e4
LT
109config I2C_ELEKTOR
110 tristate "Elektor ISA card"
16538e6b 111 depends on ISA && BROKEN_ON_SMP
1da177e4
LT
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
1c23af90
HS
120config 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
1da177e4
LT
128config I2C_HYDRA
129 tristate "CHRP Apple Hydra Mac I/O I2C interface"
16538e6b 130 depends on PCI && PPC_CHRP && EXPERIMENTAL
1da177e4
LT
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
140config I2C_I801
141 tristate "Intel 82801 (ICH)"
16538e6b 142 depends on PCI
1da177e4
LT
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
b0a70b57 156 ESB2
8254fc4a 157 ICH8
adbc2a10 158 ICH9
1da177e4
LT
159
160 This driver can also be built as a module. If so, the module
161 will be called i2c-i801.
162
163config I2C_I810
164 tristate "Intel 810/815"
16538e6b 165 depends on PCI
1da177e4
LT
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
142078f6 170 following versions of the chipset are supported:
1da177e4
LT
171 i810AA
172 i810AB
173 i810E
174 i815
142078f6 175 i845G
1da177e4
LT
176
177 This driver can also be built as a module. If so, the module
178 will be called i2c-i810.
179
b652b438
RK
180config I2C_PXA
181 tristate "Intel PXA2XX I2C adapter (EXPERIMENTAL)"
16538e6b 182 depends on EXPERIMENTAL && ARCH_PXA
b652b438
RK
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
188config 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
1da177e4 196config I2C_PIIX4
02e0c5d5 197 tristate "Intel PIIX4 and compatible (ATI/Serverworks/Broadcom/SMSC)"
16538e6b 198 depends on PCI
1da177e4
LT
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
5f7ea3c5
MD
202 versions of the chipset are supported (note that Serverworks is part
203 of Broadcom):
1da177e4
LT
204 Intel PIIX4
205 Intel 440MX
02e0c5d5
RM
206 ATI IXP200
207 ATI IXP300
208 ATI IXP400
4e6697fc 209 ATI SB600
1da177e4
LT
210 Serverworks OSB4
211 Serverworks CSB5
212 Serverworks CSB6
5f7ea3c5 213 Serverworks HT-1000
1da177e4
LT
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
219config I2C_IBM_IIC
220 tristate "IBM PPC 4xx on-chip I2C interface"
16538e6b 221 depends on IBM_OCP
1da177e4
LT
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
229config I2C_IOP3XX
285f5fa7 230 tristate "Intel IOPx3xx and IXP4xx on-chip I2C interface"
16538e6b 231 depends on ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || ARCH_IOP13XX
1da177e4
LT
232 help
233 Say Y here if you want to use the IIC bus controller on
285f5fa7 234 the Intel IOPx3xx I/O Processors or IXP4xx Network Processors.
1da177e4
LT
235
236 This driver can also be built as a module. If so, the module
237 will be called i2c-iop3xx.
238
239config I2C_ISA
5042c7d7 240 tristate
1da177e4 241
1da177e4
LT
242config I2C_IXP4XX
243 tristate "IXP4xx GPIO-Based I2C Interface"
16538e6b 244 depends on ARCH_IXP4XX
1da177e4
LT
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
253config I2C_IXP2000
254 tristate "IXP2000 GPIO-Based I2C Interface"
16538e6b 255 depends on ARCH_IXP2000
1da177e4
LT
256 select I2C_ALGOBIT
257 help
258 Say Y here if you have an Intel IXP2000(2400, 2800, 2850) based
259 system and are using GPIO lines for an I2C bus.
260
261 This support is also available as a module. If so, the module
262 will be called i2c-ixp2000.
263
a28d3af2
BH
264config I2C_POWERMAC
265 tristate "Powermac I2C interface"
16538e6b 266 depends on PPC_PMAC
a28d3af2 267 default y
1da177e4 268 help
a28d3af2
BH
269 This exposes the various PowerMac i2c interfaces to the linux i2c
270 layer and to userland. It is used by various drivers on the powemac
271 platform, thus should generally be enabled.
0365ba7f
BH
272
273 This support is also available as a module. If so, the module
a28d3af2 274 will be called i2c-powermac.
0365ba7f 275
1da177e4 276config I2C_MPC
2097c7f0 277 tristate "MPC107/824x/85xx/52xx/86xx"
16538e6b 278 depends on PPC32
1da177e4
LT
279 help
280 If you say yes to this option, support will be included for the
281 built-in I2C interface on the MPC107/Tsi107/MPC8240/MPC8245 and
2097c7f0 282 MPC85xx/MPC8641 family processors. The driver may also work on 52xx
1da177e4
LT
283 family processors, though interrupts are known not to work.
284
285 This driver can also be built as a module. If so, the module
286 will be called i2c-mpc.
287
288config I2C_NFORCE2
5d740fe9 289 tristate "Nvidia nForce2, nForce3 and nForce4"
16538e6b 290 depends on PCI
1da177e4
LT
291 help
292 If you say yes to this option, support will be included for the Nvidia
5d740fe9 293 nForce2, nForce3 and nForce4 families of mainboard I2C interfaces.
1da177e4
LT
294
295 This driver can also be built as a module. If so, the module
296 will be called i2c-nforce2.
297
18f98b1e
PK
298config I2C_OCORES
299 tristate "OpenCores I2C Controller"
16538e6b 300 depends on EXPERIMENTAL
18f98b1e
PK
301 help
302 If you say yes to this option, support will be included for the
303 OpenCores I2C controller. For details see
304 http://www.opencores.org/projects.cgi/web/i2c/overview
305
306 This driver can also be built as a module. If so, the module
307 will be called i2c-ocores.
308
010d442c
KS
309config I2C_OMAP
310 tristate "OMAP I2C adapter"
16538e6b 311 depends on ARCH_OMAP
010d442c
KS
312 default y if MACH_OMAP_H3 || MACH_OMAP_OSK
313 help
314 If you say yes to this option, support will be included for the
315 I2C interface on the Texas Instruments OMAP1/2 family of processors.
316 Like OMAP1510/1610/1710/5912 and OMAP242x.
317 For details see http://www.ti.com/omap.
318
1da177e4
LT
319config I2C_PARPORT
320 tristate "Parallel port adapter"
16538e6b 321 depends on PARPORT
1da177e4
LT
322 select I2C_ALGOBIT
323 help
324 This supports parallel port I2C adapters such as the ones made by
325 Philips or Velleman, Analog Devices evaluation boards, and more.
326 Basically any adapter using the parallel port as an I2C bus with
327 no extra chipset is supported by this driver, or could be.
328
329 This driver is a replacement for (and was inspired by) an older
330 driver named i2c-philips-par. The new driver supports more devices,
331 and makes it easier to add support for new devices.
e97b81dd
MH
332
333 An adapter type parameter is now mandatory. Please read the file
334 Documentation/i2c/busses/i2c-parport for details.
335
1da177e4
LT
336 Another driver exists, named i2c-parport-light, which doesn't depend
337 on the parport driver. This is meant for embedded systems. Don't say
338 Y here if you intend to say Y or M there.
339
340 This support is also available as a module. If so, the module
341 will be called i2c-parport.
342
343config I2C_PARPORT_LIGHT
344 tristate "Parallel port adapter (light)"
1da177e4
LT
345 select I2C_ALGOBIT
346 help
347 This supports parallel port I2C adapters such as the ones made by
348 Philips or Velleman, Analog Devices evaluation boards, and more.
349 Basically any adapter using the parallel port as an I2C bus with
350 no extra chipset is supported by this driver, or could be.
351
352 This driver is a light version of i2c-parport. It doesn't depend
353 on the parport driver, and uses direct I/O access instead. This
09509603 354 might be preferred on embedded systems where wasting memory for
1da177e4
LT
355 the clean but heavy parport handling is not an option. The
356 drawback is a reduced portability and the impossibility to
09509603 357 daisy-chain other parallel port devices.
1da177e4
LT
358
359 Don't say Y here if you said Y or M to i2c-parport. Saying M to
360 both is possible but both modules should not be loaded at the same
361 time.
362
363 This support is also available as a module. If so, the module
364 will be called i2c-parport-light.
365
beb58aa3
OJ
366config I2C_PASEMI
367 tristate "PA Semi SMBus interface"
16538e6b 368 depends on PPC_PASEMI && PCI
beb58aa3
OJ
369 help
370 Supports the PA Semi PWRficient on-chip SMBus interfaces.
371
1da177e4
LT
372config I2C_PROSAVAGE
373 tristate "S3/VIA (Pro)Savage"
16538e6b 374 depends on PCI
1da177e4
LT
375 select I2C_ALGOBIT
376 help
377 If you say yes to this option, support will be included for the
378 I2C bus and DDC bus of the S3VIA embedded Savage4 and ProSavage8
379 graphics processors.
380 chipsets supported:
381 S3/VIA KM266/VT8375 aka ProSavage8
382 S3/VIA KM133/VT8365 aka Savage4
383
384 This support is also available as a module. If so, the module
385 will be called i2c-prosavage.
386
387config I2C_RPXLITE
388 tristate "Embedded Planet RPX Lite/Classic support"
16538e6b 389 depends on RPXLITE || RPXCLASSIC
1da177e4
LT
390 select I2C_ALGO8XX
391
392config I2C_S3C2410
393 tristate "S3C2410 I2C Driver"
16538e6b 394 depends on ARCH_S3C2410
1da177e4
LT
395 help
396 Say Y here to include support for I2C controller in the
397 Samsung S3C2410 based System-on-Chip devices.
398
399config I2C_SAVAGE4
400 tristate "S3 Savage 4"
16538e6b 401 depends on PCI && EXPERIMENTAL
1da177e4
LT
402 select I2C_ALGOBIT
403 help
404 If you say yes to this option, support will be included for the
405 S3 Savage 4 I2C interface.
406
407 This driver can also be built as a module. If so, the module
408 will be called i2c-savage4.
409
410config I2C_SIBYTE
411 tristate "SiByte SMBus interface"
16538e6b 412 depends on SIBYTE_SB1xxx_SOC
1da177e4
LT
413 help
414 Supports the SiByte SOC on-chip I2C interfaces (2 channels).
415
bcda9f1e
BD
416config I2C_SIMTEC
417 tristate "Simtec Generic I2C interface"
418 select I2C_ALGOBIT
419 help
420 If you say yes to this option, support will be inclyded for
421 the Simtec Generic I2C interface. This driver is for the
422 simple I2C bus used on newer Simtec products for general
423 I2C, such as DDC on the Simtec BBD2016A.
424
425 This driver can also be build as a module. If so, the module
426 will be called i2c-simtec.
427
1da177e4
LT
428config SCx200_I2C
429 tristate "NatSemi SCx200 I2C using GPIO pins"
16538e6b 430 depends on SCx200_GPIO
1da177e4
LT
431 select I2C_ALGOBIT
432 help
433 Enable the use of two GPIO pins of a SCx200 processor as an I2C bus.
434
435 If you don't know what to do here, say N.
436
437 This support is also available as a module. If so, the module
438 will be called scx200_i2c.
439
440config SCx200_I2C_SCL
441 int "GPIO pin used for SCL"
442 depends on SCx200_I2C
443 default "12"
444 help
445 Enter the GPIO pin number used for the SCL signal. This value can
446 also be specified with a module parameter.
447
448config SCx200_I2C_SDA
449 int "GPIO pin used for SDA"
450 depends on SCx200_I2C
451 default "13"
452 help
453 Enter the GPIO pin number used for the SSA signal. This value can
454 also be specified with a module parameter.
455
456config SCx200_ACB
a417bbd3 457 tristate "Geode ACCESS.bus support"
16538e6b 458 depends on X86_32 && PCI
1da177e4 459 help
a417bbd3
BG
460 Enable the use of the ACCESS.bus controllers on the Geode SCx200 and
461 SC1100 processors and the CS5535 and CS5536 Geode companion devices.
1da177e4
LT
462
463 If you don't know what to do here, say N.
464
465 This support is also available as a module. If so, the module
466 will be called scx200_acb.
467
468config I2C_SIS5595
469 tristate "SiS 5595"
16538e6b 470 depends on PCI
1da177e4
LT
471 help
472 If you say yes to this option, support will be included for the
473 SiS5595 SMBus (a subset of I2C) interface.
474
475 This driver can also be built as a module. If so, the module
476 will be called i2c-sis5595.
477
478config I2C_SIS630
479 tristate "SiS 630/730"
16538e6b 480 depends on PCI
1da177e4
LT
481 help
482 If you say yes to this option, support will be included for the
483 SiS630 and SiS730 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-sis630.
487
488config I2C_SIS96X
489 tristate "SiS 96x"
16538e6b 490 depends on PCI
1da177e4
LT
491 help
492 If you say yes to this option, support will be included for the SiS
493 96x SMBus (a subset of I2C) interfaces. Specifically, the following
494 chipsets are supported:
495 645/961
496 645DX/961
497 645DX/962
498 648/961
499 650/961
500 735
5d740fe9 501 745
1da177e4
LT
502
503 This driver can also be built as a module. If so, the module
504 will be called i2c-sis96x.
505
506config I2C_STUB
507 tristate "I2C/SMBus Test Stub"
16538e6b 508 depends on EXPERIMENTAL && m
1da177e4
LT
509 default 'n'
510 help
511 This module may be useful to developers of SMBus client drivers,
512 especially for certain kinds of sensor chips.
513
514 If you do build this module, be sure to read the notes and warnings
515 in <file:Documentation/i2c/i2c-stub>.
516
517 If you don't know what to do here, definitely say N.
518
6b65cd74
RK
519config I2C_VERSATILE
520 tristate "ARM Versatile/Realview I2C bus support"
16538e6b 521 depends on ARCH_VERSATILE || ARCH_REALVIEW
6b65cd74
RK
522 select I2C_ALGOBIT
523 help
524 Say yes if you want to support the I2C serial bus on ARMs Versatile
525 range of platforms.
526
527 This driver can also be built as a module. If so, the module
528 will be called i2c-versatile.
529
8d91cbad
RK
530config I2C_ACORN
531 bool "Acorn IOC/IOMD I2C bus support"
16538e6b 532 depends on ARCH_ACORN
8d91cbad
RK
533 default y
534 select I2C_ALGOBIT
535 help
536 Say yes if you want to support the I2C bus on Acorn platforms.
537
538 If you don't know, say Y.
539
1da177e4
LT
540config I2C_VIA
541 tristate "VIA 82C586B"
16538e6b 542 depends on PCI && EXPERIMENTAL
1da177e4
LT
543 select I2C_ALGOBIT
544 help
545 If you say yes to this option, support will be included for the VIA
546 82C586B I2C interface
547
548 This driver can also be built as a module. If so, the module
549 will be called i2c-via.
550
551config I2C_VIAPRO
ab6a6ed2 552 tristate "VIA VT82C596/82C686/82xx and CX700"
16538e6b 553 depends on PCI
1da177e4
LT
554 help
555 If you say yes to this option, support will be included for the VIA
ab6a6ed2 556 VT82C596 and later SMBus interface. Specifically, the following
1da177e4 557 chipsets are supported:
c243353a
RM
558 VT82C596A/B
559 VT82C686A/B
560 VT8231
561 VT8233/A
562 VT8235
563 VT8237R/A
564 VT8251
ab6a6ed2 565 CX700
1da177e4
LT
566
567 This driver can also be built as a module. If so, the module
568 will be called i2c-viapro.
569
570config I2C_VOODOO3
571 tristate "Voodoo 3"
16538e6b 572 depends on PCI
1da177e4
LT
573 select I2C_ALGOBIT
574 help
575 If you say yes to this option, support will be included for the
576 Voodoo 3 I2C interface.
577
578 This driver can also be built as a module. If so, the module
579 will be called i2c-voodoo3.
580
581config I2C_PCA_ISA
582 tristate "PCA9564 on an ISA bus"
16538e6b 583 depends on ISA
1da177e4 584 select I2C_ALGOPCA
aee62305 585 default n
1da177e4
LT
586 help
587 This driver supports ISA boards using the Philips PCA 9564
588 Parallel bus to I2C bus controller
589
590 This driver can also be built as a module. If so, the module
591 will be called i2c-pca-isa.
592
aee62305
JD
593 This device is almost undetectable and using this driver on a
594 system which doesn't have this device will result in long
595 delays when I2C/SMBus chip drivers are loaded (e.g. at boot
596 time). If unsure, say N.
597
1da177e4
LT
598config I2C_MV64XXX
599 tristate "Marvell mv64xxx I2C Controller"
16538e6b 600 depends on MV64X60 && EXPERIMENTAL
1da177e4
LT
601 help
602 If you say yes to this option, support will be included for the
603 built-in I2C interface on the Marvell 64xxx line of host bridges.
604
605 This driver can also be built as a module. If so, the module
606 will be called i2c-mv64xxx.
607
41561f28
VW
608config I2C_PNX
609 tristate "I2C bus support for Philips PNX targets"
16538e6b 610 depends on ARCH_PNX4008
41561f28
VW
611 help
612 This driver supports the Philips IP3204 I2C IP block master and/or
613 slave controller
614
615 This driver can also be built as a module. If so, the module
616 will be called i2c-pnx.
617
1da177e4 618endmenu