i2c: Support for Netlogic XLR/XLS I2C controller.
[linux-2.6.git] / drivers / i2c / busses / Kconfig
index da809ad..7726c79 100644 (file)
@@ -77,8 +77,9 @@ config I2C_AMD8111
          will be called i2c-amd8111.
 
 config I2C_I801
-       tristate "Intel 82801 (ICH)"
+       tristate "Intel 82801 (ICH/PCH)"
        depends on PCI
+       select CHECK_SIGNATURE if X86 && DMI
        help
          If you say yes to this option, support will be included for the Intel
          801 family of mainboard I2C interfaces.  Specifically, the following
@@ -95,9 +96,13 @@ config I2C_I801
            ESB2
            ICH8
            ICH9
-           Tolapai
+           EP80579 (Tolapai)
            ICH10
-           PCH
+           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.
@@ -105,6 +110,7 @@ config I2C_I801
 config I2C_ISCH
        tristate "Intel SCH SMBus 1.0"
        depends on PCI
+       select LPC_SCH
        help
          Say Y here if you want to use SMBus controller on the Intel SCH
          based systems.
@@ -113,7 +119,7 @@ config I2C_ISCH
          will be called i2c-isch.
 
 config I2C_PIIX4
-       tristate "Intel PIIX4 and compatible (ATI/Serverworks/Broadcom/SMSC)"
+       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
@@ -128,6 +134,7 @@ config I2C_PIIX4
            ATI SB600
            ATI SB700
            ATI SB800
+           AMD Hudson-2
            Serverworks OSB4
            Serverworks CSB5
            Serverworks CSB6
@@ -211,7 +218,7 @@ config I2C_VIA
          will be called i2c-via.
 
 config I2C_VIAPRO
-       tristate "VIA VT82C596/82C686/82xx and CX700/VX800/VX820"
+       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
@@ -225,12 +232,28 @@ config I2C_VIAPRO
            VT8237R/A/S
            VT8251
            CX700
-           VX800
-           VX820
+           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
 
@@ -276,11 +299,11 @@ config I2C_AT91
          unless your system can cope with those limitations.
 
 config I2C_AU1550
-       tristate "Au1550/Au1200 SMBus interface"
-       depends on SOC_AU1550 || SOC_AU1200
+       tristate "Au1550/Au1200/Au1300 SMBus interface"
+       depends on MIPS_ALCHEMY
        help
          If you say yes to this option, support will be included for the
-         Au1550 and Au1200 SMBus interface.
+         Au1550/Au1200/Au1300 SMBus interface.
 
          This driver can also be built as a module.  If so, the module
          will be called i2c-au1550.
@@ -298,7 +321,7 @@ config I2C_BLACKFIN_TWI
 config I2C_BLACKFIN_TWI_CLK_KHZ
        int "Blackfin TWI I2C clock (kHz)"
        depends on I2C_BLACKFIN_TWI
-       range 10 400
+       range 21 400
        default 50
        help
          The unit of the TWI clock is kHz.
@@ -326,6 +349,26 @@ config I2C_DAVINCI
          devices such as DaVinci NIC.
          For details please see http://www.ti.com/davinci
 
+config I2C_DESIGNWARE_PLATFORM
+       tristate "Synopsys DesignWare Platfrom"
+       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-platform.
+
+config I2C_DESIGNWARE_PCI
+       tristate "Synopsys DesignWare PCI"
+       depends on PCI
+       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-pci.
+
 config I2C_GPIO
        tristate "GPIO-based bitbanging I2C"
        depends on GENERIC_GPIO
@@ -356,6 +399,26 @@ config I2C_IBM_IIC
          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
@@ -381,13 +444,12 @@ config I2C_IXP2000
          instead.
 
 config I2C_MPC
-       tristate "MPC107/824x/85xx/52xx/86xx"
-       depends on PPC32
+       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/MPC8240/MPC8245 and
-         MPC85xx/MPC8641 family processors. The driver may also work on 52xx
-         family processors, though interrupts are known not to work.
+         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.
@@ -402,6 +464,30 @@ config I2C_MV64XXX
          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
@@ -429,9 +515,29 @@ config I2C_PASEMI
        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 targets"
-       depends on ARCH_PNX4008
+       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
@@ -439,28 +545,59 @@ config I2C_PNX
          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 (EXPERIMENTAL)"
-       depends on EXPERIMENTAL && ARCH_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
+       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 ARCH_S3C2410
+       depends on HAVE_S3C2410_I2C
        help
          Say Y here to include support for I2C controller in the
-         Samsung S3C2410 based System-on-Chip devices.
+         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"
@@ -473,7 +610,7 @@ config I2C_SH7760
 
 config I2C_SH_MOBILE
        tristate "SuperH Mobile I2C Controller"
-       depends on SUPERH
+       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.
@@ -493,9 +630,29 @@ config I2C_SIMTEC
          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
+       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
@@ -504,12 +661,68 @@ config I2C_VERSATILE
          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_XLR
+       tristate "XLR I2C support"
+       depends on CPU_XLR
+       help
+         This driver enables support for the on-chip I2C interface of
+         the Netlogic XLR/XLS MIPS processors.
+
+         This driver can also be built as a module.  If so, the module
+         will be called i2c-xlr.
+
+config I2C_EG20T
+       tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) I2C"
+       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 can be used for LAPIS Semiconductor IOH(Input/
+         Output Hub), ML7213, ML7223 and ML7831.
+         ML7213 IOH is for IVI(In-Vehicle Infotainment) use, ML7223 IOH is
+         for MP(Media Phone) use and ML7831 IOH is for general purpose use.
+         ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
+         ML7213/ML7223/ML7831 is completely compatible for 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.
@@ -533,6 +746,7 @@ config 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.
@@ -580,20 +794,6 @@ config I2C_TINY_USB
          This driver can also be built as a module.  If so, the module
          will be called i2c-tiny-usb.
 
-comment "Graphics adapter I2C/DDC channel drivers"
-       depends on PCI
-
-config I2C_VOODOO3
-       tristate "Voodoo 3"
-       depends on PCI
-       select I2C_ALGOBIT
-       help
-         If you say yes to this option, support will be included for the
-         Voodoo 3 I2C interface.
-
-         This driver can also be built as a module.  If so, the module
-         will be called i2c-voodoo3.
-
 comment "Other I2C/SMBus bus drivers"
 
 config I2C_ACORN
@@ -608,7 +808,7 @@ config I2C_ACORN
 
 config I2C_ELEKTOR
        tristate "Elektor ISA card"
-       depends on ISA && BROKEN_ON_SMP
+       depends on ISA && HAS_IOPORT && BROKEN_ON_SMP
        select I2C_ALGOPCF
        help
          This supports the PCF8584 ISA bus I2C adapter.  Say Y if you own
@@ -634,26 +834,6 @@ config I2C_PCA_ISA
          delays when I2C/SMBus chip drivers are loaded (e.g. at boot
          time).  If unsure, say N.
 
-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_SIBYTE
        tristate "SiByte SMBus interface"
        depends on SIBYTE_SB1xxx_SOC