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