# # Sensor device configuration # menu "I2C Hardware Bus support" comment "PC SMBus host controller drivers" depends on PCI config I2C_ALI1535 tristate "ALI 1535" depends on PCI help If you say yes to this option, support will be included for the SMB Host controller on Acer Labs Inc. (ALI) M1535 South Bridges. The SMB controller is part of the 7101 device, which is an ACPI-compliant Power Management Unit (PMU). This driver can also be built as a module. If so, the module will be called i2c-ali1535. config I2C_ALI1563 tristate "ALI 1563" depends on PCI && EXPERIMENTAL help If you say yes to this option, support will be included for the SMB Host controller on Acer Labs Inc. (ALI) M1563 South Bridges. The SMB controller is part of the 7101 device, which is an ACPI-compliant Power Management Unit (PMU). This driver can also be built as a module. If so, the module will be called i2c-ali1563. config I2C_ALI15X3 tristate "ALI 15x3" depends on PCI help If you say yes to this option, support will be included for the Acer Labs Inc. (ALI) M1514 and M1543 motherboard I2C interfaces. This driver can also be built as a module. If so, the module will be called i2c-ali15x3. config I2C_AMD756 tristate "AMD 756/766/768/8111 and nVidia nForce" depends on PCI help If you say yes to this option, support will be included for the AMD 756/766/768 mainboard I2C interfaces. The driver also includes support for the first (SMBus 1.0) I2C interface of the AMD 8111 and the nVidia nForce I2C interface. This driver can also be built as a module. If so, the module will be called i2c-amd756. config I2C_AMD756_S4882 tristate "SMBus multiplexing on the Tyan S4882" depends on I2C_AMD756 && X86 && EXPERIMENTAL help Enabling this option will add specific SMBus support for the Tyan S4882 motherboard. On this 4-CPU board, the SMBus is multiplexed over 8 different channels, where the various memory module EEPROMs and temperature sensors live. Saying yes here will give you access to these in addition to the trunk. This driver can also be built as a module. If so, the module will be called i2c-amd756-s4882. config I2C_AMD8111 tristate "AMD 8111" depends on PCI help If you say yes to this option, support will be included for the second (SMBus 2.0) AMD 8111 mainboard I2C interface. This driver can also be built as a module. If so, the module will be called i2c-amd8111. config I2C_I801 tristate "Intel 82801 (ICH/PCH)" depends on PCI help If you say yes to this option, support will be included for the Intel 801 family of mainboard I2C interfaces. Specifically, the following versions of the chipset are supported: 82801AA 82801AB 82801BA 82801CA/CAM 82801DB 82801EB/ER (ICH5/ICH5R) 6300ESB ICH6 ICH7 ESB2 ICH8 ICH9 EP80579 (Tolapai) ICH10 5/3400 Series (PCH) 6 Series (PCH) Patsburg (PCH) DH89xxCC (PCH) Panther Point (PCH) This driver can also be built as a module. If so, the module will be called i2c-i801. config I2C_ISCH tristate "Intel SCH SMBus 1.0" depends on PCI select MFD_CORE select LPC_SCH help Say Y here if you want to use SMBus controller on the Intel SCH based systems. This driver can also be built as a module. If so, the module will be called i2c-isch. config I2C_PIIX4 tristate "Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC)" depends on PCI help If you say yes to this option, support will be included for the Intel PIIX4 family of mainboard I2C interfaces. Specifically, the following versions of the chipset are supported (note that Serverworks is part of Broadcom): Intel PIIX4 Intel 440MX ATI IXP200 ATI IXP300 ATI IXP400 ATI SB600 ATI SB700 ATI SB800 AMD Hudson-2 Serverworks OSB4 Serverworks CSB5 Serverworks CSB6 Serverworks HT-1000 Serverworks HT-1100 SMSC Victory66 This driver can also be built as a module. If so, the module will be called i2c-piix4. config I2C_NFORCE2 tristate "Nvidia nForce2, nForce3 and nForce4" depends on PCI help If you say yes to this option, support will be included for the Nvidia nForce2, nForce3 and nForce4 families of mainboard I2C interfaces. This driver can also be built as a module. If so, the module will be called i2c-nforce2. config I2C_NFORCE2_S4985 tristate "SMBus multiplexing on the Tyan S4985" depends on I2C_NFORCE2 && X86 && EXPERIMENTAL help Enabling this option will add specific SMBus support for the Tyan S4985 motherboard. On this 4-CPU board, the SMBus is multiplexed over 4 different channels, where the various memory module EEPROMs live. Saying yes here will give you access to these in addition to the trunk. This driver can also be built as a module. If so, the module will be called i2c-nforce2-s4985. config I2C_SIS5595 tristate "SiS 5595" depends on PCI help If you say yes to this option, support will be included for the SiS5595 SMBus (a subset of I2C) interface. This driver can also be built as a module. If so, the module will be called i2c-sis5595. config I2C_SIS630 tristate "SiS 630/730" depends on PCI help If you say yes to this option, support will be included for the SiS630 and SiS730 SMBus (a subset of I2C) interface. This driver can also be built as a module. If so, the module will be called i2c-sis630. config I2C_SIS96X tristate "SiS 96x" depends on PCI help If you say yes to this option, support will be included for the SiS 96x SMBus (a subset of I2C) interfaces. Specifically, the following chipsets are supported: 645/961 645DX/961 645DX/962 648/961 650/961 735 745 This driver can also be built as a module. If so, the module will be called i2c-sis96x. config I2C_VIA tristate "VIA VT82C586B" depends on PCI && EXPERIMENTAL select I2C_ALGOBIT help If you say yes to this option, support will be included for the VIA 82C586B I2C interface This driver can also be built as a module. If so, the module will be called i2c-via. config I2C_VIAPRO tristate "VIA VT82C596/82C686/82xx and CX700/VX8xx" depends on PCI help If you say yes to this option, support will be included for the VIA VT82C596 and later SMBus interface. Specifically, the following chipsets are supported: VT82C596A/B VT82C686A/B VT8231 VT8233/A VT8235 VT8237R/A/S VT8251 CX700 VX800/VX820 VX855/VX875 This driver can also be built as a module. If so, the module will be called i2c-viapro. if ACPI comment "ACPI drivers" config I2C_SCMI tristate "SMBus Control Method Interface" help This driver supports the SMBus Control Method Interface. It needs the BIOS to declare ACPI control methods as described in the SMBus Control Method Interface specification. To compile this driver as a module, choose M here: the module will be called i2c-scmi. endif # ACPI comment "Mac SMBus host controller drivers" depends on PPC_CHRP || PPC_PMAC config I2C_HYDRA tristate "CHRP Apple Hydra Mac I/O I2C interface" depends on PCI && PPC_CHRP && EXPERIMENTAL select I2C_ALGOBIT help This supports the use of the I2C interface in the Apple Hydra Mac I/O chip on some CHRP machines (e.g. the LongTrail). Say Y if you have such a machine. This support is also available as a module. If so, the module will be called i2c-hydra. config I2C_POWERMAC tristate "Powermac I2C interface" depends on PPC_PMAC default y help This exposes the various PowerMac i2c interfaces to the linux i2c layer and to userland. It is used by various drivers on the PowerMac platform, and should generally be enabled. This support is also available as a module. If so, the module will be called i2c-powermac. comment "I2C system bus drivers (mostly embedded / system-on-chip)" config I2C_AT91 tristate "Atmel AT91 I2C Two-Wire interface (TWI)" depends on ARCH_AT91 && EXPERIMENTAL && BROKEN help This supports the use of the I2C interface on Atmel AT91 processors. This driver is BROKEN because the controller which it uses will easily trigger RX overrun and TX underrun errors. Using low I2C clock rates may partially work around those issues on some systems. Another serious problem is that there is no documented way to issue repeated START conditions, as needed to support combined I2C messages. Use the i2c-gpio driver unless your system can cope with those limitations. config I2C_AU1550 tristate "Au1550/Au1200 SMBus interface" depends on SOC_AU1550 || SOC_AU1200 help If you say yes to this option, support will be included for the Au1550 and Au1200 SMBus interface. This driver can also be built as a module. If so, the module will be called i2c-au1550. config I2C_BLACKFIN_TWI tristate "Blackfin TWI I2C support" depends on BLACKFIN depends on !BF561 && !BF531 && !BF532 && !BF533 help This is the I2C bus driver for Blackfin on-chip TWI interface. This driver can also be built as a module. If so, the module will be called i2c-bfin-twi. config I2C_BLACKFIN_TWI_CLK_KHZ int "Blackfin TWI I2C clock (kHz)" depends on I2C_BLACKFIN_TWI range 21 400 default 50 help The unit of the TWI clock is kHz. config I2C_CPM tristate "Freescale CPM1 or CPM2 (MPC8xx/826x)" depends on (CPM1 || CPM2) && OF_I2C help This supports the use of the I2C interface on Freescale processors with CPM1 or CPM2. This driver can also be built as a module. If so, the module will be called i2c-cpm. config I2C_DAVINCI tristate "DaVinci I2C driver" depends on ARCH_DAVINCI help Support for TI DaVinci I2C controller driver. This driver can also be built as a module. If so, the module will be called i2c-davinci. Please note that this driver might be needed to bring up other devices such as DaVinci NIC. For details please see http://www.ti.com/davinci config I2C_DESIGNWARE tristate "Synopsys DesignWare" depends on HAVE_CLK help If you say yes to this option, support will be included for the Synopsys DesignWare I2C adapter. Only master mode is supported. This driver can also be built as a module. If so, the module will be called i2c-designware. config I2C_GPIO tristate "GPIO-based bitbanging I2C" depends on GENERIC_GPIO select I2C_ALGOBIT help This is a very simple bitbanging I2C driver utilizing the arch-neutral GPIO API to control the SCL and SDA lines. config I2C_HIGHLANDER tristate "Highlander FPGA SMBus interface" depends on SH_HIGHLANDER help If you say yes to this option, support will be included for the SMBus interface located in the FPGA on various Highlander boards, particularly the R0P7780LC0011RL and R0P7785LC0011RL FPGAs. This is wholly unrelated to the SoC I2C. This driver can also be built as a module. If so, the module will be called i2c-highlander. config I2C_IBM_IIC tristate "IBM PPC 4xx on-chip I2C interface" depends on 4xx help Say Y here if you want to use IIC peripheral found on embedded IBM PPC 4xx based systems. This driver can also be built as a module. If so, the module will be called i2c-ibm_iic. config I2C_IMX tristate "IMX I2C interface" depends on ARCH_MXC help Say Y here if you want to use the IIC bus controller on the Freescale i.MX/MXC processors. This driver can also be built as a module. If so, the module will be called i2c-imx. config I2C_INTEL_MID tristate "Intel Moorestown/Medfield Platform I2C controller" depends on PCI help Say Y here if you have an Intel Moorestown/Medfield platform I2C controller. This support is also available as a module. If so, the module will be called i2c-intel-mid. config I2C_IOP3XX tristate "Intel IOPx3xx and IXP4xx on-chip I2C interface" depends on ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || ARCH_IOP13XX help Say Y here if you want to use the IIC bus controller on the Intel IOPx3xx I/O Processors or IXP4xx Network Processors. This driver can also be built as a module. If so, the module will be called i2c-iop3xx. config I2C_IXP2000 tristate "IXP2000 GPIO-Based I2C Interface (DEPRECATED)" depends on ARCH_IXP2000 select I2C_ALGOBIT help Say Y here if you have an Intel IXP2000 (2400, 2800, 2850) based system and are using GPIO lines for an I2C bus. This support is also available as a module. If so, the module will be called i2c-ixp2000. This driver is deprecated and will be dropped soon. Use i2c-gpio instead. config I2C_MPC tristate "MPC107/824x/85xx/512x/52xx/83xx/86xx" depends on PPC help If you say yes to this option, support will be included for the built-in I2C interface on the MPC107, Tsi107, MPC512x, MPC52xx, MPC8240, MPC8245, MPC83xx, MPC85xx and MPC8641 family processors. This driver can also be built as a module. If so, the module will be called i2c-mpc. config I2C_MV64XXX tristate "Marvell mv64xxx I2C Controller" depends on (MV64X60 || PLAT_ORION) && EXPERIMENTAL help If you say yes to this option, support will be included for the built-in I2C interface on the Marvell 64xxx line of host bridges. This driver can also be built as a module. If so, the module will be called i2c-mv64xxx. config I2C_MXS tristate "Freescale i.MX28 I2C interface" depends on SOC_IMX28 help Say Y here if you want to use the I2C bus controller on the Freescale i.MX28 processors. This driver can also be built as a module. If so, the module will be called i2c-mxs. config I2C_NOMADIK tristate "ST-Ericsson Nomadik/Ux500 I2C Controller" depends on PLAT_NOMADIK help If you say yes to this option, support will be included for the I2C interface from ST-Ericsson's Nomadik and Ux500 architectures. config I2C_NUC900 tristate "NUC900 I2C Driver" depends on ARCH_W90X900 help Say Y here to include support for I2C controller in the Winbond/Nuvoton NUC900 based System-on-Chip devices. config I2C_OCORES tristate "OpenCores I2C Controller" depends on EXPERIMENTAL help If you say yes to this option, support will be included for the OpenCores I2C controller. For details see http://www.opencores.org/projects.cgi/web/i2c/overview This driver can also be built as a module. If so, the module will be called i2c-ocores. config I2C_OMAP tristate "OMAP I2C adapter" depends on ARCH_OMAP default y if MACH_OMAP_H3 || MACH_OMAP_OSK help If you say yes to this option, support will be included for the I2C interface on the Texas Instruments OMAP1/2 family of processors. Like OMAP1510/1610/1710/5912 and OMAP242x. For details see http://www.ti.com/omap. config I2C_PASEMI tristate "PA Semi SMBus interface" depends on PPC_PASEMI && PCI help Supports the PA Semi PWRficient on-chip SMBus interfaces. config I2C_PCA_PLATFORM tristate "PCA9564/PCA9665 as platform device" select I2C_ALGOPCA default n help This driver supports a memory mapped Philips PCA9564/PCA9665 parallel bus to I2C bus controller. This driver can also be built as a module. If so, the module will be called i2c-pca-platform. config I2C_PMCMSP tristate "PMC MSP I2C TWI Controller" depends on PMC_MSP help This driver supports the PMC TWI controller on MSP devices. This driver can also be built as module. If so, the module will be called i2c-pmcmsp. config I2C_PNX tristate "I2C bus support for Philips PNX and NXP LPC targets" depends on ARCH_PNX4008 || ARCH_LPC32XX help This driver supports the Philips IP3204 I2C IP block master and/or slave controller This driver can also be built as a module. If so, the module will be called i2c-pnx. config I2C_PUV3 tristate "PKUnity v3 I2C bus support" depends on UNICORE32 && ARCH_PUV3 select I2C_ALGOBIT help This driver supports the I2C IP inside the PKUnity-v3 SoC. This I2C bus controller is under AMBA/AXI bus. This driver can also be built as a module. If so, the module will be called i2c-puv3. config I2C_PXA tristate "Intel PXA2XX I2C adapter" depends on ARCH_PXA || ARCH_MMP || (X86_32 && PCI && OF) help If you have devices in the PXA I2C bus, say yes to this option. This driver can also be built as a module. If so, the module will be called i2c-pxa. config I2C_PXA_PCI def_bool I2C_PXA && X86_32 && PCI && OF config I2C_PXA_SLAVE bool "Intel PXA2XX I2C Slave comms support" depends on I2C_PXA && !X86_32 help Support I2C slave mode communications on the PXA I2C bus. This is necessary for systems where the PXA may be a target on the I2C bus. config HAVE_S3C2410_I2C bool help This will include I2C support for Samsung SoCs. If you want to include I2C support for any machine, kindly select this in the respective Kconfig file. config I2C_S3C2410 tristate "S3C2410 I2C Driver" depends on HAVE_S3C2410_I2C help Say Y here to include support for I2C controller in the Samsung SoCs. config I2C_S6000 tristate "S6000 I2C support" depends on XTENSA_VARIANT_S6000 help This driver supports the on chip I2C device on the S6000 xtensa processor family. To compile this driver as a module, choose M here. The module will be called i2c-s6000. config I2C_SH7760 tristate "Renesas SH7760 I2C Controller" depends on CPU_SUBTYPE_SH7760 help This driver supports the 2 I2C interfaces on the Renesas SH7760. This driver can also be built as a module. If so, the module will be called i2c-sh7760. config I2C_SH_MOBILE tristate "SuperH Mobile I2C Controller" depends on SUPERH || ARCH_SHMOBILE help If you say yes to this option, support will be included for the built-in I2C interface on the Renesas SH-Mobile processor. This driver can also be built as a module. If so, the module will be called i2c-sh_mobile. config I2C_SIMTEC tristate "Simtec Generic I2C interface" select I2C_ALGOBIT help If you say yes to this option, support will be included for the Simtec Generic I2C interface. This driver is for the simple I2C bus used on newer Simtec products for general I2C, such as DDC on the Simtec BBD2016A. This driver can also be built as a module. If so, the module will be called i2c-simtec. config I2C_STU300 tristate "ST Microelectronics DDC I2C interface" depends on MACH_U300 default y if MACH_U300 help If you say yes to this option, support will be included for the I2C interface from ST Microelectronics simply called "DDC I2C" supporting both I2C and DDC, used in e.g. the U300 series mobile platforms. This driver can also be built as a module. If so, the module will be called i2c-stu300. config I2C_TEGRA tristate "NVIDIA Tegra internal I2C controller" depends on ARCH_TEGRA help If you say yes to this option, support will be included for the I2C controller embedded in NVIDIA Tegra SOCs config I2C_VERSATILE tristate "ARM Versatile/Realview I2C bus support" depends on ARCH_VERSATILE || ARCH_REALVIEW || ARCH_VEXPRESS select I2C_ALGOBIT help Say yes if you want to support the I2C serial bus on ARMs Versatile range of platforms. This driver can also be built as a module. If so, the module will be called i2c-versatile. config I2C_OCTEON tristate "Cavium OCTEON I2C bus support" depends on CPU_CAVIUM_OCTEON help Say yes if you want to support the I2C serial bus on Cavium OCTEON SOC. This driver can also be built as a module. If so, the module will be called i2c-octeon. config I2C_XILINX tristate "Xilinx I2C Controller" depends on EXPERIMENTAL && HAS_IOMEM help If you say yes to this option, support will be included for the Xilinx I2C controller. This driver can also be built as a module. If so, the module will be called xilinx_i2c. config I2C_EG20T tristate "Intel EG20T PCH/OKI SEMICONDUCTOR ML7213 IOH" depends on PCI help This driver is for PCH(Platform controller Hub) I2C of EG20T which is an IOH(Input/Output Hub) for x86 embedded processor. This driver can access PCH I2C bus device. This driver also supports the ML7213, a companion chip for the Atom E6xx series and compatible with the Intel EG20T PCH. comment "External I2C/SMBus adapter drivers" config I2C_DIOLAN_U2C tristate "Diolan U2C-12 USB adapter" depends on USB help If you say yes to this option, support will be included for Diolan U2C-12, a USB to I2C interface. This driver can also be built as a module. If so, the module will be called i2c-diolan-u2c. config I2C_PARPORT tristate "Parallel port adapter" depends on PARPORT select I2C_ALGOBIT select I2C_SMBUS help This supports parallel port I2C adapters such as the ones made by Philips or Velleman, Analog Devices evaluation boards, and more. Basically any adapter using the parallel port as an I2C bus with no extra chipset is supported by this driver, or could be. This driver is a replacement for (and was inspired by) an older driver named i2c-philips-par. The new driver supports more devices, and makes it easier to add support for new devices. An adapter type parameter is now mandatory. Please read the file Documentation/i2c/busses/i2c-parport for details. Another driver exists, named i2c-parport-light, which doesn't depend on the parport driver. This is meant for embedded systems. Don't say Y here if you intend to say Y or M there. This support is also available as a module. If so, the module will be called i2c-parport. config I2C_PARPORT_LIGHT tristate "Parallel port adapter (light)" select I2C_ALGOBIT select I2C_SMBUS help This supports parallel port I2C adapters such as the ones made by Philips or Velleman, Analog Devices evaluation boards, and more. Basically any adapter using the parallel port as an I2C bus with no extra chipset is supported by this driver, or could be. This driver is a light version of i2c-parport. It doesn't depend on the parport driver, and uses direct I/O access instead. This might be preferred on embedded systems where wasting memory for the clean but heavy parport handling is not an option. The drawback is a reduced portability and the impossibility to daisy-chain other parallel port devices. Don't say Y here if you said Y or M to i2c-parport. Saying M to both is possible but both modules should not be loaded at the same time. This support is also available as a module. If so, the module will be called i2c-parport-light. config I2C_TAOS_EVM tristate "TAOS evaluation module" depends on EXPERIMENTAL select SERIO select SERIO_SERPORT default n help This supports TAOS evaluation modules on serial port. In order to use this driver, you will need the inputattach tool, which is part of the input-utils package. If unsure, say N. This support is also available as a module. If so, the module will be called i2c-taos-evm. config I2C_TINY_USB tristate "Tiny-USB adapter" depends on USB help If you say yes to this option, support will be included for the i2c-tiny-usb, a simple do-it-yourself USB to I2C interface. See http://www.harbaum.org/till/i2c_tiny_usb for hardware details. This driver can also be built as a module. If so, the module will be called i2c-tiny-usb. comment "Other I2C/SMBus bus drivers" config I2C_ACORN tristate "Acorn IOC/IOMD I2C bus support" depends on ARCH_ACORN default y select I2C_ALGOBIT help Say yes if you want to support the I2C bus on Acorn platforms. If you don't know, say Y. config I2C_ELEKTOR tristate "Elektor ISA card" depends on ISA && BROKEN_ON_SMP select I2C_ALGOPCF help This supports the PCF8584 ISA bus I2C adapter. Say Y if you own such an adapter. This support is also available as a module. If so, the module will be called i2c-elektor. config I2C_PCA_ISA tristate "PCA9564/PCA9665 on an ISA bus" depends on ISA select I2C_ALGOPCA default n help This driver supports ISA boards using the Philips PCA9564/PCA9665 parallel bus to I2C bus controller. This driver can also be built as a module. If so, the module will be called i2c-pca-isa. This device is almost undetectable and using this driver on a system which doesn't have this device will result in long delays when I2C/SMBus chip drivers are loaded (e.g. at boot time). If unsure, say N. config I2C_SIBYTE tristate "SiByte SMBus interface" depends on SIBYTE_SB1xxx_SOC help Supports the SiByte SOC on-chip I2C interfaces (2 channels). config I2C_STUB tristate "I2C/SMBus Test Stub" depends on EXPERIMENTAL && m default 'n' help This module may be useful to developers of SMBus client drivers, especially for certain kinds of sensor chips. If you do build this module, be sure to read the notes and warnings in . If you don't know what to do here, definitely say N. config SCx200_I2C tristate "NatSemi SCx200 I2C using GPIO pins (DEPRECATED)" depends on SCx200_GPIO select I2C_ALGOBIT help Enable the use of two GPIO pins of a SCx200 processor as an I2C bus. If you don't know what to do here, say N. This support is also available as a module. If so, the module will be called scx200_i2c. This driver is deprecated and will be dropped soon. Use i2c-gpio (or scx200_acb) instead. config SCx200_I2C_SCL int "GPIO pin used for SCL" depends on SCx200_I2C default "12" help Enter the GPIO pin number used for the SCL signal. This value can also be specified with a module parameter. config SCx200_I2C_SDA int "GPIO pin used for SDA" depends on SCx200_I2C default "13" help Enter the GPIO pin number used for the SSA signal. This value can also be specified with a module parameter. config SCx200_ACB tristate "Geode ACCESS.bus support" depends on X86_32 && PCI help Enable the use of the ACCESS.bus controllers on the Geode SCx200 and SC1100 processors and the CS5535 and CS5536 Geode companion devices. If you don't know what to do here, say N. This support is also available as a module. If so, the module will be called scx200_acb. endmenu