blob: af8bc83fd8571382e84ddb219630602840840236 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# Sensor device configuration
3#
4
5menu "I2C Hardware Bus support"
Linus Torvalds1da177e2005-04-16 15:20:36 -07006
Jean Delvaref5b728a2008-07-14 22:38:23 +02007comment "PC SMBus host controller drivers"
8 depends on PCI
9
Linus Torvalds1da177e2005-04-16 15:20:36 -070010config I2C_ALI1535
11 tristate "ALI 1535"
Jan Engelhardt16538e62007-05-01 23:26:34 +020012 depends on PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -070013 help
14 If you say yes to this option, support will be included for the SMB
15 Host controller on Acer Labs Inc. (ALI) M1535 South Bridges. The SMB
16 controller is part of the 7101 device, which is an ACPI-compliant
17 Power Management Unit (PMU).
18
19 This driver can also be built as a module. If so, the module
20 will be called i2c-ali1535.
21
22config I2C_ALI1563
23 tristate "ALI 1563"
Jan Engelhardt16538e62007-05-01 23:26:34 +020024 depends on PCI && EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -070025 help
26 If you say yes to this option, support will be included for the SMB
27 Host controller on Acer Labs Inc. (ALI) M1563 South Bridges. The SMB
28 controller is part of the 7101 device, which is an ACPI-compliant
29 Power Management Unit (PMU).
30
31 This driver can also be built as a module. If so, the module
32 will be called i2c-ali1563.
33
34config I2C_ALI15X3
35 tristate "ALI 15x3"
Jan Engelhardt16538e62007-05-01 23:26:34 +020036 depends on PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -070037 help
38 If you say yes to this option, support will be included for the
39 Acer Labs Inc. (ALI) M1514 and M1543 motherboard I2C interfaces.
40
41 This driver can also be built as a module. If so, the module
42 will be called i2c-ali15x3.
43
44config I2C_AMD756
45 tristate "AMD 756/766/768/8111 and nVidia nForce"
Jan Engelhardt16538e62007-05-01 23:26:34 +020046 depends on PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -070047 help
48 If you say yes to this option, support will be included for the AMD
49 756/766/768 mainboard I2C interfaces. The driver also includes
50 support for the first (SMBus 1.0) I2C interface of the AMD 8111 and
51 the nVidia nForce I2C interface.
52
53 This driver can also be built as a module. If so, the module
54 will be called i2c-amd756.
55
56config I2C_AMD756_S4882
57 tristate "SMBus multiplexing on the Tyan S4882"
Jean Delvaref1453ee2008-10-14 17:30:06 +020058 depends on I2C_AMD756 && X86 && EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -070059 help
60 Enabling this option will add specific SMBus support for the Tyan
61 S4882 motherboard. On this 4-CPU board, the SMBus is multiplexed
62 over 8 different channels, where the various memory module EEPROMs
63 and temperature sensors live. Saying yes here will give you access
64 to these in addition to the trunk.
65
66 This driver can also be built as a module. If so, the module
67 will be called i2c-amd756-s4882.
68
69config I2C_AMD8111
70 tristate "AMD 8111"
Jan Engelhardt16538e62007-05-01 23:26:34 +020071 depends on PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -070072 help
73 If you say yes to this option, support will be included for the
74 second (SMBus 2.0) AMD 8111 mainboard I2C interface.
75
76 This driver can also be built as a module. If so, the module
77 will be called i2c-amd8111.
78
Jean Delvaref5b728a2008-07-14 22:38:23 +020079config I2C_I801
Seth Heasley39376432010-03-02 12:23:39 +010080 tristate "Intel 82801 (ICH/PCH)"
Jean Delvaref5b728a2008-07-14 22:38:23 +020081 depends on PCI
Jean Delvare8eacfce2011-05-24 20:58:49 +020082 select CHECK_SIGNATURE if X86 && DMI
Jean Delvaref5b728a2008-07-14 22:38:23 +020083 help
84 If you say yes to this option, support will be included for the Intel
85 801 family of mainboard I2C interfaces. Specifically, the following
86 versions of the chipset are supported:
87 82801AA
88 82801AB
89 82801BA
90 82801CA/CAM
91 82801DB
92 82801EB/ER (ICH5/ICH5R)
93 6300ESB
94 ICH6
95 ICH7
96 ESB2
97 ICH8
98 ICH9
Seth Heasleycb04e952010-10-04 13:27:14 -070099 EP80579 (Tolapai)
Jean Delvaref5b728a2008-07-14 22:38:23 +0200100 ICH10
Seth Heasleycb04e952010-10-04 13:27:14 -0700101 5/3400 Series (PCH)
Seth Heasley662cda82011-03-20 14:50:53 +0100102 6 Series (PCH)
Seth Heasleye30d9852010-10-31 21:06:59 +0100103 Patsburg (PCH)
Seth Heasley662cda82011-03-20 14:50:53 +0100104 DH89xxCC (PCH)
Seth Heasley6e2a8512011-05-24 20:58:49 +0200105 Panther Point (PCH)
Seth Heasley062737f2012-03-26 21:47:19 +0200106 Lynx Point (PCH)
James Ralston4a8f1dd2012-09-10 10:14:02 +0200107 Lynx Point-LP (PCH)
Jean Delvaref5b728a2008-07-14 22:38:23 +0200108
109 This driver can also be built as a module. If so, the module
110 will be called i2c-i801.
111
Alek Du5bc12002008-07-14 22:38:27 +0200112config I2C_ISCH
113 tristate "Intel SCH SMBus 1.0"
Randy Dunlap860fb8c2010-03-05 09:43:06 -0800114 depends on PCI
Denis Turischevfd46a002010-03-01 18:59:55 +0200115 select LPC_SCH
Alek Du5bc12002008-07-14 22:38:27 +0200116 help
117 Say Y here if you want to use SMBus controller on the Intel SCH
118 based systems.
119
120 This driver can also be built as a module. If so, the module
121 will be called i2c-isch.
122
Jean Delvaref5b728a2008-07-14 22:38:23 +0200123config I2C_PIIX4
Crane Cai76b3e282009-09-18 22:45:50 +0200124 tristate "Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC)"
Jean Delvaref5b728a2008-07-14 22:38:23 +0200125 depends on PCI
126 help
127 If you say yes to this option, support will be included for the Intel
128 PIIX4 family of mainboard I2C interfaces. Specifically, the following
129 versions of the chipset are supported (note that Serverworks is part
130 of Broadcom):
131 Intel PIIX4
132 Intel 440MX
133 ATI IXP200
134 ATI IXP300
135 ATI IXP400
136 ATI SB600
Andrew Armenia2a2f7402012-07-24 14:13:57 +0200137 ATI SB700/SP5100
Jean Delvaref5b728a2008-07-14 22:38:23 +0200138 ATI SB800
Crane Cai3806e94b2009-11-07 13:10:46 +0100139 AMD Hudson-2
Jean Delvaref5b728a2008-07-14 22:38:23 +0200140 Serverworks OSB4
141 Serverworks CSB5
142 Serverworks CSB6
143 Serverworks HT-1000
Flavio Leitner506a8b62009-03-28 21:34:46 +0100144 Serverworks HT-1100
Jean Delvaref5b728a2008-07-14 22:38:23 +0200145 SMSC Victory66
146
Andrew Armenia2a2f7402012-07-24 14:13:57 +0200147 Some AMD chipsets contain two PIIX4-compatible SMBus
148 controllers. This driver will attempt to use both controllers
149 on the SB700/SP5100, if they have been initialized by the BIOS.
150
Jean Delvaref5b728a2008-07-14 22:38:23 +0200151 This driver can also be built as a module. If so, the module
152 will be called i2c-piix4.
153
154config I2C_NFORCE2
155 tristate "Nvidia nForce2, nForce3 and nForce4"
156 depends on PCI
157 help
158 If you say yes to this option, support will be included for the Nvidia
159 nForce2, nForce3 and nForce4 families of mainboard I2C interfaces.
160
161 This driver can also be built as a module. If so, the module
162 will be called i2c-nforce2.
163
164config I2C_NFORCE2_S4985
165 tristate "SMBus multiplexing on the Tyan S4985"
Jean Delvaref1453ee2008-10-14 17:30:06 +0200166 depends on I2C_NFORCE2 && X86 && EXPERIMENTAL
Jean Delvaref5b728a2008-07-14 22:38:23 +0200167 help
168 Enabling this option will add specific SMBus support for the Tyan
169 S4985 motherboard. On this 4-CPU board, the SMBus is multiplexed
170 over 4 different channels, where the various memory module EEPROMs
171 live. Saying yes here will give you access to these in addition
172 to the trunk.
173
174 This driver can also be built as a module. If so, the module
175 will be called i2c-nforce2-s4985.
176
177config I2C_SIS5595
178 tristate "SiS 5595"
179 depends on PCI
180 help
181 If you say yes to this option, support will be included for the
182 SiS5595 SMBus (a subset of I2C) interface.
183
184 This driver can also be built as a module. If so, the module
185 will be called i2c-sis5595.
186
187config I2C_SIS630
188 tristate "SiS 630/730"
189 depends on PCI
190 help
191 If you say yes to this option, support will be included for the
192 SiS630 and SiS730 SMBus (a subset of I2C) interface.
193
194 This driver can also be built as a module. If so, the module
195 will be called i2c-sis630.
196
197config I2C_SIS96X
198 tristate "SiS 96x"
199 depends on PCI
200 help
201 If you say yes to this option, support will be included for the SiS
202 96x SMBus (a subset of I2C) interfaces. Specifically, the following
203 chipsets are supported:
204 645/961
205 645DX/961
206 645DX/962
207 648/961
208 650/961
209 735
210 745
211
212 This driver can also be built as a module. If so, the module
213 will be called i2c-sis96x.
214
215config I2C_VIA
216 tristate "VIA VT82C586B"
217 depends on PCI && EXPERIMENTAL
218 select I2C_ALGOBIT
219 help
220 If you say yes to this option, support will be included for the VIA
221 82C586B I2C interface
222
223 This driver can also be built as a module. If so, the module
224 will be called i2c-via.
225
226config I2C_VIAPRO
Harald Weltea2315912009-06-15 18:01:49 +0200227 tristate "VIA VT82C596/82C686/82xx and CX700/VX8xx"
Jean Delvaref5b728a2008-07-14 22:38:23 +0200228 depends on PCI
229 help
230 If you say yes to this option, support will be included for the VIA
231 VT82C596 and later SMBus interface. Specifically, the following
232 chipsets are supported:
233 VT82C596A/B
234 VT82C686A/B
235 VT8231
236 VT8233/A
237 VT8235
238 VT8237R/A/S
239 VT8251
240 CX700
Harald Weltea2315912009-06-15 18:01:49 +0200241 VX800/VX820
242 VX855/VX875
Jean Delvaref5b728a2008-07-14 22:38:23 +0200243
244 This driver can also be built as a module. If so, the module
245 will be called i2c-viapro.
246
Jean Delvarecfd550e2009-09-18 22:45:52 +0200247if ACPI
248
249comment "ACPI drivers"
250
251config I2C_SCMI
252 tristate "SMBus Control Method Interface"
253 help
254 This driver supports the SMBus Control Method Interface. It needs the
255 BIOS to declare ACPI control methods as described in the SMBus Control
256 Method Interface specification.
257
258 To compile this driver as a module, choose M here:
259 the module will be called i2c-scmi.
260
261endif # ACPI
262
Jean Delvaref5b728a2008-07-14 22:38:23 +0200263comment "Mac SMBus host controller drivers"
264 depends on PPC_CHRP || PPC_PMAC
265
266config I2C_HYDRA
267 tristate "CHRP Apple Hydra Mac I/O I2C interface"
268 depends on PCI && PPC_CHRP && EXPERIMENTAL
269 select I2C_ALGOBIT
270 help
271 This supports the use of the I2C interface in the Apple Hydra Mac
272 I/O chip on some CHRP machines (e.g. the LongTrail). Say Y if you
273 have such a machine.
274
275 This support is also available as a module. If so, the module
276 will be called i2c-hydra.
277
278config I2C_POWERMAC
279 tristate "Powermac I2C interface"
280 depends on PPC_PMAC
281 default y
282 help
283 This exposes the various PowerMac i2c interfaces to the linux i2c
284 layer and to userland. It is used by various drivers on the PowerMac
285 platform, and should generally be enabled.
286
287 This support is also available as a module. If so, the module
288 will be called i2c-powermac.
289
290comment "I2C system bus drivers (mostly embedded / system-on-chip)"
291
Andrew Victor813e30e2006-12-10 21:21:30 +0100292config I2C_AT91
293 tristate "Atmel AT91 I2C Two-Wire interface (TWI)"
David Brownell24d0fb42007-10-13 23:56:32 +0200294 depends on ARCH_AT91 && EXPERIMENTAL && BROKEN
Andrew Victor813e30e2006-12-10 21:21:30 +0100295 help
296 This supports the use of the I2C interface on Atmel AT91
297 processors.
298
David Brownell24d0fb42007-10-13 23:56:32 +0200299 This driver is BROKEN because the controller which it uses
300 will easily trigger RX overrun and TX underrun errors. Using
301 low I2C clock rates may partially work around those issues
302 on some systems. Another serious problem is that there is no
303 documented way to issue repeated START conditions, as needed
304 to support combined I2C messages. Use the i2c-gpio driver
305 unless your system can cope with those limitations.
306
Linus Torvalds1da177e2005-04-16 15:20:36 -0700307config I2C_AU1550
Manuel Lauss809f36c2011-11-01 20:03:30 +0100308 tristate "Au1550/Au1200/Au1300 SMBus interface"
Manuel Lauss3766386032011-08-12 11:39:45 +0200309 depends on MIPS_ALCHEMY
Linus Torvalds1da177e2005-04-16 15:20:36 -0700310 help
311 If you say yes to this option, support will be included for the
Manuel Lauss809f36c2011-11-01 20:03:30 +0100312 Au1550/Au1200/Au1300 SMBus interface.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700313
314 This driver can also be built as a module. If so, the module
315 will be called i2c-au1550.
316
Bryan Wud24ecfc2007-05-01 23:26:32 +0200317config I2C_BLACKFIN_TWI
318 tristate "Blackfin TWI I2C support"
Bryan Wud4ce2202008-04-22 22:16:48 +0200319 depends on BLACKFIN
Mike Frysinger4d2bee52008-07-14 22:38:22 +0200320 depends on !BF561 && !BF531 && !BF532 && !BF533
Bryan Wud24ecfc2007-05-01 23:26:32 +0200321 help
Mike Frysinger4d2bee52008-07-14 22:38:22 +0200322 This is the I2C bus driver for Blackfin on-chip TWI interface.
Bryan Wud4ce2202008-04-22 22:16:48 +0200323
Bryan Wud24ecfc2007-05-01 23:26:32 +0200324 This driver can also be built as a module. If so, the module
325 will be called i2c-bfin-twi.
326
327config I2C_BLACKFIN_TWI_CLK_KHZ
328 int "Blackfin TWI I2C clock (kHz)"
329 depends on I2C_BLACKFIN_TWI
Michael Hennerich9528d1c2009-05-18 08:14:41 -0400330 range 21 400
Bryan Wud24ecfc2007-05-01 23:26:32 +0200331 default 50
332 help
333 The unit of the TWI clock is kHz.
334
Jochen Friedrich61045db2008-07-14 22:38:27 +0200335config I2C_CPM
336 tristate "Freescale CPM1 or CPM2 (MPC8xx/826x)"
337 depends on (CPM1 || CPM2) && OF_I2C
338 help
339 This supports the use of the I2C interface on Freescale
340 processors with CPM1 or CPM2.
341
342 This driver can also be built as a module. If so, the module
343 will be called i2c-cpm.
344
Vladimir Barinov95a7f102007-10-13 23:56:30 +0200345config I2C_DAVINCI
346 tristate "DaVinci I2C driver"
347 depends on ARCH_DAVINCI
348 help
349 Support for TI DaVinci I2C controller driver.
350
351 This driver can also be built as a module. If so, the module
352 will be called i2c-davinci.
353
354 Please note that this driver might be needed to bring up other
355 devices such as DaVinci NIC.
356 For details please see http://www.ti.com/davinci
357
Dirk Brandewie2373f6b2011-10-29 10:57:23 +0100358config I2C_DESIGNWARE_PLATFORM
Masanari Iida6b2aac42012-04-14 00:14:11 +0900359 tristate "Synopsys DesignWare Platform"
Ingo Molnar47749b12009-06-25 08:27:14 +0200360 depends on HAVE_CLK
Baruch Siach1ab52cf2009-06-22 16:36:29 +0300361 help
362 If you say yes to this option, support will be included for the
363 Synopsys DesignWare I2C adapter. Only master mode is supported.
364
365 This driver can also be built as a module. If so, the module
Dirk Brandewie2373f6b2011-10-29 10:57:23 +0100366 will be called i2c-designware-platform.
Baruch Siach1ab52cf2009-06-22 16:36:29 +0300367
Dirk Brandewiefe20ff52011-10-06 11:26:35 -0700368config I2C_DESIGNWARE_PCI
369 tristate "Synopsys DesignWare PCI"
370 depends on PCI
371 help
372 If you say yes to this option, support will be included for the
373 Synopsys DesignWare I2C adapter. Only master mode is supported.
374
375 This driver can also be built as a module. If so, the module
376 will be called i2c-designware-pci.
Paul Mundt4ad48e62008-10-14 17:30:03 +0200377
Jayachandran C3e1b76b2012-01-23 18:01:29 +0530378config I2C_EG20T
379 tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) I2C"
380 depends on PCI
381 help
382 This driver is for PCH(Platform controller Hub) I2C of EG20T which
383 is an IOH(Input/Output Hub) for x86 embedded processor.
384 This driver can access PCH I2C bus device.
385
386 This driver also can be used for LAPIS Semiconductor IOH(Input/
387 Output Hub), ML7213, ML7223 and ML7831.
388 ML7213 IOH is for IVI(In-Vehicle Infotainment) use, ML7223 IOH is
389 for MP(Media Phone) use and ML7831 IOH is for general purpose use.
390 ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
391 ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
392
Haavard Skinnemoen1c23af92007-05-01 23:26:34 +0200393config I2C_GPIO
394 tristate "GPIO-based bitbanging I2C"
395 depends on GENERIC_GPIO
396 select I2C_ALGOBIT
397 help
398 This is a very simple bitbanging I2C driver utilizing the
399 arch-neutral GPIO API to control the SCL and SDA lines.
400
Paul Mundt4ad48e62008-10-14 17:30:03 +0200401config I2C_HIGHLANDER
402 tristate "Highlander FPGA SMBus interface"
403 depends on SH_HIGHLANDER
404 help
405 If you say yes to this option, support will be included for
406 the SMBus interface located in the FPGA on various Highlander
407 boards, particularly the R0P7780LC0011RL and R0P7785LC0011RL
408 FPGAs. This is wholly unrelated to the SoC I2C.
409
410 This driver can also be built as a module. If so, the module
411 will be called i2c-highlander.
412
Linus Torvalds1da177e2005-04-16 15:20:36 -0700413config I2C_IBM_IIC
414 tristate "IBM PPC 4xx on-chip I2C interface"
Sean MacLennan838349b2008-04-22 22:16:47 +0200415 depends on 4xx
Linus Torvalds1da177e2005-04-16 15:20:36 -0700416 help
Wolfram Sang4c03f682008-04-22 22:16:47 +0200417 Say Y here if you want to use IIC peripheral found on
418 embedded IBM PPC 4xx based systems.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700419
420 This driver can also be built as a module. If so, the module
421 will be called i2c-ibm_iic.
422
Darius Augulisaa11e382009-01-30 10:32:28 +0200423config I2C_IMX
424 tristate "IMX I2C interface"
425 depends on ARCH_MXC
426 help
427 Say Y here if you want to use the IIC bus controller on
428 the Freescale i.MX/MXC processors.
429
430 This driver can also be built as a module. If so, the module
431 will be called i2c-imx.
432
Alan Coxaa62f852010-10-27 12:44:03 +0100433config I2C_INTEL_MID
434 tristate "Intel Moorestown/Medfield Platform I2C controller"
Randy Dunlap9cc11de2010-10-29 13:37:09 -0700435 depends on PCI
Alan Coxaa62f852010-10-27 12:44:03 +0100436 help
437 Say Y here if you have an Intel Moorestown/Medfield platform I2C
438 controller.
439
440 This support is also available as a module. If so, the module
441 will be called i2c-intel-mid.
442
Linus Torvalds1da177e2005-04-16 15:20:36 -0700443config I2C_IOP3XX
Dan Williams285f5fa2006-12-07 02:59:39 +0100444 tristate "Intel IOPx3xx and IXP4xx on-chip I2C interface"
Jan Engelhardt16538e62007-05-01 23:26:34 +0200445 depends on ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || ARCH_IOP13XX
Linus Torvalds1da177e2005-04-16 15:20:36 -0700446 help
447 Say Y here if you want to use the IIC bus controller on
Dan Williams285f5fa2006-12-07 02:59:39 +0100448 the Intel IOPx3xx I/O Processors or IXP4xx Network Processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700449
450 This driver can also be built as a module. If so, the module
451 will be called i2c-iop3xx.
452
Linus Torvalds1da177e2005-04-16 15:20:36 -0700453config I2C_MPC
Wolfgang Grandeggerf00d7382010-02-17 11:19:19 +0100454 tristate "MPC107/824x/85xx/512x/52xx/83xx/86xx"
Kumar Gala0724d462011-03-15 11:02:43 -0500455 depends on PPC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700456 help
457 If you say yes to this option, support will be included for the
Wolfgang Grandeggerf00d7382010-02-17 11:19:19 +0100458 built-in I2C interface on the MPC107, Tsi107, MPC512x, MPC52xx,
459 MPC8240, MPC8245, MPC83xx, MPC85xx and MPC8641 family processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700460
461 This driver can also be built as a module. If so, the module
462 will be called i2c-mpc.
463
Jean Delvaref5b728a2008-07-14 22:38:23 +0200464config I2C_MV64XXX
465 tristate "Marvell mv64xxx I2C Controller"
Wolfram Sang097df402012-07-12 15:56:53 +0200466 depends on (MV64X60 || PLAT_ORION)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700467 help
Jean Delvaref5b728a2008-07-14 22:38:23 +0200468 If you say yes to this option, support will be included for the
469 built-in I2C interface on the Marvell 64xxx line of host bridges.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700470
471 This driver can also be built as a module. If so, the module
Jean Delvaref5b728a2008-07-14 22:38:23 +0200472 will be called i2c-mv64xxx.
Jean Delvare279e9022008-07-14 22:38:21 +0200473
Wolfram Sanga8da7fe2011-02-16 13:39:16 +0100474config I2C_MXS
475 tristate "Freescale i.MX28 I2C interface"
476 depends on SOC_IMX28
Wolfram Sang6b866c12011-08-31 20:37:50 +0200477 select STMP_DEVICE
Wolfram Sanga8da7fe2011-02-16 13:39:16 +0100478 help
479 Say Y here if you want to use the I2C bus controller on
480 the Freescale i.MX28 processors.
481
482 This driver can also be built as a module. If so, the module
483 will be called i2c-mxs.
484
srinidhi kasagar3f9900f2010-02-01 19:44:54 +0530485config I2C_NOMADIK
486 tristate "ST-Ericsson Nomadik/Ux500 I2C Controller"
Alessandro Rubini419408e2012-06-11 22:56:49 +0200487 depends on ARM_AMBA
srinidhi kasagar3f9900f2010-02-01 19:44:54 +0530488 help
489 If you say yes to this option, support will be included for the
Alessandro Rubini419408e2012-06-11 22:56:49 +0200490 I2C interface from ST-Ericsson's Nomadik and Ux500 architectures,
491 as well as the STA2X11 PCIe I/O HUB.
srinidhi kasagar3f9900f2010-02-01 19:44:54 +0530492
Wan ZongShunededad32010-06-25 13:43:07 +0800493config I2C_NUC900
494 tristate "NUC900 I2C Driver"
495 depends on ARCH_W90X900
496 help
497 Say Y here to include support for I2C controller in the
498 Winbond/Nuvoton NUC900 based System-on-Chip devices.
499
Peter Korsgaard18f98b12006-06-04 20:01:08 +0200500config I2C_OCORES
501 tristate "OpenCores I2C Controller"
Jan Engelhardt16538e62007-05-01 23:26:34 +0200502 depends on EXPERIMENTAL
Peter Korsgaard18f98b12006-06-04 20:01:08 +0200503 help
504 If you say yes to this option, support will be included for the
505 OpenCores I2C controller. For details see
506 http://www.opencores.org/projects.cgi/web/i2c/overview
507
508 This driver can also be built as a module. If so, the module
509 will be called i2c-ocores.
510
Komal Shah010d442c42006-08-13 23:44:09 +0200511config I2C_OMAP
512 tristate "OMAP I2C adapter"
Jan Engelhardt16538e62007-05-01 23:26:34 +0200513 depends on ARCH_OMAP
Komal Shah010d442c42006-08-13 23:44:09 +0200514 default y if MACH_OMAP_H3 || MACH_OMAP_OSK
515 help
516 If you say yes to this option, support will be included for the
517 I2C interface on the Texas Instruments OMAP1/2 family of processors.
518 Like OMAP1510/1610/1710/5912 and OMAP242x.
519 For details see http://www.ti.com/omap.
520
Jean Delvaref5b728a2008-07-14 22:38:23 +0200521config I2C_PASEMI
522 tristate "PA Semi SMBus interface"
523 depends on PPC_PASEMI && PCI
524 help
525 Supports the PA Semi PWRficient on-chip SMBus interfaces.
526
Wolfram Sang35bfc352010-06-03 11:33:56 +0200527config I2C_PCA_PLATFORM
528 tristate "PCA9564/PCA9665 as platform device"
529 select I2C_ALGOPCA
530 default n
531 help
532 This driver supports a memory mapped Philips PCA9564/PCA9665
533 parallel bus to I2C bus controller.
534
535 This driver can also be built as a module. If so, the module
536 will be called i2c-pca-platform.
537
538config I2C_PMCMSP
539 tristate "PMC MSP I2C TWI Controller"
540 depends on PMC_MSP
541 help
542 This driver supports the PMC TWI controller on MSP devices.
543
544 This driver can also be built as module. If so, the module
545 will be called i2c-pmcmsp.
546
Jean Delvaref5b728a2008-07-14 22:38:23 +0200547config I2C_PNX
Kevin Wellsc1151672010-08-05 15:40:17 -0700548 tristate "I2C bus support for Philips PNX and NXP LPC targets"
549 depends on ARCH_PNX4008 || ARCH_LPC32XX
Jean Delvaref5b728a2008-07-14 22:38:23 +0200550 help
551 This driver supports the Philips IP3204 I2C IP block master and/or
552 slave controller
553
554 This driver can also be built as a module. If so, the module
555 will be called i2c-pnx.
556
GuanXuetaod10e4a62011-02-26 21:29:29 +0800557config I2C_PUV3
558 tristate "PKUnity v3 I2C bus support"
559 depends on UNICORE32 && ARCH_PUV3
560 select I2C_ALGOBIT
561 help
562 This driver supports the I2C IP inside the PKUnity-v3 SoC.
563 This I2C bus controller is under AMBA/AXI bus.
564
565 This driver can also be built as a module. If so, the module
566 will be called i2c-puv3.
567
Jean Delvaref5b728a2008-07-14 22:38:23 +0200568config I2C_PXA
Haojian Zhuangd7c46dd2009-09-04 17:37:17 +0800569 tristate "Intel PXA2XX I2C adapter"
Sebastian Andrzej Siewior7e94dd12011-03-02 11:26:53 +0100570 depends on ARCH_PXA || ARCH_MMP || (X86_32 && PCI && OF)
Jean Delvaref5b728a2008-07-14 22:38:23 +0200571 help
572 If you have devices in the PXA I2C bus, say yes to this option.
573 This driver can also be built as a module. If so, the module
574 will be called i2c-pxa.
575
Sebastian Andrzej Siewior7e94dd12011-03-02 11:26:53 +0100576config I2C_PXA_PCI
577 def_bool I2C_PXA && X86_32 && PCI && OF
578
Jean Delvaref5b728a2008-07-14 22:38:23 +0200579config I2C_PXA_SLAVE
580 bool "Intel PXA2XX I2C Slave comms support"
Sebastian Andrzej Siewior7e94dd12011-03-02 11:26:53 +0100581 depends on I2C_PXA && !X86_32
Jean Delvaref5b728a2008-07-14 22:38:23 +0200582 help
583 Support I2C slave mode communications on the PXA I2C bus. This
584 is necessary for systems where the PXA may be a target on the
585 I2C bus.
586
Naveen Krishna Ch4b623922010-07-29 18:49:34 +0900587config HAVE_S3C2410_I2C
588 bool
589 help
590 This will include I2C support for Samsung SoCs. If you want to
591 include I2C support for any machine, kindly select this in the
592 respective Kconfig file.
593
Jean Delvaref5b728a2008-07-14 22:38:23 +0200594config I2C_S3C2410
595 tristate "S3C2410 I2C Driver"
Naveen Krishna Ch4b623922010-07-29 18:49:34 +0900596 depends on HAVE_S3C2410_I2C
Jean Delvaref5b728a2008-07-14 22:38:23 +0200597 help
598 Say Y here to include support for I2C controller in the
Naveen Krishna Ch4b623922010-07-29 18:49:34 +0900599 Samsung SoCs.
Jean Delvaref5b728a2008-07-14 22:38:23 +0200600
Oskar Schirmerb486ddb2009-04-02 13:19:07 +0200601config I2C_S6000
602 tristate "S6000 I2C support"
603 depends on XTENSA_VARIANT_S6000
604 help
605 This driver supports the on chip I2C device on the
606 S6000 xtensa processor family.
607
608 To compile this driver as a module, choose M here. The module
609 will be called i2c-s6000.
610
Jean Delvaref5b728a2008-07-14 22:38:23 +0200611config I2C_SH7760
612 tristate "Renesas SH7760 I2C Controller"
613 depends on CPU_SUBTYPE_SH7760
614 help
615 This driver supports the 2 I2C interfaces on the Renesas SH7760.
616
617 This driver can also be built as a module. If so, the module
618 will be called i2c-sh7760.
619
620config I2C_SH_MOBILE
621 tristate "SuperH Mobile I2C Controller"
Magnus Damm0924fad2010-03-11 10:06:15 +0000622 depends on SUPERH || ARCH_SHMOBILE
Jean Delvaref5b728a2008-07-14 22:38:23 +0200623 help
624 If you say yes to this option, support will be included for the
625 built-in I2C interface on the Renesas SH-Mobile processor.
626
627 This driver can also be built as a module. If so, the module
628 will be called i2c-sh_mobile.
629
630config I2C_SIMTEC
631 tristate "Simtec Generic I2C interface"
632 select I2C_ALGOBIT
633 help
634 If you say yes to this option, support will be included for
635 the Simtec Generic I2C interface. This driver is for the
636 simple I2C bus used on newer Simtec products for general
637 I2C, such as DDC on the Simtec BBD2016A.
638
639 This driver can also be built as a module. If so, the module
640 will be called i2c-simtec.
641
Zhiwu Song979b9072012-02-08 23:28:35 +0800642config I2C_SIRF
643 tristate "CSR SiRFprimaII I2C interface"
644 depends on ARCH_PRIMA2
645 help
646 If you say yes to this option, support will be included for the
647 CSR SiRFprimaII I2C interface.
648
649 This driver can also be built as a module. If so, the module
650 will be called i2c-sirf.
651
Linus Walleij18904c02009-06-13 21:51:34 +0200652config I2C_STU300
653 tristate "ST Microelectronics DDC I2C interface"
Linus Walleij4eaad8a2009-06-15 00:30:18 +0200654 depends on MACH_U300
Linus Walleij18904c02009-06-13 21:51:34 +0200655 default y if MACH_U300
656 help
657 If you say yes to this option, support will be included for the
658 I2C interface from ST Microelectronics simply called "DDC I2C"
659 supporting both I2C and DDC, used in e.g. the U300 series
660 mobile platforms.
661
662 This driver can also be built as a module. If so, the module
663 will be called i2c-stu300.
664
Colin Crossdb811ca2011-02-20 17:14:21 -0800665config I2C_TEGRA
666 tristate "NVIDIA Tegra internal I2C controller"
667 depends on ARCH_TEGRA
668 help
669 If you say yes to this option, support will be included for the
670 I2C controller embedded in NVIDIA Tegra SOCs
671
Jean Delvaref5b728a2008-07-14 22:38:23 +0200672config I2C_VERSATILE
673 tristate "ARM Versatile/Realview I2C bus support"
Russell Kingceade892010-02-11 21:44:53 +0000674 depends on ARCH_VERSATILE || ARCH_REALVIEW || ARCH_VEXPRESS
Jean Delvaref5b728a2008-07-14 22:38:23 +0200675 select I2C_ALGOBIT
676 help
677 Say yes if you want to support the I2C serial bus on ARMs Versatile
678 range of platforms.
679
680 This driver can also be built as a module. If so, the module
681 will be called i2c-versatile.
682
Rade Bozic85660f42010-01-28 12:47:07 -0800683config I2C_OCTEON
684 tristate "Cavium OCTEON I2C bus support"
685 depends on CPU_CAVIUM_OCTEON
686 help
687 Say yes if you want to support the I2C serial bus on Cavium
688 OCTEON SOC.
689
690 This driver can also be built as a module. If so, the module
691 will be called i2c-octeon.
692
Richard Röjforse1d5b652010-02-11 10:42:00 +0100693config I2C_XILINX
694 tristate "Xilinx I2C Controller"
695 depends on EXPERIMENTAL && HAS_IOMEM
696 help
697 If you say yes to this option, support will be included for the
698 Xilinx I2C controller.
699
700 This driver can also be built as a module. If so, the module
701 will be called xilinx_i2c.
702
Ganesan Ramalingam401c3432012-01-27 14:15:37 +0530703config I2C_XLR
704 tristate "XLR I2C support"
705 depends on CPU_XLR
706 help
707 This driver enables support for the on-chip I2C interface of
708 the Netlogic XLR/XLS MIPS processors.
709
710 This driver can also be built as a module. If so, the module
711 will be called i2c-xlr.
712
Jean Delvaref5b728a2008-07-14 22:38:23 +0200713comment "External I2C/SMBus adapter drivers"
714
Guenter Roeck335d7c52011-01-26 11:45:49 -0800715config I2C_DIOLAN_U2C
716 tristate "Diolan U2C-12 USB adapter"
717 depends on USB
718 help
719 If you say yes to this option, support will be included for Diolan
720 U2C-12, a USB to I2C interface.
721
722 This driver can also be built as a module. If so, the module
723 will be called i2c-diolan-u2c.
724
Linus Torvalds1da177e2005-04-16 15:20:36 -0700725config I2C_PARPORT
726 tristate "Parallel port adapter"
Jan Engelhardt16538e62007-05-01 23:26:34 +0200727 depends on PARPORT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700728 select I2C_ALGOBIT
Jean Delvare35859252010-03-02 12:23:44 +0100729 select I2C_SMBUS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700730 help
731 This supports parallel port I2C adapters such as the ones made by
732 Philips or Velleman, Analog Devices evaluation boards, and more.
733 Basically any adapter using the parallel port as an I2C bus with
734 no extra chipset is supported by this driver, or could be.
735
736 This driver is a replacement for (and was inspired by) an older
737 driver named i2c-philips-par. The new driver supports more devices,
738 and makes it easier to add support for new devices.
Mark M. Hoffmane97b81d2006-03-23 16:50:25 +0100739
740 An adapter type parameter is now mandatory. Please read the file
741 Documentation/i2c/busses/i2c-parport for details.
742
Linus Torvalds1da177e2005-04-16 15:20:36 -0700743 Another driver exists, named i2c-parport-light, which doesn't depend
744 on the parport driver. This is meant for embedded systems. Don't say
745 Y here if you intend to say Y or M there.
746
Wolfram Sang4c03f682008-04-22 22:16:47 +0200747 This support is also available as a module. If so, the module
Linus Torvalds1da177e2005-04-16 15:20:36 -0700748 will be called i2c-parport.
749
750config I2C_PARPORT_LIGHT
751 tristate "Parallel port adapter (light)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700752 select I2C_ALGOBIT
Jean Delvare927ab2f2010-03-02 12:23:45 +0100753 select I2C_SMBUS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700754 help
755 This supports parallel port I2C adapters such as the ones made by
756 Philips or Velleman, Analog Devices evaluation boards, and more.
757 Basically any adapter using the parallel port as an I2C bus with
758 no extra chipset is supported by this driver, or could be.
759
760 This driver is a light version of i2c-parport. It doesn't depend
761 on the parport driver, and uses direct I/O access instead. This
Matt LaPlante09509602006-10-03 22:31:37 +0200762 might be preferred on embedded systems where wasting memory for
Linus Torvalds1da177e2005-04-16 15:20:36 -0700763 the clean but heavy parport handling is not an option. The
764 drawback is a reduced portability and the impossibility to
Matt LaPlante09509602006-10-03 22:31:37 +0200765 daisy-chain other parallel port devices.
Wolfram Sang4c03f682008-04-22 22:16:47 +0200766
Linus Torvalds1da177e2005-04-16 15:20:36 -0700767 Don't say Y here if you said Y or M to i2c-parport. Saying M to
768 both is possible but both modules should not be loaded at the same
769 time.
770
Wolfram Sang4c03f682008-04-22 22:16:47 +0200771 This support is also available as a module. If so, the module
Linus Torvalds1da177e2005-04-16 15:20:36 -0700772 will be called i2c-parport-light.
773
Jean Delvaref5b728a2008-07-14 22:38:23 +0200774config I2C_TAOS_EVM
775 tristate "TAOS evaluation module"
776 depends on EXPERIMENTAL
777 select SERIO
778 select SERIO_SERPORT
779 default n
Olof Johanssonbeb58aa2007-02-13 22:09:03 +0100780 help
Jean Delvaref5b728a2008-07-14 22:38:23 +0200781 This supports TAOS evaluation modules on serial port. In order to
782 use this driver, you will need the inputattach tool, which is part
783 of the input-utils package.
Olof Johanssonbeb58aa2007-02-13 22:09:03 +0100784
Jean Delvaref5b728a2008-07-14 22:38:23 +0200785 If unsure, say N.
786
787 This support is also available as a module. If so, the module
788 will be called i2c-taos-evm.
789
790config I2C_TINY_USB
791 tristate "Tiny-USB adapter"
792 depends on USB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700793 help
Jean Delvaref5b728a2008-07-14 22:38:23 +0200794 If you say yes to this option, support will be included for the
795 i2c-tiny-usb, a simple do-it-yourself USB to I2C interface. See
796 http://www.harbaum.org/till/i2c_tiny_usb for hardware details.
797
798 This driver can also be built as a module. If so, the module
799 will be called i2c-tiny-usb.
800
Jean Delvaref5b728a2008-07-14 22:38:23 +0200801comment "Other I2C/SMBus bus drivers"
802
803config I2C_ACORN
804 tristate "Acorn IOC/IOMD I2C bus support"
805 depends on ARCH_ACORN
806 default y
807 select I2C_ALGOBIT
808 help
809 Say yes if you want to support the I2C bus on Acorn platforms.
810
811 If you don't know, say Y.
812
813config I2C_ELEKTOR
814 tristate "Elektor ISA card"
Geert Uytterhoeven95192822011-10-30 13:47:24 +0100815 depends on ISA && HAS_IOPORT && BROKEN_ON_SMP
Jean Delvaref5b728a2008-07-14 22:38:23 +0200816 select I2C_ALGOPCF
817 help
818 This supports the PCF8584 ISA bus I2C adapter. Say Y if you own
819 such an adapter.
820
821 This support is also available as a module. If so, the module
822 will be called i2c-elektor.
823
824config I2C_PCA_ISA
Marco Aurelio da Costaeff9ec92009-03-28 21:34:44 +0100825 tristate "PCA9564/PCA9665 on an ISA bus"
Jean Delvaref5b728a2008-07-14 22:38:23 +0200826 depends on ISA
827 select I2C_ALGOPCA
828 default n
829 help
Marco Aurelio da Costaeff9ec92009-03-28 21:34:44 +0100830 This driver supports ISA boards using the Philips PCA9564/PCA9665
Jean Delvaref5b728a2008-07-14 22:38:23 +0200831 parallel bus to I2C bus controller.
832
833 This driver can also be built as a module. If so, the module
834 will be called i2c-pca-isa.
835
836 This device is almost undetectable and using this driver on a
837 system which doesn't have this device will result in long
838 delays when I2C/SMBus chip drivers are loaded (e.g. at boot
839 time). If unsure, say N.
840
Linus Torvalds1da177e2005-04-16 15:20:36 -0700841config I2C_SIBYTE
842 tristate "SiByte SMBus interface"
Jan Engelhardt16538e62007-05-01 23:26:34 +0200843 depends on SIBYTE_SB1xxx_SOC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700844 help
845 Supports the SiByte SOC on-chip I2C interfaces (2 channels).
846
Jean Delvaref5b728a2008-07-14 22:38:23 +0200847config I2C_STUB
848 tristate "I2C/SMBus Test Stub"
849 depends on EXPERIMENTAL && m
850 default 'n'
Ben Dooksbcda9f12007-05-01 23:26:34 +0200851 help
Jean Delvaref5b728a2008-07-14 22:38:23 +0200852 This module may be useful to developers of SMBus client drivers,
853 especially for certain kinds of sensor chips.
Ben Dooksbcda9f12007-05-01 23:26:34 +0200854
Jean Delvaref5b728a2008-07-14 22:38:23 +0200855 If you do build this module, be sure to read the notes and warnings
856 in <file:Documentation/i2c/i2c-stub>.
857
858 If you don't know what to do here, definitely say N.
Ben Dooksbcda9f12007-05-01 23:26:34 +0200859
Linus Torvalds1da177e2005-04-16 15:20:36 -0700860config SCx200_I2C
Jean Delvare11de70b2007-05-01 23:26:34 +0200861 tristate "NatSemi SCx200 I2C using GPIO pins (DEPRECATED)"
Jan Engelhardt16538e62007-05-01 23:26:34 +0200862 depends on SCx200_GPIO
Linus Torvalds1da177e2005-04-16 15:20:36 -0700863 select I2C_ALGOBIT
864 help
865 Enable the use of two GPIO pins of a SCx200 processor as an I2C bus.
866
867 If you don't know what to do here, say N.
868
Wolfram Sang4c03f682008-04-22 22:16:47 +0200869 This support is also available as a module. If so, the module
Linus Torvalds1da177e2005-04-16 15:20:36 -0700870 will be called scx200_i2c.
871
Jean Delvare11de70b2007-05-01 23:26:34 +0200872 This driver is deprecated and will be dropped soon. Use i2c-gpio
873 (or scx200_acb) instead.
874
Linus Torvalds1da177e2005-04-16 15:20:36 -0700875config SCx200_I2C_SCL
876 int "GPIO pin used for SCL"
877 depends on SCx200_I2C
878 default "12"
879 help
880 Enter the GPIO pin number used for the SCL signal. This value can
881 also be specified with a module parameter.
882
883config SCx200_I2C_SDA
884 int "GPIO pin used for SDA"
885 depends on SCx200_I2C
886 default "13"
887 help
888 Enter the GPIO pin number used for the SSA signal. This value can
889 also be specified with a module parameter.
890
891config SCx200_ACB
Ben Gardnera417bbd2006-01-18 22:53:09 +0100892 tristate "Geode ACCESS.bus support"
Jan Engelhardt16538e62007-05-01 23:26:34 +0200893 depends on X86_32 && PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700894 help
Ben Gardnera417bbd2006-01-18 22:53:09 +0100895 Enable the use of the ACCESS.bus controllers on the Geode SCx200 and
896 SC1100 processors and the CS5535 and CS5536 Geode companion devices.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700897
898 If you don't know what to do here, say N.
899
Wolfram Sang4c03f682008-04-22 22:16:47 +0200900 This support is also available as a module. If so, the module
Linus Torvalds1da177e2005-04-16 15:20:36 -0700901 will be called scx200_acb.
902
Linus Torvalds1da177e2005-04-16 15:20:36 -0700903endmenu