Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | # |
| 2 | # Sensor device configuration |
| 3 | # |
| 4 | |
| 5 | menu "I2C Hardware Bus support" |
Peter Huewe | 3ddb59d | 2012-10-05 22:23:52 +0200 | [diff] [blame] | 6 | depends on HAS_IOMEM |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 7 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 8 | comment "PC SMBus host controller drivers" |
| 9 | depends on PCI |
| 10 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 11 | config I2C_ALI1535 |
| 12 | tristate "ALI 1535" |
Jan Engelhardt | 16538e6 | 2007-05-01 23:26:34 +0200 | [diff] [blame] | 13 | depends on PCI |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 14 | help |
| 15 | If you say yes to this option, support will be included for the SMB |
| 16 | Host controller on Acer Labs Inc. (ALI) M1535 South Bridges. The SMB |
| 17 | controller is part of the 7101 device, which is an ACPI-compliant |
| 18 | Power Management Unit (PMU). |
| 19 | |
| 20 | This driver can also be built as a module. If so, the module |
| 21 | will be called i2c-ali1535. |
| 22 | |
| 23 | config I2C_ALI1563 |
| 24 | tristate "ALI 1563" |
Kees Cook | 417e86c | 2013-01-16 18:53:37 -0800 | [diff] [blame] | 25 | depends on PCI |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 26 | help |
| 27 | If you say yes to this option, support will be included for the SMB |
| 28 | Host controller on Acer Labs Inc. (ALI) M1563 South Bridges. The SMB |
| 29 | controller is part of the 7101 device, which is an ACPI-compliant |
| 30 | Power Management Unit (PMU). |
| 31 | |
| 32 | This driver can also be built as a module. If so, the module |
| 33 | will be called i2c-ali1563. |
| 34 | |
| 35 | config I2C_ALI15X3 |
| 36 | tristate "ALI 15x3" |
Jan Engelhardt | 16538e6 | 2007-05-01 23:26:34 +0200 | [diff] [blame] | 37 | depends on PCI |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 38 | help |
| 39 | If you say yes to this option, support will be included for the |
| 40 | Acer Labs Inc. (ALI) M1514 and M1543 motherboard I2C interfaces. |
| 41 | |
| 42 | This driver can also be built as a module. If so, the module |
| 43 | will be called i2c-ali15x3. |
| 44 | |
| 45 | config I2C_AMD756 |
| 46 | tristate "AMD 756/766/768/8111 and nVidia nForce" |
Jan Engelhardt | 16538e6 | 2007-05-01 23:26:34 +0200 | [diff] [blame] | 47 | depends on PCI |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 48 | help |
| 49 | If you say yes to this option, support will be included for the AMD |
| 50 | 756/766/768 mainboard I2C interfaces. The driver also includes |
| 51 | support for the first (SMBus 1.0) I2C interface of the AMD 8111 and |
| 52 | the nVidia nForce I2C interface. |
| 53 | |
| 54 | This driver can also be built as a module. If so, the module |
| 55 | will be called i2c-amd756. |
| 56 | |
| 57 | config I2C_AMD756_S4882 |
| 58 | tristate "SMBus multiplexing on the Tyan S4882" |
Kees Cook | 417e86c | 2013-01-16 18:53:37 -0800 | [diff] [blame] | 59 | depends on I2C_AMD756 && X86 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 60 | help |
| 61 | Enabling this option will add specific SMBus support for the Tyan |
| 62 | S4882 motherboard. On this 4-CPU board, the SMBus is multiplexed |
| 63 | over 8 different channels, where the various memory module EEPROMs |
| 64 | and temperature sensors live. Saying yes here will give you access |
| 65 | to these in addition to the trunk. |
| 66 | |
| 67 | This driver can also be built as a module. If so, the module |
| 68 | will be called i2c-amd756-s4882. |
| 69 | |
| 70 | config I2C_AMD8111 |
| 71 | tristate "AMD 8111" |
Jan Engelhardt | 16538e6 | 2007-05-01 23:26:34 +0200 | [diff] [blame] | 72 | depends on PCI |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 73 | help |
| 74 | If you say yes to this option, support will be included for the |
| 75 | second (SMBus 2.0) AMD 8111 mainboard I2C interface. |
| 76 | |
| 77 | This driver can also be built as a module. If so, the module |
| 78 | will be called i2c-amd8111. |
| 79 | |
Wei Yan | 15ef277 | 2014-10-07 09:04:12 +0800 | [diff] [blame] | 80 | config I2C_HIX5HD2 |
| 81 | tristate "Hix5hd2 high-speed I2C driver" |
Ruqiang Ju | ae824f0 | 2016-10-24 16:39:49 +0800 | [diff] [blame] | 82 | depends on ARCH_HISI || ARCH_HIX5HD2 || COMPILE_TEST |
Wei Yan | 15ef277 | 2014-10-07 09:04:12 +0800 | [diff] [blame] | 83 | help |
Ruqiang Ju | ae824f0 | 2016-10-24 16:39:49 +0800 | [diff] [blame] | 84 | Say Y here to include support for the high-speed I2C controller |
| 85 | used in HiSilicon hix5hd2 SoCs. |
Wei Yan | 15ef277 | 2014-10-07 09:04:12 +0800 | [diff] [blame] | 86 | |
Ruqiang Ju | ae824f0 | 2016-10-24 16:39:49 +0800 | [diff] [blame] | 87 | This driver can also be built as a module. If so, the module |
Wei Yan | 15ef277 | 2014-10-07 09:04:12 +0800 | [diff] [blame] | 88 | will be called i2c-hix5hd2. |
| 89 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 90 | config I2C_I801 |
Seth Heasley | 3937643 | 2010-03-02 12:23:39 +0100 | [diff] [blame] | 91 | tristate "Intel 82801 (ICH/PCH)" |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 92 | depends on PCI |
Jean Delvare | 8eacfce | 2011-05-24 20:58:49 +0200 | [diff] [blame] | 93 | select CHECK_SIGNATURE if X86 && DMI |
Benjamin Tissoires | 7b0ed33 | 2016-06-24 16:39:49 +0200 | [diff] [blame] | 94 | select I2C_SMBUS |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 95 | help |
| 96 | If you say yes to this option, support will be included for the Intel |
| 97 | 801 family of mainboard I2C interfaces. Specifically, the following |
| 98 | versions of the chipset are supported: |
| 99 | 82801AA |
| 100 | 82801AB |
| 101 | 82801BA |
| 102 | 82801CA/CAM |
| 103 | 82801DB |
| 104 | 82801EB/ER (ICH5/ICH5R) |
| 105 | 6300ESB |
| 106 | ICH6 |
| 107 | ICH7 |
| 108 | ESB2 |
| 109 | ICH8 |
| 110 | ICH9 |
Seth Heasley | cb04e95 | 2010-10-04 13:27:14 -0700 | [diff] [blame] | 111 | EP80579 (Tolapai) |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 112 | ICH10 |
Seth Heasley | cb04e95 | 2010-10-04 13:27:14 -0700 | [diff] [blame] | 113 | 5/3400 Series (PCH) |
Seth Heasley | 662cda8 | 2011-03-20 14:50:53 +0100 | [diff] [blame] | 114 | 6 Series (PCH) |
Seth Heasley | e30d985 | 2010-10-31 21:06:59 +0100 | [diff] [blame] | 115 | Patsburg (PCH) |
Seth Heasley | 662cda8 | 2011-03-20 14:50:53 +0100 | [diff] [blame] | 116 | DH89xxCC (PCH) |
Seth Heasley | 6e2a851 | 2011-05-24 20:58:49 +0200 | [diff] [blame] | 117 | Panther Point (PCH) |
Seth Heasley | 062737f | 2012-03-26 21:47:19 +0200 | [diff] [blame] | 118 | Lynx Point (PCH) |
James Ralston | 4a8f1dd | 2012-09-10 10:14:02 +0200 | [diff] [blame] | 119 | Lynx Point-LP (PCH) |
Seth Heasley | c2db409c | 2013-01-30 15:25:32 +0000 | [diff] [blame] | 120 | Avoton (SOC) |
James Ralston | a3fc0ff | 2013-02-14 09:15:33 +0000 | [diff] [blame] | 121 | Wellsburg (PCH) |
Seth Heasley | f39901c | 2013-06-19 16:59:57 -0700 | [diff] [blame] | 122 | Coleto Creek (PCH) |
Jean Delvare | b299de8 | 2014-07-17 15:04:41 +0200 | [diff] [blame] | 123 | Wildcat Point (PCH) |
James Ralston | afc6592 | 2013-11-04 09:29:48 -0800 | [diff] [blame] | 124 | Wildcat Point-LP (PCH) |
Chew, Kean ho | 1b31e9b | 2014-03-01 00:03:56 +0800 | [diff] [blame] | 125 | BayTrail (SOC) |
james.d.ralston@intel.com | 3e27a84 | 2014-10-13 15:20:24 -0700 | [diff] [blame] | 126 | Sunrise Point-H (PCH) |
Devin Ryles | 3eee1799 | 2014-11-05 16:30:03 -0500 | [diff] [blame] | 127 | Sunrise Point-LP (PCH) |
Jarkko Nikula | 2b630df7 | 2015-10-26 13:26:56 +0200 | [diff] [blame] | 128 | DNV (SOC) |
| 129 | Broxton (SOC) |
Alexandra Yates | cdc5a31 | 2015-11-05 11:40:25 -0800 | [diff] [blame] | 130 | Lewisburg (PCH) |
Mika Westerberg | 9827f9e | 2017-02-01 19:20:59 +0300 | [diff] [blame] | 131 | Gemini Lake (SOC) |
Srinivas Pandruvada | 09a1de0 | 2017-05-18 11:23:06 +0300 | [diff] [blame] | 132 | Cannon Lake-H (PCH) |
| 133 | Cannon Lake-LP (PCH) |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 134 | |
| 135 | This driver can also be built as a module. If so, the module |
| 136 | will be called i2c-i801. |
| 137 | |
Alek Du | 5bc1200 | 2008-07-14 22:38:27 +0200 | [diff] [blame] | 138 | config I2C_ISCH |
| 139 | tristate "Intel SCH SMBus 1.0" |
Martin Schwidefsky | 0244ad0 | 2013-08-30 09:39:53 +0200 | [diff] [blame] | 140 | depends on PCI |
Denis Turischev | fd46a00 | 2010-03-01 18:59:55 +0200 | [diff] [blame] | 141 | select LPC_SCH |
Alek Du | 5bc1200 | 2008-07-14 22:38:27 +0200 | [diff] [blame] | 142 | help |
| 143 | Say Y here if you want to use SMBus controller on the Intel SCH |
| 144 | based systems. |
| 145 | |
| 146 | This driver can also be built as a module. If so, the module |
| 147 | will be called i2c-isch. |
| 148 | |
Neil Horman | 13f35ac | 2013-02-04 14:54:10 -0500 | [diff] [blame] | 149 | config I2C_ISMT |
| 150 | tristate "Intel iSMT SMBus Controller" |
| 151 | depends on PCI && X86 |
| 152 | help |
| 153 | If you say yes to this option, support will be included for the Intel |
| 154 | iSMT SMBus host controller interface. |
| 155 | |
| 156 | This driver can also be built as a module. If so, the module will be |
| 157 | called i2c-ismt. |
| 158 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 159 | config I2C_PIIX4 |
Crane Cai | 76b3e28 | 2009-09-18 22:45:50 +0200 | [diff] [blame] | 160 | tristate "Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC)" |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 161 | depends on PCI |
| 162 | help |
| 163 | If you say yes to this option, support will be included for the Intel |
| 164 | PIIX4 family of mainboard I2C interfaces. Specifically, the following |
| 165 | versions of the chipset are supported (note that Serverworks is part |
| 166 | of Broadcom): |
| 167 | Intel PIIX4 |
| 168 | Intel 440MX |
| 169 | ATI IXP200 |
| 170 | ATI IXP300 |
| 171 | ATI IXP400 |
| 172 | ATI SB600 |
Andrew Armenia | 2a2f740 | 2012-07-24 14:13:57 +0200 | [diff] [blame] | 173 | ATI SB700/SP5100 |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 174 | ATI SB800 |
Crane Cai | 3806e94b | 2009-11-07 13:10:46 +0100 | [diff] [blame] | 175 | AMD Hudson-2 |
Shane Huang | 032f708 | 2014-01-22 14:05:46 -0800 | [diff] [blame] | 176 | AMD ML |
Shane Huang | b996ac9 | 2013-06-03 18:24:55 +0800 | [diff] [blame] | 177 | AMD CZ |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 178 | Serverworks OSB4 |
| 179 | Serverworks CSB5 |
| 180 | Serverworks CSB6 |
| 181 | Serverworks HT-1000 |
Flavio Leitner | 506a8b6 | 2009-03-28 21:34:46 +0100 | [diff] [blame] | 182 | Serverworks HT-1100 |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 183 | SMSC Victory66 |
| 184 | |
Andrew Armenia | 2a2f740 | 2012-07-24 14:13:57 +0200 | [diff] [blame] | 185 | Some AMD chipsets contain two PIIX4-compatible SMBus |
| 186 | controllers. This driver will attempt to use both controllers |
| 187 | on the SB700/SP5100, if they have been initialized by the BIOS. |
| 188 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 189 | This driver can also be built as a module. If so, the module |
| 190 | will be called i2c-piix4. |
| 191 | |
| 192 | config I2C_NFORCE2 |
| 193 | tristate "Nvidia nForce2, nForce3 and nForce4" |
| 194 | depends on PCI |
| 195 | help |
| 196 | If you say yes to this option, support will be included for the Nvidia |
| 197 | nForce2, nForce3 and nForce4 families of mainboard I2C interfaces. |
| 198 | |
| 199 | This driver can also be built as a module. If so, the module |
| 200 | will be called i2c-nforce2. |
| 201 | |
| 202 | config I2C_NFORCE2_S4985 |
| 203 | tristate "SMBus multiplexing on the Tyan S4985" |
Kees Cook | 417e86c | 2013-01-16 18:53:37 -0800 | [diff] [blame] | 204 | depends on I2C_NFORCE2 && X86 |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 205 | help |
| 206 | Enabling this option will add specific SMBus support for the Tyan |
| 207 | S4985 motherboard. On this 4-CPU board, the SMBus is multiplexed |
| 208 | over 4 different channels, where the various memory module EEPROMs |
| 209 | live. Saying yes here will give you access to these in addition |
| 210 | to the trunk. |
| 211 | |
| 212 | This driver can also be built as a module. If so, the module |
| 213 | will be called i2c-nforce2-s4985. |
| 214 | |
| 215 | config I2C_SIS5595 |
| 216 | tristate "SiS 5595" |
| 217 | depends on PCI |
| 218 | help |
| 219 | If you say yes to this option, support will be included for the |
| 220 | SiS5595 SMBus (a subset of I2C) interface. |
| 221 | |
| 222 | This driver can also be built as a module. If so, the module |
| 223 | will be called i2c-sis5595. |
| 224 | |
| 225 | config I2C_SIS630 |
Amaury Decrême | 974d6a3 | 2013-01-28 22:21:05 +0100 | [diff] [blame] | 226 | tristate "SiS 630/730/964" |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 227 | depends on PCI |
| 228 | help |
| 229 | If you say yes to this option, support will be included for the |
Amaury Decrême | 974d6a3 | 2013-01-28 22:21:05 +0100 | [diff] [blame] | 230 | SiS630, SiS730 and SiS964 SMBus (a subset of I2C) interface. |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 231 | |
| 232 | This driver can also be built as a module. If so, the module |
| 233 | will be called i2c-sis630. |
| 234 | |
| 235 | config I2C_SIS96X |
| 236 | tristate "SiS 96x" |
| 237 | depends on PCI |
| 238 | help |
| 239 | If you say yes to this option, support will be included for the SiS |
| 240 | 96x SMBus (a subset of I2C) interfaces. Specifically, the following |
| 241 | chipsets are supported: |
| 242 | 645/961 |
| 243 | 645DX/961 |
| 244 | 645DX/962 |
| 245 | 648/961 |
| 246 | 650/961 |
| 247 | 735 |
| 248 | 745 |
| 249 | |
| 250 | This driver can also be built as a module. If so, the module |
| 251 | will be called i2c-sis96x. |
| 252 | |
| 253 | config I2C_VIA |
| 254 | tristate "VIA VT82C586B" |
Kees Cook | 417e86c | 2013-01-16 18:53:37 -0800 | [diff] [blame] | 255 | depends on PCI |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 256 | select I2C_ALGOBIT |
| 257 | help |
| 258 | If you say yes to this option, support will be included for the VIA |
| 259 | 82C586B I2C interface |
| 260 | |
| 261 | This driver can also be built as a module. If so, the module |
| 262 | will be called i2c-via. |
| 263 | |
| 264 | config I2C_VIAPRO |
Jean Delvare | 01d56a6 | 2012-10-05 22:23:53 +0200 | [diff] [blame] | 265 | tristate "VIA VT82C596/82C686/82xx and CX700/VX8xx/VX900" |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 266 | depends on PCI |
| 267 | help |
| 268 | If you say yes to this option, support will be included for the VIA |
| 269 | VT82C596 and later SMBus interface. Specifically, the following |
| 270 | chipsets are supported: |
| 271 | VT82C596A/B |
| 272 | VT82C686A/B |
| 273 | VT8231 |
| 274 | VT8233/A |
| 275 | VT8235 |
| 276 | VT8237R/A/S |
| 277 | VT8251 |
| 278 | CX700 |
Harald Welte | a231591 | 2009-06-15 18:01:49 +0200 | [diff] [blame] | 279 | VX800/VX820 |
| 280 | VX855/VX875 |
Jean Delvare | 01d56a6 | 2012-10-05 22:23:53 +0200 | [diff] [blame] | 281 | VX900 |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 282 | |
| 283 | This driver can also be built as a module. If so, the module |
| 284 | will be called i2c-viapro. |
| 285 | |
Jean Delvare | cfd550e | 2009-09-18 22:45:52 +0200 | [diff] [blame] | 286 | if ACPI |
| 287 | |
| 288 | comment "ACPI drivers" |
| 289 | |
| 290 | config I2C_SCMI |
| 291 | tristate "SMBus Control Method Interface" |
| 292 | help |
| 293 | This driver supports the SMBus Control Method Interface. It needs the |
| 294 | BIOS to declare ACPI control methods as described in the SMBus Control |
| 295 | Method Interface specification. |
| 296 | |
| 297 | To compile this driver as a module, choose M here: |
| 298 | the module will be called i2c-scmi. |
| 299 | |
| 300 | endif # ACPI |
| 301 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 302 | comment "Mac SMBus host controller drivers" |
| 303 | depends on PPC_CHRP || PPC_PMAC |
| 304 | |
| 305 | config I2C_HYDRA |
| 306 | tristate "CHRP Apple Hydra Mac I/O I2C interface" |
Kees Cook | 417e86c | 2013-01-16 18:53:37 -0800 | [diff] [blame] | 307 | depends on PCI && PPC_CHRP |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 308 | select I2C_ALGOBIT |
| 309 | help |
| 310 | This supports the use of the I2C interface in the Apple Hydra Mac |
| 311 | I/O chip on some CHRP machines (e.g. the LongTrail). Say Y if you |
| 312 | have such a machine. |
| 313 | |
| 314 | This support is also available as a module. If so, the module |
| 315 | will be called i2c-hydra. |
| 316 | |
| 317 | config I2C_POWERMAC |
| 318 | tristate "Powermac I2C interface" |
| 319 | depends on PPC_PMAC |
| 320 | default y |
| 321 | help |
| 322 | This exposes the various PowerMac i2c interfaces to the linux i2c |
| 323 | layer and to userland. It is used by various drivers on the PowerMac |
| 324 | platform, and should generally be enabled. |
| 325 | |
| 326 | This support is also available as a module. If so, the module |
| 327 | will be called i2c-powermac. |
| 328 | |
| 329 | comment "I2C system bus drivers (mostly embedded / system-on-chip)" |
| 330 | |
Brendan Higgins | f327c68 | 2017-06-20 14:15:15 -0700 | [diff] [blame] | 331 | config I2C_ASPEED |
| 332 | tristate "Aspeed I2C Controller" |
| 333 | depends on ARCH_ASPEED || COMPILE_TEST |
| 334 | help |
| 335 | If you say yes to this option, support will be included for the |
| 336 | Aspeed I2C controller. |
| 337 | |
| 338 | This driver can also be built as a module. If so, the module |
| 339 | will be called i2c-aspeed. |
| 340 | |
Andrew Victor | 813e30e | 2006-12-10 21:21:30 +0100 | [diff] [blame] | 341 | config I2C_AT91 |
| 342 | tristate "Atmel AT91 I2C Two-Wire interface (TWI)" |
Kees Cook | 417e86c | 2013-01-16 18:53:37 -0800 | [diff] [blame] | 343 | depends on ARCH_AT91 |
Andrew Victor | 813e30e | 2006-12-10 21:21:30 +0100 | [diff] [blame] | 344 | help |
| 345 | This supports the use of the I2C interface on Atmel AT91 |
| 346 | processors. |
| 347 | |
Nikolaus Voss | fac368a | 2011-11-08 11:49:46 +0100 | [diff] [blame] | 348 | A serious problem is that there is no documented way to issue |
| 349 | repeated START conditions for more than two messages, as needed |
David Brownell | 24d0fb4 | 2007-10-13 23:56:32 +0200 | [diff] [blame] | 350 | to support combined I2C messages. Use the i2c-gpio driver |
Nikolaus Voss | fac368a | 2011-11-08 11:49:46 +0100 | [diff] [blame] | 351 | unless your system can cope with this limitation. |
| 352 | |
| 353 | Caution! at91rm9200, at91sam9261, at91sam9260, at91sam9263 devices |
| 354 | don't have clock stretching in transmission mode. For that reason, |
| 355 | you can encounter underrun issues causing premature stop sendings if |
| 356 | the latency to fill the transmission register is too long. If you |
| 357 | are facing this situation, use the i2c-gpio driver. |
David Brownell | 24d0fb4 | 2007-10-13 23:56:32 +0200 | [diff] [blame] | 358 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 359 | config I2C_AU1550 |
Manuel Lauss | 809f36c | 2011-11-01 20:03:30 +0100 | [diff] [blame] | 360 | tristate "Au1550/Au1200/Au1300 SMBus interface" |
Manuel Lauss | 376638603 | 2011-08-12 11:39:45 +0200 | [diff] [blame] | 361 | depends on MIPS_ALCHEMY |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 362 | help |
| 363 | If you say yes to this option, support will be included for the |
Manuel Lauss | 809f36c | 2011-11-01 20:03:30 +0100 | [diff] [blame] | 364 | Au1550/Au1200/Au1300 SMBus interface. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 365 | |
| 366 | This driver can also be built as a module. If so, the module |
| 367 | will be called i2c-au1550. |
| 368 | |
Anders Berg | 08678b8 | 2014-10-03 13:08:02 +0200 | [diff] [blame] | 369 | config I2C_AXXIA |
| 370 | tristate "Axxia I2C controller" |
| 371 | depends on ARCH_AXXIA || COMPILE_TEST |
| 372 | default ARCH_AXXIA |
| 373 | help |
| 374 | Say yes if you want to support the I2C bus on Axxia platforms. |
| 375 | |
| 376 | Please note that this controller is limited to transfers of maximum |
| 377 | 255 bytes in length. Any attempt to to a larger transfer will return |
| 378 | an error. |
| 379 | |
Stephen Warren | f3b54b9 | 2013-02-11 19:47:56 -0700 | [diff] [blame] | 380 | config I2C_BCM2835 |
| 381 | tristate "Broadcom BCM2835 I2C controller" |
| 382 | depends on ARCH_BCM2835 |
| 383 | help |
| 384 | If you say yes to this option, support will be included for the |
| 385 | BCM2835 I2C controller. |
| 386 | |
| 387 | If you don't know what to do here, say N. |
| 388 | |
| 389 | This support is also available as a module. If so, the module |
| 390 | will be called i2c-bcm2835. |
| 391 | |
Ray Jui | e6e5dd3 | 2015-02-07 21:25:24 -0800 | [diff] [blame] | 392 | config I2C_BCM_IPROC |
| 393 | tristate "Broadcom iProc I2C controller" |
| 394 | depends on ARCH_BCM_IPROC || COMPILE_TEST |
| 395 | default ARCH_BCM_IPROC |
| 396 | help |
| 397 | If you say yes to this option, support will be included for the |
| 398 | Broadcom iProc I2C controller. |
| 399 | |
| 400 | If you don't know what to do here, say N. |
| 401 | |
Tim Kryger | 93d1724 | 2013-11-14 13:02:13 -0800 | [diff] [blame] | 402 | config I2C_BCM_KONA |
| 403 | tristate "BCM Kona I2C adapter" |
| 404 | depends on ARCH_BCM_MOBILE |
| 405 | default y |
| 406 | help |
| 407 | If you say yes to this option, support will be included for the |
| 408 | I2C interface on the Broadcom Kona family of processors. |
| 409 | |
Masanari Iida | f54619f | 2014-09-18 12:09:42 +0900 | [diff] [blame] | 410 | If you do not need KONA I2C interface, say N. |
Tim Kryger | 93d1724 | 2013-11-14 13:02:13 -0800 | [diff] [blame] | 411 | |
Kamal Dasu | dd1aa25 | 2015-06-09 15:36:20 -0400 | [diff] [blame] | 412 | config I2C_BRCMSTB |
| 413 | tristate "BRCM Settop I2C controller" |
Jaedon Shin | bcf358a | 2016-07-15 12:45:08 +0900 | [diff] [blame] | 414 | depends on ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST |
Kamal Dasu | dd1aa25 | 2015-06-09 15:36:20 -0400 | [diff] [blame] | 415 | default y |
| 416 | help |
| 417 | If you say yes to this option, support will be included for the |
| 418 | I2C interface on the Broadcom Settop SoCs. |
| 419 | |
| 420 | If you do not need I2C interface, say N. |
| 421 | |
Bryan Wu | d24ecfc | 2007-05-01 23:26:32 +0200 | [diff] [blame] | 422 | config I2C_BLACKFIN_TWI |
| 423 | tristate "Blackfin TWI I2C support" |
Bryan Wu | d4ce220 | 2008-04-22 22:16:48 +0200 | [diff] [blame] | 424 | depends on BLACKFIN |
Mike Frysinger | 4d2bee5 | 2008-07-14 22:38:22 +0200 | [diff] [blame] | 425 | depends on !BF561 && !BF531 && !BF532 && !BF533 |
Bryan Wu | d24ecfc | 2007-05-01 23:26:32 +0200 | [diff] [blame] | 426 | help |
Mike Frysinger | 4d2bee5 | 2008-07-14 22:38:22 +0200 | [diff] [blame] | 427 | This is the I2C bus driver for Blackfin on-chip TWI interface. |
Bryan Wu | d4ce220 | 2008-04-22 22:16:48 +0200 | [diff] [blame] | 428 | |
Bryan Wu | d24ecfc | 2007-05-01 23:26:32 +0200 | [diff] [blame] | 429 | This driver can also be built as a module. If so, the module |
| 430 | will be called i2c-bfin-twi. |
| 431 | |
| 432 | config I2C_BLACKFIN_TWI_CLK_KHZ |
| 433 | int "Blackfin TWI I2C clock (kHz)" |
| 434 | depends on I2C_BLACKFIN_TWI |
Michael Hennerich | 9528d1c | 2009-05-18 08:14:41 -0400 | [diff] [blame] | 435 | range 21 400 |
Bryan Wu | d24ecfc | 2007-05-01 23:26:32 +0200 | [diff] [blame] | 436 | default 50 |
| 437 | help |
| 438 | The unit of the TWI clock is kHz. |
| 439 | |
Soren Brinkmann | df8eb56 | 2014-04-04 14:27:55 -0700 | [diff] [blame] | 440 | config I2C_CADENCE |
| 441 | tristate "Cadence I2C Controller" |
Jan Kotas | f898978 | 2016-12-08 09:47:58 +0000 | [diff] [blame] | 442 | depends on ARCH_ZYNQ || ARM64 || XTENSA |
Soren Brinkmann | df8eb56 | 2014-04-04 14:27:55 -0700 | [diff] [blame] | 443 | help |
| 444 | Say yes here to select Cadence I2C Host Controller. This controller is |
| 445 | e.g. used by Xilinx Zynq. |
| 446 | |
Aaro Koskinen | 0857ba3 | 2012-11-18 18:36:19 +0200 | [diff] [blame] | 447 | config I2C_CBUS_GPIO |
| 448 | tristate "CBUS I2C driver" |
Geert Uytterhoeven | 7e5cd69 | 2015-05-05 18:32:22 +0200 | [diff] [blame] | 449 | depends on GPIOLIB || COMPILE_TEST |
Aaro Koskinen | 0857ba3 | 2012-11-18 18:36:19 +0200 | [diff] [blame] | 450 | help |
| 451 | Support for CBUS access using I2C API. Mostly relevant for Nokia |
| 452 | Internet Tablets (770, N800 and N810). |
| 453 | |
| 454 | This driver can also be built as a module. If so, the module |
| 455 | will be called i2c-cbus-gpio. |
| 456 | |
Jochen Friedrich | 61045db | 2008-07-14 22:38:27 +0200 | [diff] [blame] | 457 | config I2C_CPM |
| 458 | tristate "Freescale CPM1 or CPM2 (MPC8xx/826x)" |
Richard Weinberger | 62c19c9 | 2014-02-09 19:47:40 +0100 | [diff] [blame] | 459 | depends on CPM1 || CPM2 |
Jochen Friedrich | 61045db | 2008-07-14 22:38:27 +0200 | [diff] [blame] | 460 | help |
| 461 | This supports the use of the I2C interface on Freescale |
| 462 | processors with CPM1 or CPM2. |
| 463 | |
| 464 | This driver can also be built as a module. If so, the module |
| 465 | will be called i2c-cpm. |
| 466 | |
Vladimir Barinov | 95a7f10 | 2007-10-13 23:56:30 +0200 | [diff] [blame] | 467 | config I2C_DAVINCI |
| 468 | tristate "DaVinci I2C driver" |
Santosh Shilimkar | d654b54 | 2013-07-24 20:28:19 -0400 | [diff] [blame] | 469 | depends on ARCH_DAVINCI || ARCH_KEYSTONE |
Vladimir Barinov | 95a7f10 | 2007-10-13 23:56:30 +0200 | [diff] [blame] | 470 | help |
| 471 | Support for TI DaVinci I2C controller driver. |
| 472 | |
| 473 | This driver can also be built as a module. If so, the module |
| 474 | will be called i2c-davinci. |
| 475 | |
| 476 | Please note that this driver might be needed to bring up other |
| 477 | devices such as DaVinci NIC. |
| 478 | For details please see http://www.ti.com/davinci |
| 479 | |
Axel Lin | e68bb91 | 2012-09-10 10:14:02 +0200 | [diff] [blame] | 480 | config I2C_DESIGNWARE_CORE |
| 481 | tristate |
| 482 | |
Dirk Brandewie | 2373f6b | 2011-10-29 10:57:23 +0100 | [diff] [blame] | 483 | config I2C_DESIGNWARE_PLATFORM |
Masanari Iida | 6b2aac4 | 2012-04-14 00:14:11 +0900 | [diff] [blame] | 484 | tristate "Synopsys DesignWare Platform" |
Axel Lin | e68bb91 | 2012-09-10 10:14:02 +0200 | [diff] [blame] | 485 | select I2C_DESIGNWARE_CORE |
Carl Peng | a445900 | 2014-09-30 13:04:55 +0300 | [diff] [blame] | 486 | depends on (ACPI && COMMON_CLK) || !ACPI |
Baruch Siach | 1ab52cf | 2009-06-22 16:36:29 +0300 | [diff] [blame] | 487 | help |
| 488 | If you say yes to this option, support will be included for the |
Luis Oliveira | 9f3e065 | 2017-06-22 11:17:32 +0100 | [diff] [blame] | 489 | Synopsys DesignWare I2C adapter. |
Baruch Siach | 1ab52cf | 2009-06-22 16:36:29 +0300 | [diff] [blame] | 490 | |
| 491 | This driver can also be built as a module. If so, the module |
Dirk Brandewie | 2373f6b | 2011-10-29 10:57:23 +0100 | [diff] [blame] | 492 | will be called i2c-designware-platform. |
Baruch Siach | 1ab52cf | 2009-06-22 16:36:29 +0300 | [diff] [blame] | 493 | |
Luis Oliveira | 9f3e065 | 2017-06-22 11:17:32 +0100 | [diff] [blame] | 494 | config I2C_DESIGNWARE_SLAVE |
| 495 | bool "Synopsys DesignWare Slave" |
| 496 | select I2C_SLAVE |
| 497 | depends on I2C_DESIGNWARE_PLATFORM |
| 498 | help |
| 499 | If you say yes to this option, support will be included for the |
| 500 | Synopsys DesignWare I2C slave adapter. |
| 501 | |
| 502 | This is not a standalone module, this module compiles together with |
| 503 | i2c-designware-core. |
| 504 | |
Dirk Brandewie | fe20ff5 | 2011-10-06 11:26:35 -0700 | [diff] [blame] | 505 | config I2C_DESIGNWARE_PCI |
| 506 | tristate "Synopsys DesignWare PCI" |
| 507 | depends on PCI |
Axel Lin | e68bb91 | 2012-09-10 10:14:02 +0200 | [diff] [blame] | 508 | select I2C_DESIGNWARE_CORE |
Dirk Brandewie | fe20ff5 | 2011-10-06 11:26:35 -0700 | [diff] [blame] | 509 | help |
| 510 | If you say yes to this option, support will be included for the |
| 511 | Synopsys DesignWare I2C adapter. Only master mode is supported. |
| 512 | |
| 513 | This driver can also be built as a module. If so, the module |
| 514 | will be called i2c-designware-pci. |
Paul Mundt | 4ad48e6 | 2008-10-14 17:30:03 +0200 | [diff] [blame] | 515 | |
David Box | 894acb2 | 2015-01-15 01:12:17 -0800 | [diff] [blame] | 516 | config I2C_DESIGNWARE_BAYTRAIL |
| 517 | bool "Intel Baytrail I2C semaphore support" |
Jarkko Nikula | f41021b | 2015-12-10 13:48:44 +0200 | [diff] [blame] | 518 | depends on ACPI |
| 519 | depends on (I2C_DESIGNWARE_PLATFORM=m && IOSF_MBI) || \ |
| 520 | (I2C_DESIGNWARE_PLATFORM=y && IOSF_MBI=y) |
David Box | 894acb2 | 2015-01-15 01:12:17 -0800 | [diff] [blame] | 521 | help |
| 522 | This driver enables managed host access to the PMIC I2C bus on select |
| 523 | Intel BayTrail platforms using the X-Powers AXP288 PMIC. It allows |
| 524 | the host to request uninterrupted access to the PMIC's I2C bus from |
| 525 | the platform firmware controlling it. You should say Y if running on |
| 526 | a BayTrail system using the AXP288. |
| 527 | |
Baruch Siach | 4a7a082 | 2015-03-19 13:16:46 +0200 | [diff] [blame] | 528 | config I2C_DIGICOLOR |
| 529 | tristate "Conexant Digicolor I2C driver" |
| 530 | depends on ARCH_DIGICOLOR |
| 531 | help |
| 532 | Support for Conexant Digicolor SoCs (CX92755) I2C controller driver. |
| 533 | |
| 534 | This driver can also be built as a module. If so, the module |
| 535 | will be called i2c-digicolor. |
| 536 | |
Uwe Kleine-König | 1b5b237 | 2014-03-25 11:48:46 +0100 | [diff] [blame] | 537 | config I2C_EFM32 |
| 538 | tristate "EFM32 I2C controller" |
| 539 | depends on ARCH_EFM32 || COMPILE_TEST |
| 540 | help |
| 541 | This driver supports the i2c block found in Energy Micro's EFM32 |
| 542 | SoCs. |
| 543 | |
Jayachandran C | 3e1b76b | 2012-01-23 18:01:29 +0530 | [diff] [blame] | 544 | config I2C_EG20T |
| 545 | tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) I2C" |
Paul Burton | 7a852b0 | 2015-11-30 16:21:39 +0000 | [diff] [blame] | 546 | depends on PCI && (X86_32 || MIPS || COMPILE_TEST) |
Jayachandran C | 3e1b76b | 2012-01-23 18:01:29 +0530 | [diff] [blame] | 547 | help |
| 548 | This driver is for PCH(Platform controller Hub) I2C of EG20T which |
| 549 | is an IOH(Input/Output Hub) for x86 embedded processor. |
| 550 | This driver can access PCH I2C bus device. |
| 551 | |
| 552 | This driver also can be used for LAPIS Semiconductor IOH(Input/ |
| 553 | Output Hub), ML7213, ML7223 and ML7831. |
| 554 | ML7213 IOH is for IVI(In-Vehicle Infotainment) use, ML7223 IOH is |
| 555 | for MP(Media Phone) use and ML7831 IOH is for general purpose use. |
| 556 | ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series. |
| 557 | ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH. |
| 558 | |
Wolfram Sang | 5faf6e1 | 2015-07-11 09:46:23 +0200 | [diff] [blame] | 559 | config I2C_EMEV2 |
| 560 | tristate "EMMA Mobile series I2C adapter" |
| 561 | depends on HAVE_CLK |
Wolfram Sang | b7d518e | 2015-12-17 13:09:32 +0100 | [diff] [blame] | 562 | select I2C_SLAVE |
Wolfram Sang | 5faf6e1 | 2015-07-11 09:46:23 +0200 | [diff] [blame] | 563 | help |
| 564 | If you say yes to this option, support will be included for the |
| 565 | I2C interface on the Renesas Electronics EM/EV family of processors. |
| 566 | |
Naveen Krishna Ch | 8a73cd4 | 2013-10-16 11:00:42 +0530 | [diff] [blame] | 567 | config I2C_EXYNOS5 |
| 568 | tristate "Exynos5 high-speed I2C driver" |
Naveen Krishna Ch | 2374a53 | 2014-09-16 15:03:17 +0530 | [diff] [blame] | 569 | depends on ARCH_EXYNOS && OF |
Sachin Kamat | 741d358 | 2014-06-25 15:32:03 +0530 | [diff] [blame] | 570 | default y |
Naveen Krishna Ch | 8a73cd4 | 2013-10-16 11:00:42 +0530 | [diff] [blame] | 571 | help |
Sachin Kamat | 741d358 | 2014-06-25 15:32:03 +0530 | [diff] [blame] | 572 | High-speed I2C controller on Exynos5 based Samsung SoCs. |
Naveen Krishna Ch | 8a73cd4 | 2013-10-16 11:00:42 +0530 | [diff] [blame] | 573 | |
Haavard Skinnemoen | 1c23af9 | 2007-05-01 23:26:34 +0200 | [diff] [blame] | 574 | config I2C_GPIO |
| 575 | tristate "GPIO-based bitbanging I2C" |
Geert Uytterhoeven | 7e5cd69 | 2015-05-05 18:32:22 +0200 | [diff] [blame] | 576 | depends on GPIOLIB || COMPILE_TEST |
Haavard Skinnemoen | 1c23af9 | 2007-05-01 23:26:34 +0200 | [diff] [blame] | 577 | select I2C_ALGOBIT |
| 578 | help |
| 579 | This is a very simple bitbanging I2C driver utilizing the |
| 580 | arch-neutral GPIO API to control the SCL and SDA lines. |
| 581 | |
Paul Mundt | 4ad48e6 | 2008-10-14 17:30:03 +0200 | [diff] [blame] | 582 | config I2C_HIGHLANDER |
| 583 | tristate "Highlander FPGA SMBus interface" |
| 584 | depends on SH_HIGHLANDER |
| 585 | help |
| 586 | If you say yes to this option, support will be included for |
| 587 | the SMBus interface located in the FPGA on various Highlander |
| 588 | boards, particularly the R0P7780LC0011RL and R0P7785LC0011RL |
| 589 | FPGAs. This is wholly unrelated to the SoC I2C. |
| 590 | |
| 591 | This driver can also be built as a module. If so, the module |
| 592 | will be called i2c-highlander. |
| 593 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 594 | config I2C_IBM_IIC |
| 595 | tristate "IBM PPC 4xx on-chip I2C interface" |
Sean MacLennan | 838349b | 2008-04-22 22:16:47 +0200 | [diff] [blame] | 596 | depends on 4xx |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 597 | help |
Wolfram Sang | 4c03f68 | 2008-04-22 22:16:47 +0200 | [diff] [blame] | 598 | Say Y here if you want to use IIC peripheral found on |
| 599 | embedded IBM PPC 4xx based systems. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 600 | |
| 601 | This driver can also be built as a module. If so, the module |
| 602 | will be called i2c-ibm_iic. |
| 603 | |
James Hogan | 27bce45 | 2014-11-13 15:32:21 -0300 | [diff] [blame] | 604 | config I2C_IMG |
| 605 | tristate "Imagination Technologies I2C SCB Controller" |
Andrew Bresticker | 06205206 | 2014-11-18 15:58:33 -0800 | [diff] [blame] | 606 | depends on MIPS || METAG || COMPILE_TEST |
James Hogan | 27bce45 | 2014-11-13 15:32:21 -0300 | [diff] [blame] | 607 | help |
| 608 | Say Y here if you want to use the IMG I2C SCB controller, |
Andrew Bresticker | 06205206 | 2014-11-18 15:58:33 -0800 | [diff] [blame] | 609 | available on the TZ1090 and other IMG SoCs. |
James Hogan | 27bce45 | 2014-11-13 15:32:21 -0300 | [diff] [blame] | 610 | |
| 611 | This driver can also be built as a module. If so, the module |
| 612 | will be called i2c-img-scb. |
| 613 | |
Darius Augulis | aa11e38 | 2009-01-30 10:32:28 +0200 | [diff] [blame] | 614 | config I2C_IMX |
| 615 | tristate "IMX I2C interface" |
Greg Ungerer | 1779165 | 2016-10-17 11:54:05 +1000 | [diff] [blame] | 616 | depends on ARCH_MXC || ARCH_LAYERSCAPE || COLDFIRE |
Darius Augulis | aa11e38 | 2009-01-30 10:32:28 +0200 | [diff] [blame] | 617 | help |
| 618 | Say Y here if you want to use the IIC bus controller on |
Greg Ungerer | 1779165 | 2016-10-17 11:54:05 +1000 | [diff] [blame] | 619 | the Freescale i.MX/MXC, Layerscape or ColdFire processors. |
Darius Augulis | aa11e38 | 2009-01-30 10:32:28 +0200 | [diff] [blame] | 620 | |
| 621 | This driver can also be built as a module. If so, the module |
| 622 | will be called i2c-imx. |
| 623 | |
Gao Pan | a55fa9d | 2016-11-30 10:40:47 +0800 | [diff] [blame] | 624 | config I2C_IMX_LPI2C |
| 625 | tristate "IMX Low Power I2C interface" |
| 626 | depends on ARCH_MXC || COMPILE_TEST |
| 627 | help |
| 628 | Say Y here if you want to use the Low Power IIC bus controller |
| 629 | on the Freescale i.MX processors. |
| 630 | |
| 631 | This driver can also be built as a module. If so, the module |
| 632 | will be called i2c-imx-lpi2c. |
| 633 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 634 | config I2C_IOP3XX |
Dan Williams | 285f5fa | 2006-12-07 02:59:39 +0100 | [diff] [blame] | 635 | tristate "Intel IOPx3xx and IXP4xx on-chip I2C interface" |
Jan Engelhardt | 16538e6 | 2007-05-01 23:26:34 +0200 | [diff] [blame] | 636 | depends on ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || ARCH_IOP13XX |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 637 | help |
| 638 | Say Y here if you want to use the IIC bus controller on |
Dan Williams | 285f5fa | 2006-12-07 02:59:39 +0100 | [diff] [blame] | 639 | the Intel IOPx3xx I/O Processors or IXP4xx Network Processors. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 640 | |
| 641 | This driver can also be built as a module. If so, the module |
| 642 | will be called i2c-iop3xx. |
| 643 | |
Zubair Lutfullah Kakakhel | ba92222 | 2015-03-31 14:03:55 +0100 | [diff] [blame] | 644 | config I2C_JZ4780 |
| 645 | tristate "JZ4780 I2C controller interface support" |
| 646 | depends on MACH_JZ4780 || COMPILE_TEST |
| 647 | help |
| 648 | If you say yes to this option, support will be included for the |
| 649 | Ingenic JZ4780 I2C controller. |
| 650 | |
| 651 | If you don't know what to do here, say N. |
| 652 | |
Kevin Strasser | e0b9b7b | 2013-06-23 21:00:04 -0700 | [diff] [blame] | 653 | config I2C_KEMPLD |
| 654 | tristate "Kontron COM I2C Controller" |
| 655 | depends on MFD_KEMPLD |
| 656 | help |
| 657 | This enables support for the I2C bus interface on some Kontron ETX |
| 658 | and COMexpress (ETXexpress) modules. |
| 659 | |
| 660 | This driver can also be built as a module. If so, the module |
| 661 | will be called i2c-kempld. |
| 662 | |
Joachim Eastwood | 3f9c37a | 2015-08-16 20:10:16 +0200 | [diff] [blame] | 663 | config I2C_LPC2K |
| 664 | tristate "I2C bus support for NXP LPC2K/LPC178x/18xx/43xx" |
| 665 | depends on OF && (ARCH_LPC18XX || COMPILE_TEST) |
| 666 | help |
| 667 | This driver supports the I2C interface found several NXP |
| 668 | devices including LPC2xxx, LPC178x/7x and LPC18xx/43xx. |
| 669 | |
| 670 | This driver can also be built as a module. If so, the module |
| 671 | will be called i2c-lpc2k. |
| 672 | |
Beniamino Galvani | 30021e3 | 2014-11-13 20:32:01 +0100 | [diff] [blame] | 673 | config I2C_MESON |
| 674 | tristate "Amlogic Meson I2C controller" |
Ben Dooks | 9140178 | 2016-07-06 21:17:05 +0100 | [diff] [blame] | 675 | depends on ARCH_MESON || COMPILE_TEST |
Beniamino Galvani | 30021e3 | 2014-11-13 20:32:01 +0100 | [diff] [blame] | 676 | help |
| 677 | If you say yes to this option, support will be included for the |
| 678 | I2C interface on the Amlogic Meson family of SoCs. |
| 679 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 680 | config I2C_MPC |
Wolfgang Grandegger | f00d738 | 2010-02-17 11:19:19 +0100 | [diff] [blame] | 681 | tristate "MPC107/824x/85xx/512x/52xx/83xx/86xx" |
Kumar Gala | 0724d46 | 2011-03-15 11:02:43 -0500 | [diff] [blame] | 682 | depends on PPC |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 683 | help |
| 684 | If you say yes to this option, support will be included for the |
Wolfgang Grandegger | f00d738 | 2010-02-17 11:19:19 +0100 | [diff] [blame] | 685 | built-in I2C interface on the MPC107, Tsi107, MPC512x, MPC52xx, |
| 686 | MPC8240, MPC8245, MPC83xx, MPC85xx and MPC8641 family processors. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 687 | |
| 688 | This driver can also be built as a module. If so, the module |
| 689 | will be called i2c-mpc. |
| 690 | |
Xudong Chen | ce38815 | 2015-05-21 16:53:28 +0800 | [diff] [blame] | 691 | config I2C_MT65XX |
| 692 | tristate "MediaTek I2C adapter" |
| 693 | depends on ARCH_MEDIATEK || COMPILE_TEST |
Geert Uytterhoeven | fc0a1f0 | 2015-06-26 14:12:10 +0200 | [diff] [blame] | 694 | depends on HAS_DMA |
Xudong Chen | ce38815 | 2015-05-21 16:53:28 +0800 | [diff] [blame] | 695 | help |
| 696 | This selects the MediaTek(R) Integrated Inter Circuit bus driver |
| 697 | for MT65xx and MT81xx. |
| 698 | If you want to use MediaTek(R) I2C interface, say Y or M here. |
| 699 | If unsure, say N. |
| 700 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 701 | config I2C_MV64XXX |
| 702 | tristate "Marvell mv64xxx I2C Controller" |
Thomas Petazzoni | 05872b8 | 2016-04-22 15:19:51 +0200 | [diff] [blame] | 703 | depends on MV64X60 || PLAT_ORION || ARCH_SUNXI || ARCH_MVEBU |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 704 | help |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 705 | If you say yes to this option, support will be included for the |
| 706 | built-in I2C interface on the Marvell 64xxx line of host bridges. |
Maxime Ripard | 3d66ac7 | 2013-06-12 18:53:32 +0200 | [diff] [blame] | 707 | This driver is also used for Allwinner SoCs I2C controllers. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 708 | |
| 709 | This driver can also be built as a module. If so, the module |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 710 | will be called i2c-mv64xxx. |
Jean Delvare | 279e902 | 2008-07-14 22:38:21 +0200 | [diff] [blame] | 711 | |
Wolfram Sang | a8da7fe | 2011-02-16 13:39:16 +0100 | [diff] [blame] | 712 | config I2C_MXS |
| 713 | tristate "Freescale i.MX28 I2C interface" |
| 714 | depends on SOC_IMX28 |
Wolfram Sang | 6b866c1 | 2011-08-31 20:37:50 +0200 | [diff] [blame] | 715 | select STMP_DEVICE |
Wolfram Sang | a8da7fe | 2011-02-16 13:39:16 +0100 | [diff] [blame] | 716 | help |
| 717 | Say Y here if you want to use the I2C bus controller on |
| 718 | the Freescale i.MX28 processors. |
| 719 | |
| 720 | This driver can also be built as a module. If so, the module |
| 721 | will be called i2c-mxs. |
| 722 | |
srinidhi kasagar | 3f9900f | 2010-02-01 19:44:54 +0530 | [diff] [blame] | 723 | config I2C_NOMADIK |
| 724 | tristate "ST-Ericsson Nomadik/Ux500 I2C Controller" |
Alessandro Rubini | 419408e | 2012-06-11 22:56:49 +0200 | [diff] [blame] | 725 | depends on ARM_AMBA |
srinidhi kasagar | 3f9900f | 2010-02-01 19:44:54 +0530 | [diff] [blame] | 726 | help |
| 727 | If you say yes to this option, support will be included for the |
Alessandro Rubini | 419408e | 2012-06-11 22:56:49 +0200 | [diff] [blame] | 728 | I2C interface from ST-Ericsson's Nomadik and Ux500 architectures, |
| 729 | as well as the STA2X11 PCIe I/O HUB. |
srinidhi kasagar | 3f9900f | 2010-02-01 19:44:54 +0530 | [diff] [blame] | 730 | |
Peter Korsgaard | 18f98b1 | 2006-06-04 20:01:08 +0200 | [diff] [blame] | 731 | config I2C_OCORES |
| 732 | tristate "OpenCores I2C Controller" |
Peter Korsgaard | 18f98b1 | 2006-06-04 20:01:08 +0200 | [diff] [blame] | 733 | help |
| 734 | If you say yes to this option, support will be included for the |
| 735 | OpenCores I2C controller. For details see |
| 736 | http://www.opencores.org/projects.cgi/web/i2c/overview |
| 737 | |
| 738 | This driver can also be built as a module. If so, the module |
| 739 | will be called i2c-ocores. |
| 740 | |
Komal Shah | 010d442c4 | 2006-08-13 23:44:09 +0200 | [diff] [blame] | 741 | config I2C_OMAP |
| 742 | tristate "OMAP I2C adapter" |
Jan Engelhardt | 16538e6 | 2007-05-01 23:26:34 +0200 | [diff] [blame] | 743 | depends on ARCH_OMAP |
Komal Shah | 010d442c4 | 2006-08-13 23:44:09 +0200 | [diff] [blame] | 744 | default y if MACH_OMAP_H3 || MACH_OMAP_OSK |
| 745 | help |
| 746 | If you say yes to this option, support will be included for the |
| 747 | I2C interface on the Texas Instruments OMAP1/2 family of processors. |
| 748 | Like OMAP1510/1610/1710/5912 and OMAP242x. |
| 749 | For details see http://www.ti.com/omap. |
| 750 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 751 | config I2C_PASEMI |
| 752 | tristate "PA Semi SMBus interface" |
| 753 | depends on PPC_PASEMI && PCI |
| 754 | help |
| 755 | Supports the PA Semi PWRficient on-chip SMBus interfaces. |
| 756 | |
Wolfram Sang | 35bfc35 | 2010-06-03 11:33:56 +0200 | [diff] [blame] | 757 | config I2C_PCA_PLATFORM |
| 758 | tristate "PCA9564/PCA9665 as platform device" |
| 759 | select I2C_ALGOPCA |
| 760 | default n |
| 761 | help |
| 762 | This driver supports a memory mapped Philips PCA9564/PCA9665 |
| 763 | parallel bus to I2C bus controller. |
| 764 | |
| 765 | This driver can also be built as a module. If so, the module |
| 766 | will be called i2c-pca-platform. |
| 767 | |
| 768 | config I2C_PMCMSP |
| 769 | tristate "PMC MSP I2C TWI Controller" |
| 770 | depends on PMC_MSP |
| 771 | help |
| 772 | This driver supports the PMC TWI controller on MSP devices. |
| 773 | |
| 774 | This driver can also be built as module. If so, the module |
| 775 | will be called i2c-pmcmsp. |
| 776 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 777 | config I2C_PNX |
Kevin Wells | c115167 | 2010-08-05 15:40:17 -0700 | [diff] [blame] | 778 | tristate "I2C bus support for Philips PNX and NXP LPC targets" |
Roland Stigge | d684f05 | 2012-08-26 16:30:37 +0200 | [diff] [blame] | 779 | depends on ARCH_LPC32XX |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 780 | help |
| 781 | This driver supports the Philips IP3204 I2C IP block master and/or |
| 782 | slave controller |
| 783 | |
| 784 | This driver can also be built as a module. If so, the module |
| 785 | will be called i2c-pnx. |
| 786 | |
GuanXuetao | d10e4a6 | 2011-02-26 21:29:29 +0800 | [diff] [blame] | 787 | config I2C_PUV3 |
| 788 | tristate "PKUnity v3 I2C bus support" |
| 789 | depends on UNICORE32 && ARCH_PUV3 |
| 790 | select I2C_ALGOBIT |
| 791 | help |
| 792 | This driver supports the I2C IP inside the PKUnity-v3 SoC. |
| 793 | This I2C bus controller is under AMBA/AXI bus. |
| 794 | |
| 795 | This driver can also be built as a module. If so, the module |
| 796 | will be called i2c-puv3. |
| 797 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 798 | config I2C_PXA |
Haojian Zhuang | d7c46dd | 2009-09-04 17:37:17 +0800 | [diff] [blame] | 799 | tristate "Intel PXA2XX I2C adapter" |
Romain Perier | 294be03 | 2016-12-01 12:04:38 +0100 | [diff] [blame] | 800 | depends on ARCH_PXA || ARCH_MMP || ARCH_MVEBU || (X86_32 && PCI && OF) |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 801 | help |
| 802 | If you have devices in the PXA I2C bus, say yes to this option. |
| 803 | This driver can also be built as a module. If so, the module |
| 804 | will be called i2c-pxa. |
| 805 | |
Sebastian Andrzej Siewior | 7e94dd1 | 2011-03-02 11:26:53 +0100 | [diff] [blame] | 806 | config I2C_PXA_PCI |
| 807 | def_bool I2C_PXA && X86_32 && PCI && OF |
| 808 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 809 | config I2C_PXA_SLAVE |
| 810 | bool "Intel PXA2XX I2C Slave comms support" |
Sebastian Andrzej Siewior | 7e94dd1 | 2011-03-02 11:26:53 +0100 | [diff] [blame] | 811 | depends on I2C_PXA && !X86_32 |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 812 | help |
| 813 | Support I2C slave mode communications on the PXA I2C bus. This |
| 814 | is necessary for systems where the PXA may be a target on the |
| 815 | I2C bus. |
| 816 | |
Bjorn Andersson | 10c5a84 | 2014-03-13 19:07:43 -0700 | [diff] [blame] | 817 | config I2C_QUP |
| 818 | tristate "Qualcomm QUP based I2C controller" |
| 819 | depends on ARCH_QCOM |
| 820 | help |
| 821 | If you say yes to this option, support will be included for the |
| 822 | built-in I2C interface on the Qualcomm SoCs. |
| 823 | |
| 824 | This driver can also be built as a module. If so, the module |
| 825 | will be called i2c-qup. |
| 826 | |
Wolfram Sang | 310c18a | 2013-12-20 19:08:50 +0100 | [diff] [blame] | 827 | config I2C_RIIC |
| 828 | tristate "Renesas RIIC adapter" |
Simon Horman | 0731614 | 2016-02-22 10:15:19 +0900 | [diff] [blame] | 829 | depends on ARCH_RENESAS || COMPILE_TEST |
Wolfram Sang | 310c18a | 2013-12-20 19:08:50 +0100 | [diff] [blame] | 830 | help |
| 831 | If you say yes to this option, support will be included for the |
| 832 | Renesas RIIC I2C interface. |
| 833 | |
| 834 | This driver can also be built as a module. If so, the module |
| 835 | will be called i2c-riic. |
| 836 | |
Max Schwarz | c41aa3c | 2014-06-11 22:34:37 +0200 | [diff] [blame] | 837 | config I2C_RK3X |
| 838 | tristate "Rockchip RK3xxx I2C adapter" |
Max Schwarz | 80f1774 | 2014-11-24 01:32:27 +0100 | [diff] [blame] | 839 | depends on OF && COMMON_CLK |
Max Schwarz | c41aa3c | 2014-06-11 22:34:37 +0200 | [diff] [blame] | 840 | help |
| 841 | Say Y here to include support for the I2C adapter in Rockchip RK3xxx |
| 842 | SoCs. |
| 843 | |
| 844 | This driver can also be built as a module. If so, the module will |
| 845 | be called i2c-rk3x. |
| 846 | |
Naveen Krishna Ch | 4b62392 | 2010-07-29 18:49:34 +0900 | [diff] [blame] | 847 | config HAVE_S3C2410_I2C |
| 848 | bool |
| 849 | help |
| 850 | This will include I2C support for Samsung SoCs. If you want to |
| 851 | include I2C support for any machine, kindly select this in the |
| 852 | respective Kconfig file. |
| 853 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 854 | config I2C_S3C2410 |
| 855 | tristate "S3C2410 I2C Driver" |
Naveen Krishna Ch | 4b62392 | 2010-07-29 18:49:34 +0900 | [diff] [blame] | 856 | depends on HAVE_S3C2410_I2C |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 857 | help |
| 858 | Say Y here to include support for I2C controller in the |
Naveen Krishna Ch | 4b62392 | 2010-07-29 18:49:34 +0900 | [diff] [blame] | 859 | Samsung SoCs. |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 860 | |
| 861 | config I2C_SH7760 |
| 862 | tristate "Renesas SH7760 I2C Controller" |
| 863 | depends on CPU_SUBTYPE_SH7760 |
| 864 | help |
| 865 | This driver supports the 2 I2C interfaces on the Renesas SH7760. |
| 866 | |
| 867 | This driver can also be built as a module. If so, the module |
| 868 | will be called i2c-sh7760. |
| 869 | |
| 870 | config I2C_SH_MOBILE |
| 871 | tristate "SuperH Mobile I2C Controller" |
Geert Uytterhoeven | f16ea4f | 2014-12-15 14:37:04 +0100 | [diff] [blame] | 872 | depends on HAS_DMA |
Geert Uytterhoeven | 17f8048 | 2016-08-31 11:35:13 +0200 | [diff] [blame] | 873 | depends on ARCH_SHMOBILE || ARCH_RENESAS || COMPILE_TEST |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 874 | help |
| 875 | If you say yes to this option, support will be included for the |
| 876 | built-in I2C interface on the Renesas SH-Mobile processor. |
| 877 | |
| 878 | This driver can also be built as a module. If so, the module |
| 879 | will be called i2c-sh_mobile. |
| 880 | |
| 881 | config I2C_SIMTEC |
| 882 | tristate "Simtec Generic I2C interface" |
| 883 | select I2C_ALGOBIT |
| 884 | help |
| 885 | If you say yes to this option, support will be included for |
| 886 | the Simtec Generic I2C interface. This driver is for the |
| 887 | simple I2C bus used on newer Simtec products for general |
| 888 | I2C, such as DDC on the Simtec BBD2016A. |
| 889 | |
| 890 | This driver can also be built as a module. If so, the module |
| 891 | will be called i2c-simtec. |
| 892 | |
Zhiwu Song | 979b907 | 2012-02-08 23:28:35 +0800 | [diff] [blame] | 893 | config I2C_SIRF |
| 894 | tristate "CSR SiRFprimaII I2C interface" |
Arnd Bergmann | c5dece3 | 2013-06-10 18:07:14 +0200 | [diff] [blame] | 895 | depends on ARCH_SIRF |
Zhiwu Song | 979b907 | 2012-02-08 23:28:35 +0800 | [diff] [blame] | 896 | help |
| 897 | If you say yes to this option, support will be included for the |
| 898 | CSR SiRFprimaII I2C interface. |
| 899 | |
| 900 | This driver can also be built as a module. If so, the module |
| 901 | will be called i2c-sirf. |
| 902 | |
Maxime COQUELIN | 85b4fab | 2013-11-06 09:25:12 +0100 | [diff] [blame] | 903 | config I2C_ST |
| 904 | tristate "STMicroelectronics SSC I2C support" |
| 905 | depends on ARCH_STI |
| 906 | help |
| 907 | Enable this option to add support for STMicroelectronics SoCs |
| 908 | hardware SSC (Synchronous Serial Controller) as an I2C controller. |
| 909 | |
| 910 | This driver can also be built as module. If so, the module |
| 911 | will be called i2c-st. |
| 912 | |
M'boumba Cedric Madianga | 62817fc | 2017-01-19 14:25:13 +0100 | [diff] [blame] | 913 | config I2C_STM32F4 |
| 914 | tristate "STMicroelectronics STM32F4 I2C support" |
| 915 | depends on ARCH_STM32 || COMPILE_TEST |
| 916 | help |
| 917 | Enable this option to add support for STM32 I2C controller embedded |
| 918 | in STM32F4 SoCs. |
| 919 | |
| 920 | This driver can also be built as module. If so, the module |
| 921 | will be called i2c-stm32f4. |
| 922 | |
Linus Walleij | 18904c0 | 2009-06-13 21:51:34 +0200 | [diff] [blame] | 923 | config I2C_STU300 |
| 924 | tristate "ST Microelectronics DDC I2C interface" |
Linus Walleij | 4eaad8a | 2009-06-15 00:30:18 +0200 | [diff] [blame] | 925 | depends on MACH_U300 |
Linus Walleij | 18904c0 | 2009-06-13 21:51:34 +0200 | [diff] [blame] | 926 | default y if MACH_U300 |
| 927 | help |
| 928 | If you say yes to this option, support will be included for the |
| 929 | I2C interface from ST Microelectronics simply called "DDC I2C" |
| 930 | supporting both I2C and DDC, used in e.g. the U300 series |
| 931 | mobile platforms. |
| 932 | |
| 933 | This driver can also be built as a module. If so, the module |
| 934 | will be called i2c-stu300. |
| 935 | |
Boris BREZILLON | 3e83349 | 2014-06-11 11:17:30 +0200 | [diff] [blame] | 936 | config I2C_SUN6I_P2WI |
| 937 | tristate "Allwinner sun6i internal P2WI controller" |
| 938 | depends on RESET_CONTROLLER |
| 939 | depends on MACH_SUN6I || COMPILE_TEST |
| 940 | help |
| 941 | If you say yes to this option, support will be included for the |
| 942 | P2WI (Push/Pull 2 Wire Interface) controller embedded in some sunxi |
| 943 | SOCs. |
| 944 | The P2WI looks like an SMBus controller (which supports only byte |
| 945 | accesses), except that it only supports one slave device. |
| 946 | This interface is used to connect to specific PMIC devices (like the |
| 947 | AXP221). |
| 948 | |
Colin Cross | db811ca | 2011-02-20 17:14:21 -0800 | [diff] [blame] | 949 | config I2C_TEGRA |
| 950 | tristate "NVIDIA Tegra internal I2C controller" |
| 951 | depends on ARCH_TEGRA |
| 952 | help |
| 953 | If you say yes to this option, support will be included for the |
| 954 | I2C controller embedded in NVIDIA Tegra SOCs |
| 955 | |
Shardar Shariff Md | 0297ffa | 2017-02-20 17:52:34 +0100 | [diff] [blame] | 956 | config I2C_TEGRA_BPMP |
| 957 | tristate "NVIDIA Tegra BPMP I2C controller" |
| 958 | depends on TEGRA_BPMP |
Jon Hunter | 1ae5214 | 2017-03-23 11:56:56 +0000 | [diff] [blame] | 959 | default y |
Shardar Shariff Md | 0297ffa | 2017-02-20 17:52:34 +0100 | [diff] [blame] | 960 | help |
| 961 | If you say yes to this option, support will be included for the I2C |
| 962 | controller embedded in NVIDIA Tegra SoCs accessed via the BPMP. |
| 963 | |
| 964 | This I2C driver is a 'virtual' I2C driver. The real driver is part |
| 965 | of the BPMP firmware, and this driver merely communicates with that |
| 966 | real driver. |
| 967 | |
Masahiro Yamada | dd6fd4a | 2015-10-23 19:51:59 +0900 | [diff] [blame] | 968 | config I2C_UNIPHIER |
| 969 | tristate "UniPhier FIFO-less I2C controller" |
Masahiro Yamada | 61c18ae | 2016-01-31 22:34:02 +0900 | [diff] [blame] | 970 | depends on ARCH_UNIPHIER || COMPILE_TEST |
Masahiro Yamada | dd6fd4a | 2015-10-23 19:51:59 +0900 | [diff] [blame] | 971 | help |
| 972 | If you say yes to this option, support will be included for |
| 973 | the UniPhier FIFO-less I2C interface embedded in PH1-LD4, PH1-sLD8, |
| 974 | or older UniPhier SoCs. |
| 975 | |
Masahiro Yamada | 6a62974 | 2015-10-23 19:52:00 +0900 | [diff] [blame] | 976 | config I2C_UNIPHIER_F |
| 977 | tristate "UniPhier FIFO-builtin I2C controller" |
Masahiro Yamada | 61c18ae | 2016-01-31 22:34:02 +0900 | [diff] [blame] | 978 | depends on ARCH_UNIPHIER || COMPILE_TEST |
Masahiro Yamada | 6a62974 | 2015-10-23 19:52:00 +0900 | [diff] [blame] | 979 | help |
| 980 | If you say yes to this option, support will be included for |
| 981 | the UniPhier FIFO-builtin I2C interface embedded in PH1-Pro4, |
| 982 | PH1-Pro5, or newer UniPhier SoCs. |
| 983 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 984 | config I2C_VERSATILE |
| 985 | tristate "ARM Versatile/Realview I2C bus support" |
Russell King | 5871a15 | 2017-07-26 11:03:49 +0100 | [diff] [blame] | 986 | depends on ARCH_MPS2 || ARCH_VERSATILE || ARCH_REALVIEW || ARCH_VEXPRESS || COMPILE_TEST |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 987 | select I2C_ALGOBIT |
| 988 | help |
| 989 | Say yes if you want to support the I2C serial bus on ARMs Versatile |
| 990 | range of platforms. |
| 991 | |
| 992 | This driver can also be built as a module. If so, the module |
| 993 | will be called i2c-versatile. |
| 994 | |
Tony Prisk | 560746e | 2013-06-15 09:52:16 +1200 | [diff] [blame] | 995 | config I2C_WMT |
| 996 | tristate "Wondermedia WM8xxx SoC I2C bus support" |
| 997 | depends on ARCH_VT8500 |
| 998 | help |
| 999 | Say yes if you want to support the I2C bus on Wondermedia 8xxx-series |
| 1000 | SoCs. |
| 1001 | |
| 1002 | This driver can also be built as a module. If so, the module will be |
| 1003 | called i2c-wmt. |
| 1004 | |
Rade Bozic | 85660f4 | 2010-01-28 12:47:07 -0800 | [diff] [blame] | 1005 | config I2C_OCTEON |
| 1006 | tristate "Cavium OCTEON I2C bus support" |
David Daney | 9ddebc4 | 2013-05-22 15:10:46 +0000 | [diff] [blame] | 1007 | depends on CAVIUM_OCTEON_SOC |
Rade Bozic | 85660f4 | 2010-01-28 12:47:07 -0800 | [diff] [blame] | 1008 | help |
| 1009 | Say yes if you want to support the I2C serial bus on Cavium |
| 1010 | OCTEON SOC. |
| 1011 | |
| 1012 | This driver can also be built as a module. If so, the module |
| 1013 | will be called i2c-octeon. |
| 1014 | |
Jan Glauber | 22d4020 | 2016-08-24 23:25:44 +0200 | [diff] [blame] | 1015 | config I2C_THUNDERX |
| 1016 | tristate "Cavium ThunderX I2C bus support" |
| 1017 | depends on 64BIT && PCI && (ARM64 || COMPILE_TEST) |
Jan Glauber | 1e58667 | 2016-08-24 23:25:45 +0200 | [diff] [blame] | 1018 | select I2C_SMBUS |
Jan Glauber | 22d4020 | 2016-08-24 23:25:44 +0200 | [diff] [blame] | 1019 | help |
| 1020 | Say yes if you want to support the I2C serial bus on Cavium |
| 1021 | ThunderX SOC. |
| 1022 | |
| 1023 | This driver can also be built as a module. If so, the module |
| 1024 | will be called i2c-thunderx. |
| 1025 | |
Richard Röjfors | e1d5b65 | 2010-02-11 10:42:00 +0100 | [diff] [blame] | 1026 | config I2C_XILINX |
| 1027 | tristate "Xilinx I2C Controller" |
Kees Cook | 417e86c | 2013-01-16 18:53:37 -0800 | [diff] [blame] | 1028 | depends on HAS_IOMEM |
Richard Röjfors | e1d5b65 | 2010-02-11 10:42:00 +0100 | [diff] [blame] | 1029 | help |
| 1030 | If you say yes to this option, support will be included for the |
| 1031 | Xilinx I2C controller. |
| 1032 | |
| 1033 | This driver can also be built as a module. If so, the module |
| 1034 | will be called xilinx_i2c. |
| 1035 | |
Ganesan Ramalingam | 401c343 | 2012-01-27 14:15:37 +0530 | [diff] [blame] | 1036 | config I2C_XLR |
Måns Rullgård | 75d31c2 | 2015-11-02 02:03:36 +0000 | [diff] [blame] | 1037 | tristate "Netlogic XLR and Sigma Designs I2C support" |
Marc Gonzalez | e3879e4 | 2016-05-11 17:20:05 +0200 | [diff] [blame] | 1038 | depends on CPU_XLR || ARCH_TANGO |
Ganesan Ramalingam | 401c343 | 2012-01-27 14:15:37 +0530 | [diff] [blame] | 1039 | help |
| 1040 | This driver enables support for the on-chip I2C interface of |
Måns Rullgård | 75d31c2 | 2015-11-02 02:03:36 +0000 | [diff] [blame] | 1041 | the Netlogic XLR/XLS MIPS processors and Sigma Designs SOCs. |
Ganesan Ramalingam | 401c343 | 2012-01-27 14:15:37 +0530 | [diff] [blame] | 1042 | |
| 1043 | This driver can also be built as a module. If so, the module |
| 1044 | will be called i2c-xlr. |
| 1045 | |
Subhendu Sekhar Behera | 2bbd681 | 2015-03-18 17:20:29 +0530 | [diff] [blame] | 1046 | config I2C_XLP9XX |
| 1047 | tristate "XLP9XX I2C support" |
Jayachandran C | 4165bd4 | 2017-03-12 10:54:55 +0000 | [diff] [blame] | 1048 | depends on CPU_XLP || ARCH_THUNDER2 || COMPILE_TEST |
Subhendu Sekhar Behera | 2bbd681 | 2015-03-18 17:20:29 +0530 | [diff] [blame] | 1049 | help |
| 1050 | This driver enables support for the on-chip I2C interface of |
Tanmay Jagdale | 8574ad7 | 2016-04-11 18:01:26 +0530 | [diff] [blame] | 1051 | the Broadcom XLP9xx/XLP5xx MIPS and Vulcan ARM64 processors. |
Subhendu Sekhar Behera | 2bbd681 | 2015-03-18 17:20:29 +0530 | [diff] [blame] | 1052 | |
| 1053 | This driver can also be built as a module. If so, the module will |
| 1054 | be called i2c-xlp9xx. |
| 1055 | |
Kuninori Morimoto | 6ccbe60 | 2012-09-27 23:44:25 -0700 | [diff] [blame] | 1056 | config I2C_RCAR |
| 1057 | tristate "Renesas R-Car I2C Controller" |
Geert Uytterhoeven | 79439d83 | 2016-05-22 09:38:35 +0200 | [diff] [blame] | 1058 | depends on HAS_DMA |
Simon Horman | 0731614 | 2016-02-22 10:15:19 +0900 | [diff] [blame] | 1059 | depends on ARCH_RENESAS || COMPILE_TEST |
Jean Delvare | d5fd120 | 2015-01-26 20:59:31 +0100 | [diff] [blame] | 1060 | select I2C_SLAVE |
Kuninori Morimoto | 6ccbe60 | 2012-09-27 23:44:25 -0700 | [diff] [blame] | 1061 | help |
| 1062 | If you say yes to this option, support will be included for the |
| 1063 | R-Car I2C controller. |
| 1064 | |
| 1065 | This driver can also be built as a module. If so, the module |
| 1066 | will be called i2c-rcar. |
| 1067 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 1068 | comment "External I2C/SMBus adapter drivers" |
| 1069 | |
Guenter Roeck | 335d7c5 | 2011-01-26 11:45:49 -0800 | [diff] [blame] | 1070 | config I2C_DIOLAN_U2C |
| 1071 | tristate "Diolan U2C-12 USB adapter" |
| 1072 | depends on USB |
| 1073 | help |
| 1074 | If you say yes to this option, support will be included for Diolan |
| 1075 | U2C-12, a USB to I2C interface. |
| 1076 | |
| 1077 | This driver can also be built as a module. If so, the module |
| 1078 | will be called i2c-diolan-u2c. |
| 1079 | |
Laurentiu Palcu | db23e50 | 2014-11-06 15:48:04 +0200 | [diff] [blame] | 1080 | config I2C_DLN2 |
| 1081 | tristate "Diolan DLN-2 USB I2C adapter" |
| 1082 | depends on MFD_DLN2 |
| 1083 | help |
| 1084 | If you say yes to this option, support will be included for Diolan |
| 1085 | DLN2, a USB to I2C interface. |
| 1086 | |
| 1087 | This driver can also be built as a module. If so, the module |
| 1088 | will be called i2c-dln2. |
| 1089 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1090 | config I2C_PARPORT |
| 1091 | tristate "Parallel port adapter" |
Martin Schwidefsky | 0244ad0 | 2013-08-30 09:39:53 +0200 | [diff] [blame] | 1092 | depends on PARPORT |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1093 | select I2C_ALGOBIT |
Jean Delvare | 3585925 | 2010-03-02 12:23:44 +0100 | [diff] [blame] | 1094 | select I2C_SMBUS |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1095 | help |
| 1096 | This supports parallel port I2C adapters such as the ones made by |
| 1097 | Philips or Velleman, Analog Devices evaluation boards, and more. |
| 1098 | Basically any adapter using the parallel port as an I2C bus with |
| 1099 | no extra chipset is supported by this driver, or could be. |
| 1100 | |
| 1101 | This driver is a replacement for (and was inspired by) an older |
| 1102 | driver named i2c-philips-par. The new driver supports more devices, |
| 1103 | and makes it easier to add support for new devices. |
Mark M. Hoffman | e97b81d | 2006-03-23 16:50:25 +0100 | [diff] [blame] | 1104 | |
| 1105 | An adapter type parameter is now mandatory. Please read the file |
| 1106 | Documentation/i2c/busses/i2c-parport for details. |
| 1107 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1108 | Another driver exists, named i2c-parport-light, which doesn't depend |
| 1109 | on the parport driver. This is meant for embedded systems. Don't say |
| 1110 | Y here if you intend to say Y or M there. |
| 1111 | |
Wolfram Sang | 4c03f68 | 2008-04-22 22:16:47 +0200 | [diff] [blame] | 1112 | This support is also available as a module. If so, the module |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1113 | will be called i2c-parport. |
| 1114 | |
| 1115 | config I2C_PARPORT_LIGHT |
| 1116 | tristate "Parallel port adapter (light)" |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1117 | select I2C_ALGOBIT |
Jean Delvare | 927ab2f | 2010-03-02 12:23:45 +0100 | [diff] [blame] | 1118 | select I2C_SMBUS |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1119 | help |
| 1120 | This supports parallel port I2C adapters such as the ones made by |
| 1121 | Philips or Velleman, Analog Devices evaluation boards, and more. |
| 1122 | Basically any adapter using the parallel port as an I2C bus with |
| 1123 | no extra chipset is supported by this driver, or could be. |
| 1124 | |
| 1125 | This driver is a light version of i2c-parport. It doesn't depend |
| 1126 | on the parport driver, and uses direct I/O access instead. This |
Matt LaPlante | 0950960 | 2006-10-03 22:31:37 +0200 | [diff] [blame] | 1127 | might be preferred on embedded systems where wasting memory for |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1128 | the clean but heavy parport handling is not an option. The |
| 1129 | drawback is a reduced portability and the impossibility to |
Matt LaPlante | 0950960 | 2006-10-03 22:31:37 +0200 | [diff] [blame] | 1130 | daisy-chain other parallel port devices. |
Wolfram Sang | 4c03f68 | 2008-04-22 22:16:47 +0200 | [diff] [blame] | 1131 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1132 | Don't say Y here if you said Y or M to i2c-parport. Saying M to |
| 1133 | both is possible but both modules should not be loaded at the same |
| 1134 | time. |
| 1135 | |
Wolfram Sang | 4c03f68 | 2008-04-22 22:16:47 +0200 | [diff] [blame] | 1136 | This support is also available as a module. If so, the module |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1137 | will be called i2c-parport-light. |
| 1138 | |
Andrew Lunn | 83e53a8 | 2014-01-11 00:23:59 +0100 | [diff] [blame] | 1139 | config I2C_ROBOTFUZZ_OSIF |
| 1140 | tristate "RobotFuzz Open Source InterFace USB adapter" |
| 1141 | depends on USB |
| 1142 | help |
| 1143 | If you say yes to this option, support will be included for the |
| 1144 | RobotFuzz Open Source InterFace USB to I2C interface. |
| 1145 | |
| 1146 | This driver can also be built as a module. If so, the module |
| 1147 | will be called i2c-osif. |
| 1148 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 1149 | config I2C_TAOS_EVM |
| 1150 | tristate "TAOS evaluation module" |
Linus Torvalds | 21eaab6 | 2013-02-21 13:41:04 -0800 | [diff] [blame] | 1151 | depends on TTY |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 1152 | select SERIO |
| 1153 | select SERIO_SERPORT |
| 1154 | default n |
Olof Johansson | beb58aa | 2007-02-13 22:09:03 +0100 | [diff] [blame] | 1155 | help |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 1156 | This supports TAOS evaluation modules on serial port. In order to |
| 1157 | use this driver, you will need the inputattach tool, which is part |
| 1158 | of the input-utils package. |
Olof Johansson | beb58aa | 2007-02-13 22:09:03 +0100 | [diff] [blame] | 1159 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 1160 | If unsure, say N. |
| 1161 | |
| 1162 | This support is also available as a module. If so, the module |
| 1163 | will be called i2c-taos-evm. |
| 1164 | |
| 1165 | config I2C_TINY_USB |
| 1166 | tristate "Tiny-USB adapter" |
| 1167 | depends on USB |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1168 | help |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 1169 | If you say yes to this option, support will be included for the |
| 1170 | i2c-tiny-usb, a simple do-it-yourself USB to I2C interface. See |
| 1171 | http://www.harbaum.org/till/i2c_tiny_usb for hardware details. |
| 1172 | |
| 1173 | This driver can also be built as a module. If so, the module |
| 1174 | will be called i2c-tiny-usb. |
| 1175 | |
Lars Poeschel | 174a13a | 2012-11-19 16:36:04 +0100 | [diff] [blame] | 1176 | config I2C_VIPERBOARD |
| 1177 | tristate "Viperboard I2C master support" |
| 1178 | depends on MFD_VIPERBOARD && USB |
| 1179 | help |
| 1180 | Say yes here to access the I2C part of the Nano River |
| 1181 | Technologies Viperboard as I2C master. |
| 1182 | See viperboard API specification and Nano |
| 1183 | River Tech's viperboard.h for detailed meaning |
| 1184 | of the module parameters. |
| 1185 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 1186 | comment "Other I2C/SMBus bus drivers" |
| 1187 | |
| 1188 | config I2C_ACORN |
| 1189 | tristate "Acorn IOC/IOMD I2C bus support" |
| 1190 | depends on ARCH_ACORN |
| 1191 | default y |
| 1192 | select I2C_ALGOBIT |
| 1193 | help |
| 1194 | Say yes if you want to support the I2C bus on Acorn platforms. |
| 1195 | |
| 1196 | If you don't know, say Y. |
| 1197 | |
| 1198 | config I2C_ELEKTOR |
| 1199 | tristate "Elektor ISA card" |
Uwe Kleine-König | ce816fa | 2014-04-07 15:39:19 -0700 | [diff] [blame] | 1200 | depends on ISA && HAS_IOPORT_MAP && BROKEN_ON_SMP |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 1201 | select I2C_ALGOPCF |
| 1202 | help |
| 1203 | This supports the PCF8584 ISA bus I2C adapter. Say Y if you own |
| 1204 | such an adapter. |
| 1205 | |
| 1206 | This support is also available as a module. If so, the module |
| 1207 | will be called i2c-elektor. |
| 1208 | |
Vadim Pasternak | 6bec23b | 2016-11-20 16:56:14 +0000 | [diff] [blame] | 1209 | config I2C_MLXCPLD |
| 1210 | tristate "Mellanox I2C driver" |
| 1211 | depends on X86_64 |
| 1212 | help |
| 1213 | This exposes the Mellanox platform I2C busses to the linux I2C layer |
| 1214 | for X86 based systems. |
| 1215 | Controller is implemented as CPLD logic. |
| 1216 | |
| 1217 | This driver can also be built as a module. If so, the module will be |
| 1218 | called as i2c-mlxcpld. |
| 1219 | |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 1220 | config I2C_PCA_ISA |
Marco Aurelio da Costa | eff9ec9 | 2009-03-28 21:34:44 +0100 | [diff] [blame] | 1221 | tristate "PCA9564/PCA9665 on an ISA bus" |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 1222 | depends on ISA |
| 1223 | select I2C_ALGOPCA |
| 1224 | default n |
| 1225 | help |
Marco Aurelio da Costa | eff9ec9 | 2009-03-28 21:34:44 +0100 | [diff] [blame] | 1226 | This driver supports ISA boards using the Philips PCA9564/PCA9665 |
Jean Delvare | f5b728a | 2008-07-14 22:38:23 +0200 | [diff] [blame] | 1227 | parallel bus to I2C bus controller. |
| 1228 | |
| 1229 | This driver can also be built as a module. If so, the module |
| 1230 | will be called i2c-pca-isa. |
| 1231 | |
| 1232 | This device is almost undetectable and using this driver on a |
| 1233 | system which doesn't have this device will result in long |
| 1234 | delays when I2C/SMBus chip drivers are loaded (e.g. at boot |
| 1235 | time). If unsure, say N. |
| 1236 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1237 | config I2C_SIBYTE |
| 1238 | tristate "SiByte SMBus interface" |
Jan Engelhardt | 16538e6 | 2007-05-01 23:26:34 +0200 | [diff] [blame] | 1239 | depends on SIBYTE_SB1xxx_SOC |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1240 | help |
| 1241 | Supports the SiByte SOC on-chip I2C interfaces (2 channels). |
| 1242 | |
Doug Anderson | 9d230c9 | 2014-04-30 10:44:09 -0700 | [diff] [blame] | 1243 | config I2C_CROS_EC_TUNNEL |
| 1244 | tristate "ChromeOS EC tunnel I2C bus" |
Javier Martinez Canillas | 480b141 | 2015-08-19 13:19:57 +0200 | [diff] [blame] | 1245 | depends on MFD_CROS_EC |
Doug Anderson | 9d230c9 | 2014-04-30 10:44:09 -0700 | [diff] [blame] | 1246 | help |
| 1247 | If you say yes here you get an I2C bus that will tunnel i2c commands |
| 1248 | through to the other side of the ChromeOS EC to the i2c bus |
| 1249 | connected there. This will work whatever the interface used to |
| 1250 | talk to the EC (SPI, I2C or LPC). |
| 1251 | |
Feng Kan | f6505fb | 2015-04-24 15:17:50 -0700 | [diff] [blame] | 1252 | config I2C_XGENE_SLIMPRO |
| 1253 | tristate "APM X-Gene SoC I2C SLIMpro devices support" |
| 1254 | depends on ARCH_XGENE && MAILBOX |
| 1255 | help |
| 1256 | Enable I2C bus access using the APM X-Gene SoC SLIMpro |
| 1257 | co-processor. The I2C device access the I2C bus via the X-Gene |
| 1258 | to SLIMpro (On chip coprocessor) mailbox mechanism. |
| 1259 | If unsure, say N. |
| 1260 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1261 | config SCx200_ACB |
Ben Gardner | a417bbd | 2006-01-18 22:53:09 +0100 | [diff] [blame] | 1262 | tristate "Geode ACCESS.bus support" |
Jan Engelhardt | 16538e6 | 2007-05-01 23:26:34 +0200 | [diff] [blame] | 1263 | depends on X86_32 && PCI |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1264 | help |
Ben Gardner | a417bbd | 2006-01-18 22:53:09 +0100 | [diff] [blame] | 1265 | Enable the use of the ACCESS.bus controllers on the Geode SCx200 and |
| 1266 | SC1100 processors and the CS5535 and CS5536 Geode companion devices. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1267 | |
| 1268 | If you don't know what to do here, say N. |
| 1269 | |
Wolfram Sang | 4c03f68 | 2008-04-22 22:16:47 +0200 | [diff] [blame] | 1270 | This support is also available as a module. If so, the module |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1271 | will be called scx200_acb. |
| 1272 | |
Neelesh Gupta | 4708345 | 2014-12-13 23:31:05 +0530 | [diff] [blame] | 1273 | config I2C_OPAL |
| 1274 | tristate "IBM OPAL I2C driver" |
| 1275 | depends on PPC_POWERNV |
| 1276 | default y |
| 1277 | help |
| 1278 | This exposes the PowerNV platform i2c busses to the linux i2c layer, |
| 1279 | the driver is based on the OPAL interfaces. |
| 1280 | |
| 1281 | This driver can also be built as a module. If so, the module will be |
| 1282 | called as i2c-opal. |
| 1283 | |
Baoyou Xie | 9615a01 | 2017-06-22 20:56:55 +0800 | [diff] [blame] | 1284 | config I2C_ZX2967 |
| 1285 | tristate "ZTE ZX2967 I2C support" |
Shawn Guo | 86766a3 | 2017-06-24 22:25:26 +0800 | [diff] [blame] | 1286 | depends on ARCH_ZX |
Baoyou Xie | 9615a01 | 2017-06-22 20:56:55 +0800 | [diff] [blame] | 1287 | default y |
| 1288 | help |
| 1289 | Selecting this option will add ZX2967 I2C driver. |
| 1290 | This driver can also be built as a module. If so, the module will be |
| 1291 | called i2c-zx2967. |
| 1292 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1293 | endmenu |