]> asedeno.scripts.mit.edu Git - linux.git/blob - drivers/i2c/busses/Kconfig
i2c: Allow selecting BCM2835 I2C controllers on ARCH_BRCMSTB
[linux.git] / drivers / i2c / busses / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Sensor device configuration
4 #
5
6 menu "I2C Hardware Bus support"
7         depends on HAS_IOMEM
8
9 comment "PC SMBus host controller drivers"
10         depends on PCI
11
12 config I2C_ALI1535
13         tristate "ALI 1535"
14         depends on PCI
15         help
16           If you say yes to this option, support will be included for the SMB
17           Host controller on Acer Labs Inc. (ALI) M1535 South Bridges.  The SMB
18           controller is part of the 7101 device, which is an ACPI-compliant
19           Power Management Unit (PMU).
20
21           This driver can also be built as a module.  If so, the module
22           will be called i2c-ali1535.
23
24 config I2C_ALI1563
25         tristate "ALI 1563"
26         depends on PCI
27         help
28           If you say yes to this option, support will be included for the SMB
29           Host controller on Acer Labs Inc. (ALI) M1563 South Bridges.  The SMB
30           controller is part of the 7101 device, which is an ACPI-compliant
31           Power Management Unit (PMU).
32
33           This driver can also be built as a module.  If so, the module
34           will be called i2c-ali1563.
35
36 config I2C_ALI15X3
37         tristate "ALI 15x3"
38         depends on PCI
39         help
40           If you say yes to this option, support will be included for the
41           Acer Labs Inc. (ALI) M1514 and M1543 motherboard I2C interfaces.
42
43           This driver can also be built as a module.  If so, the module
44           will be called i2c-ali15x3.
45
46 config I2C_AMD756
47         tristate "AMD 756/766/768/8111 and nVidia nForce"
48         depends on PCI
49         help
50           If you say yes to this option, support will be included for the AMD
51           756/766/768 mainboard I2C interfaces.  The driver also includes
52           support for the first (SMBus 1.0) I2C interface of the AMD 8111 and
53           the nVidia nForce I2C interface.
54
55           This driver can also be built as a module.  If so, the module
56           will be called i2c-amd756.
57
58 config I2C_AMD756_S4882
59         tristate "SMBus multiplexing on the Tyan S4882"
60         depends on I2C_AMD756 && X86
61         help
62           Enabling this option will add specific SMBus support for the Tyan
63           S4882 motherboard.  On this 4-CPU board, the SMBus is multiplexed
64           over 8 different channels, where the various memory module EEPROMs
65           and temperature sensors live.  Saying yes here will give you access
66           to these in addition to the trunk.
67
68           This driver can also be built as a module.  If so, the module
69           will be called i2c-amd756-s4882.
70
71 config I2C_AMD8111
72         tristate "AMD 8111"
73         depends on PCI
74         help
75           If you say yes to this option, support will be included for the
76           second (SMBus 2.0) AMD 8111 mainboard I2C interface.
77
78           This driver can also be built as a module.  If so, the module
79           will be called i2c-amd8111.
80
81 config I2C_AMD_MP2
82         tristate "AMD MP2 PCIe"
83         depends on PCI && ACPI
84         help
85           If you say yes to this option, support will be included for the AMD
86           MP2 PCIe I2C adapter.
87
88           This driver can also be built as modules.  If so, the modules will
89           be called i2c-amd-mp2-pci and i2c-amd-mp2-plat.
90
91 config I2C_HIX5HD2
92         tristate "Hix5hd2 high-speed I2C driver"
93         depends on ARCH_HISI || ARCH_HIX5HD2 || COMPILE_TEST
94         help
95           Say Y here to include support for the high-speed I2C controller
96           used in HiSilicon hix5hd2 SoCs.
97
98           This driver can also be built as a module. If so, the module
99           will be called i2c-hix5hd2.
100
101 config I2C_I801
102         tristate "Intel 82801 (ICH/PCH)"
103         depends on PCI
104         select CHECK_SIGNATURE if X86 && DMI
105         select I2C_SMBUS
106         help
107           If you say yes to this option, support will be included for the Intel
108           801 family of mainboard I2C interfaces.  Specifically, the following
109           versions of the chipset are supported:
110             82801AA
111             82801AB
112             82801BA
113             82801CA/CAM
114             82801DB
115             82801EB/ER (ICH5/ICH5R)
116             6300ESB
117             ICH6
118             ICH7
119             ESB2
120             ICH8
121             ICH9
122             EP80579 (Tolapai)
123             ICH10
124             5/3400 Series (PCH)
125             6 Series (PCH)
126             Patsburg (PCH)
127             DH89xxCC (PCH)
128             Panther Point (PCH)
129             Lynx Point (PCH)
130             Avoton (SOC)
131             Wellsburg (PCH)
132             Coleto Creek (PCH)
133             Wildcat Point (PCH)
134             BayTrail (SOC)
135             Braswell (SOC)
136             Sunrise Point (PCH)
137             Kaby Lake (PCH)
138             DNV (SOC)
139             Broxton (SOC)
140             Lewisburg (PCH)
141             Gemini Lake (SOC)
142             Cannon Lake (PCH)
143             Cedar Fork (PCH)
144             Ice Lake (PCH)
145             Comet Lake (PCH)
146
147           This driver can also be built as a module.  If so, the module
148           will be called i2c-i801.
149
150 config I2C_ISCH
151         tristate "Intel SCH SMBus 1.0"
152         depends on PCI
153         select LPC_SCH
154         help
155           Say Y here if you want to use SMBus controller on the Intel SCH
156           based systems.
157
158           This driver can also be built as a module. If so, the module
159           will be called i2c-isch.
160
161 config I2C_ISMT
162         tristate "Intel iSMT SMBus Controller"
163         depends on PCI && X86
164         help
165           If you say yes to this option, support will be included for the Intel
166           iSMT SMBus host controller interface.
167
168           This driver can also be built as a module.  If so, the module will be
169           called i2c-ismt.
170
171 config I2C_PIIX4
172         tristate "Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC)"
173         depends on PCI
174         help
175           If you say yes to this option, support will be included for the Intel
176           PIIX4 family of mainboard I2C interfaces.  Specifically, the following
177           versions of the chipset are supported (note that Serverworks is part
178           of Broadcom):
179             Intel PIIX4
180             Intel 440MX
181             ATI IXP200
182             ATI IXP300
183             ATI IXP400
184             ATI SB600
185             ATI SB700/SP5100
186             ATI SB800
187             AMD Hudson-2
188             AMD ML
189             AMD CZ
190             Hygon CZ
191             Serverworks OSB4
192             Serverworks CSB5
193             Serverworks CSB6
194             Serverworks HT-1000
195             Serverworks HT-1100
196             SMSC Victory66
197
198           Some AMD chipsets contain two PIIX4-compatible SMBus
199           controllers. This driver will attempt to use both controllers
200           on the SB700/SP5100, if they have been initialized by the BIOS.
201
202           This driver can also be built as a module.  If so, the module
203           will be called i2c-piix4.
204
205 config I2C_CHT_WC
206         tristate "Intel Cherry Trail Whiskey Cove PMIC smbus controller"
207         depends on INTEL_SOC_PMIC_CHTWC
208         help
209           If you say yes to this option, support will be included for the
210           SMBus controller found in the Intel Cherry Trail Whiskey Cove PMIC
211           found on some Intel Cherry Trail systems.
212
213           Note this controller is hooked up to a TI bq24292i charger-IC,
214           combined with a FUSB302 Type-C port-controller as such it is advised
215           to also select CONFIG_TYPEC_FUSB302=m.
216
217 config I2C_NFORCE2
218         tristate "Nvidia nForce2, nForce3 and nForce4"
219         depends on PCI
220         help
221           If you say yes to this option, support will be included for the Nvidia
222           nForce2, nForce3 and nForce4 families of mainboard I2C interfaces.
223
224           This driver can also be built as a module.  If so, the module
225           will be called i2c-nforce2.
226
227 config I2C_NFORCE2_S4985
228         tristate "SMBus multiplexing on the Tyan S4985"
229         depends on I2C_NFORCE2 && X86
230         help
231           Enabling this option will add specific SMBus support for the Tyan
232           S4985 motherboard.  On this 4-CPU board, the SMBus is multiplexed
233           over 4 different channels, where the various memory module EEPROMs
234           live.  Saying yes here will give you access to these in addition
235           to the trunk.
236
237           This driver can also be built as a module.  If so, the module
238           will be called i2c-nforce2-s4985.
239
240 config I2C_NVIDIA_GPU
241         tristate "NVIDIA GPU I2C controller"
242         depends on PCI
243         help
244           If you say yes to this option, support will be included for the
245           NVIDIA GPU I2C controller which is used to communicate with the GPU's
246           Type-C controller. This driver can also be built as a module called
247           i2c-nvidia-gpu.
248
249 config I2C_SIS5595
250         tristate "SiS 5595"
251         depends on PCI
252         help
253           If you say yes to this option, support will be included for the
254           SiS5595 SMBus (a subset of I2C) interface.
255
256           This driver can also be built as a module.  If so, the module
257           will be called i2c-sis5595.
258
259 config I2C_SIS630
260         tristate "SiS 630/730/964"
261         depends on PCI
262         help
263           If you say yes to this option, support will be included for the
264           SiS630, SiS730 and SiS964 SMBus (a subset of I2C) interface.
265
266           This driver can also be built as a module.  If so, the module
267           will be called i2c-sis630.
268
269 config I2C_SIS96X
270         tristate "SiS 96x"
271         depends on PCI
272         help
273           If you say yes to this option, support will be included for the SiS
274           96x SMBus (a subset of I2C) interfaces.  Specifically, the following
275           chipsets are supported:
276             645/961
277             645DX/961
278             645DX/962
279             648/961
280             650/961
281             735
282             745
283
284           This driver can also be built as a module.  If so, the module
285           will be called i2c-sis96x.
286
287 config I2C_VIA
288         tristate "VIA VT82C586B"
289         depends on PCI
290         select I2C_ALGOBIT
291         help
292           If you say yes to this option, support will be included for the VIA
293           82C586B I2C interface
294
295           This driver can also be built as a module.  If so, the module
296           will be called i2c-via.
297
298 config I2C_VIAPRO
299         tristate "VIA VT82C596/82C686/82xx and CX700/VX8xx/VX900"
300         depends on PCI
301         help
302           If you say yes to this option, support will be included for the VIA
303           VT82C596 and later SMBus interface.  Specifically, the following
304           chipsets are supported:
305             VT82C596A/B
306             VT82C686A/B
307             VT8231
308             VT8233/A
309             VT8235
310             VT8237R/A/S
311             VT8251
312             CX700
313             VX800/VX820
314             VX855/VX875
315             VX900
316
317           This driver can also be built as a module.  If so, the module
318           will be called i2c-viapro.
319
320 if ACPI
321
322 comment "ACPI drivers"
323
324 config I2C_SCMI
325         tristate "SMBus Control Method Interface"
326         help
327           This driver supports the SMBus Control Method Interface. It needs the
328           BIOS to declare ACPI control methods as described in the SMBus Control
329           Method Interface specification.
330
331           To compile this driver as a module, choose M here:
332           the module will be called i2c-scmi.
333
334 endif # ACPI
335
336 comment "Mac SMBus host controller drivers"
337         depends on PPC_CHRP || PPC_PMAC
338
339 config I2C_HYDRA
340         tristate "CHRP Apple Hydra Mac I/O I2C interface"
341         depends on PCI && PPC_CHRP
342         select I2C_ALGOBIT
343         help
344           This supports the use of the I2C interface in the Apple Hydra Mac
345           I/O chip on some CHRP machines (e.g. the LongTrail).  Say Y if you
346           have such a machine.
347
348           This support is also available as a module.  If so, the module
349           will be called i2c-hydra.
350
351 config I2C_POWERMAC
352         tristate "Powermac I2C interface"
353         depends on PPC_PMAC
354         default y
355         help
356           This exposes the various PowerMac i2c interfaces to the linux i2c
357           layer and to userland. It is used by various drivers on the PowerMac
358           platform, and should generally be enabled.
359
360           This support is also available as a module.  If so, the module
361           will be called i2c-powermac.
362
363 comment "I2C system bus drivers (mostly embedded / system-on-chip)"
364
365 config I2C_ALTERA
366         tristate "Altera Soft IP I2C"
367         depends on (ARCH_SOCFPGA || NIOS2) && OF
368         help
369           If you say yes to this option, support will be included for the
370           Altera Soft IP I2C interfaces on SoCFPGA and Nios2 architectures.
371
372           This driver can also be built as a module.  If so, the module
373           will be called i2c-altera.
374
375 config I2C_ASPEED
376         tristate "Aspeed I2C Controller"
377         depends on ARCH_ASPEED || COMPILE_TEST
378         help
379           If you say yes to this option, support will be included for the
380           Aspeed I2C controller.
381
382           This driver can also be built as a module.  If so, the module
383           will be called i2c-aspeed.
384
385 config I2C_AT91
386         tristate "Atmel AT91 I2C Two-Wire interface (TWI)"
387         depends on ARCH_AT91
388         help
389           This supports the use of the I2C interface on Atmel AT91
390           processors.
391
392           A serious problem is that there is no documented way to issue
393           repeated START conditions for more than two messages, as needed
394           to support combined I2C messages.  Use the i2c-gpio driver
395           unless your system can cope with this limitation.
396
397           Caution! at91rm9200, at91sam9261, at91sam9260, at91sam9263 devices
398           don't have clock stretching in transmission mode. For that reason,
399           you can encounter underrun issues causing premature stop sendings if
400           the latency to fill the transmission register is too long. If you
401           are facing this situation, use the i2c-gpio driver.
402
403 config I2C_AT91_SLAVE_EXPERIMENTAL
404         tristate "Microchip AT91 I2C experimental slave mode"
405         depends on I2C_AT91
406         select I2C_SLAVE
407         help
408           If you say yes to this option, support for the slave mode will be
409           added. Caution: do not use it for production. This feature has not
410           been tested in a heavy way, help wanted.
411           There are known bugs:
412             - It can hang, on a SAMA5D4, after several transfers.
413             - There are some mismtaches with a SAMA5D4 as slave and a SAMA5D2 as
414             master.
415
416 config I2C_AU1550
417         tristate "Au1550/Au1200/Au1300 SMBus interface"
418         depends on MIPS_ALCHEMY
419         help
420           If you say yes to this option, support will be included for the
421           Au1550/Au1200/Au1300 SMBus interface.
422
423           This driver can also be built as a module.  If so, the module
424           will be called i2c-au1550.
425
426 config I2C_AXXIA
427         tristate "Axxia I2C controller"
428         depends on ARCH_AXXIA || COMPILE_TEST
429         default ARCH_AXXIA
430         help
431           Say yes if you want to support the I2C bus on Axxia platforms.
432
433           Please note that this controller is limited to transfers of maximum
434           255 bytes in length. Any attempt to to a larger transfer will return
435           an error.
436
437 config I2C_BCM2835
438         tristate "Broadcom BCM2835 I2C controller"
439         depends on ARCH_BCM2835 || ARCH_BRCMSTB
440         help
441           If you say yes to this option, support will be included for the
442           BCM2835 I2C controller.
443
444           If you don't know what to do here, say N.
445
446           This support is also available as a module.  If so, the module
447           will be called i2c-bcm2835.
448
449 config I2C_BCM_IPROC
450         tristate "Broadcom iProc I2C controller"
451         depends on ARCH_BCM_IPROC || COMPILE_TEST
452         default ARCH_BCM_IPROC
453         select I2C_SLAVE
454         help
455           If you say yes to this option, support will be included for the
456           Broadcom iProc I2C controller.
457
458           If you don't know what to do here, say N.
459
460 config I2C_BCM_KONA
461         tristate "BCM Kona I2C adapter"
462         depends on ARCH_BCM_MOBILE
463         default y
464         help
465           If you say yes to this option, support will be included for the
466           I2C interface on the Broadcom Kona family of processors.
467
468           If you do not need KONA I2C interface, say N.
469
470 config I2C_BRCMSTB
471         tristate "BRCM Settop/DSL I2C controller"
472         depends on ARCH_BRCMSTB || BMIPS_GENERIC || ARCH_BCM_63XX || \
473                    COMPILE_TEST
474         default y
475         help
476           If you say yes to this option, support will be included for the
477           I2C interface on the Broadcom Settop/DSL SoCs.
478
479           If you do not need I2C interface, say N.
480
481 config I2C_CADENCE
482         tristate "Cadence I2C Controller"
483         depends on ARCH_ZYNQ || ARM64 || XTENSA
484         help
485           Say yes here to select Cadence I2C Host Controller. This controller is
486           e.g. used by Xilinx Zynq.
487
488 config I2C_CBUS_GPIO
489         tristate "CBUS I2C driver"
490         depends on GPIOLIB || COMPILE_TEST
491         help
492           Support for CBUS access using I2C API. Mostly relevant for Nokia
493           Internet Tablets (770, N800 and N810).
494
495           This driver can also be built as a module.  If so, the module
496           will be called i2c-cbus-gpio.
497
498 config I2C_CPM
499         tristate "Freescale CPM1 or CPM2 (MPC8xx/826x)"
500         depends on CPM1 || CPM2
501         help
502           This supports the use of the I2C interface on Freescale
503           processors with CPM1 or CPM2.
504
505           This driver can also be built as a module.  If so, the module
506           will be called i2c-cpm.
507
508 config I2C_DAVINCI
509         tristate "DaVinci I2C driver"
510         depends on ARCH_DAVINCI || ARCH_KEYSTONE
511         help
512           Support for TI DaVinci I2C controller driver.
513
514           This driver can also be built as a module.  If so, the module
515           will be called i2c-davinci.
516
517           Please note that this driver might be needed to bring up other
518           devices such as DaVinci NIC.
519           For details please see http://www.ti.com/davinci
520
521 config I2C_DESIGNWARE_CORE
522         tristate
523
524 config I2C_DESIGNWARE_PLATFORM
525         tristate "Synopsys DesignWare Platform"
526         select I2C_DESIGNWARE_CORE
527         depends on (ACPI && COMMON_CLK) || !ACPI
528         help
529           If you say yes to this option, support will be included for the
530           Synopsys DesignWare I2C adapter.
531
532           This driver can also be built as a module.  If so, the module
533           will be called i2c-designware-platform.
534
535 config I2C_DESIGNWARE_SLAVE
536         bool "Synopsys DesignWare Slave"
537         select I2C_SLAVE
538         depends on I2C_DESIGNWARE_PLATFORM
539         help
540           If you say yes to this option, support will be included for the
541           Synopsys DesignWare I2C slave adapter.
542
543           This is not a standalone module, this module compiles together with
544           i2c-designware-core.
545
546 config I2C_DESIGNWARE_PCI
547         tristate "Synopsys DesignWare PCI"
548         depends on PCI
549         select I2C_DESIGNWARE_CORE
550         help
551           If you say yes to this option, support will be included for the
552           Synopsys DesignWare I2C adapter. Only master mode is supported.
553
554           This driver can also be built as a module.  If so, the module
555           will be called i2c-designware-pci.
556
557 config I2C_DESIGNWARE_BAYTRAIL
558         bool "Intel Baytrail I2C semaphore support"
559         depends on ACPI
560         depends on (I2C_DESIGNWARE_PLATFORM=m && IOSF_MBI) || \
561                    (I2C_DESIGNWARE_PLATFORM=y && IOSF_MBI=y)
562         help
563           This driver enables managed host access to the PMIC I2C bus on select
564           Intel BayTrail platforms using the X-Powers AXP288 PMIC. It allows
565           the host to request uninterrupted access to the PMIC's I2C bus from
566           the platform firmware controlling it. You should say Y if running on
567           a BayTrail system using the AXP288.
568
569 config I2C_DIGICOLOR
570         tristate "Conexant Digicolor I2C driver"
571         depends on ARCH_DIGICOLOR
572         help
573           Support for Conexant Digicolor SoCs (CX92755) I2C controller driver.
574
575           This driver can also be built as a module.  If so, the module
576           will be called i2c-digicolor.
577
578 config I2C_EFM32
579         tristate "EFM32 I2C controller"
580         depends on ARCH_EFM32 || COMPILE_TEST
581         help
582           This driver supports the i2c block found in Energy Micro's EFM32
583           SoCs.
584
585 config I2C_EG20T
586         tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) I2C"
587         depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
588         help
589           This driver is for PCH(Platform controller Hub) I2C of EG20T which
590           is an IOH(Input/Output Hub) for x86 embedded processor.
591           This driver can access PCH I2C bus device.
592
593           This driver also can be used for LAPIS Semiconductor IOH(Input/
594           Output Hub), ML7213, ML7223 and ML7831.
595           ML7213 IOH is for IVI(In-Vehicle Infotainment) use, ML7223 IOH is
596           for MP(Media Phone) use and ML7831 IOH is for general purpose use.
597           ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
598           ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
599
600 config I2C_EMEV2
601         tristate "EMMA Mobile series I2C adapter"
602         depends on HAVE_CLK
603         select I2C_SLAVE
604         help
605           If you say yes to this option, support will be included for the
606           I2C interface on the Renesas Electronics EM/EV family of processors.
607
608 config I2C_EXYNOS5
609         tristate "Exynos5 high-speed I2C driver"
610         depends on ARCH_EXYNOS && OF
611         default y
612         help
613           High-speed I2C controller on Exynos5 based Samsung SoCs.
614
615 config I2C_GPIO
616         tristate "GPIO-based bitbanging I2C"
617         depends on GPIOLIB || COMPILE_TEST
618         select I2C_ALGOBIT
619         help
620           This is a very simple bitbanging I2C driver utilizing the
621           arch-neutral GPIO API to control the SCL and SDA lines.
622
623 config I2C_GPIO_FAULT_INJECTOR
624         bool "GPIO-based fault injector"
625         depends on I2C_GPIO
626         help
627           This adds some functionality to the i2c-gpio driver which can inject
628           faults to an I2C bus, so another bus master can be stress-tested.
629           This is for debugging. If unsure, say 'no'.
630
631 config I2C_HIGHLANDER
632         tristate "Highlander FPGA SMBus interface"
633         depends on SH_HIGHLANDER
634         help
635           If you say yes to this option, support will be included for
636           the SMBus interface located in the FPGA on various Highlander
637           boards, particularly the R0P7780LC0011RL and R0P7785LC0011RL
638           FPGAs. This is wholly unrelated to the SoC I2C.
639
640           This driver can also be built as a module.  If so, the module
641           will be called i2c-highlander.
642
643 config I2C_IBM_IIC
644         tristate "IBM PPC 4xx on-chip I2C interface"
645         depends on 4xx
646         help
647           Say Y here if you want to use IIC peripheral found on
648           embedded IBM PPC 4xx based systems.
649
650           This driver can also be built as a module.  If so, the module
651           will be called i2c-ibm_iic.
652
653 config I2C_IMG
654         tristate "Imagination Technologies I2C SCB Controller"
655         depends on MIPS || COMPILE_TEST
656         help
657           Say Y here if you want to use the IMG I2C SCB controller,
658           available on the TZ1090 and other IMG SoCs.
659
660           This driver can also be built as a module.  If so, the module
661           will be called i2c-img-scb.
662
663 config I2C_IMX
664         tristate "IMX I2C interface"
665         depends on ARCH_MXC || ARCH_LAYERSCAPE || COLDFIRE
666         help
667           Say Y here if you want to use the IIC bus controller on
668           the Freescale i.MX/MXC, Layerscape or ColdFire processors.
669
670           This driver can also be built as a module.  If so, the module
671           will be called i2c-imx.
672
673 config I2C_IMX_LPI2C
674         tristate "IMX Low Power I2C interface"
675         depends on ARCH_MXC || COMPILE_TEST
676         help
677           Say Y here if you want to use the Low Power IIC bus controller
678           on the Freescale i.MX processors.
679
680           This driver can also be built as a module. If so, the module
681           will be called i2c-imx-lpi2c.
682
683 config I2C_IOP3XX
684         tristate "Intel IOPx3xx and IXP4xx on-chip I2C interface"
685         depends on ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || ARCH_IOP13XX
686         help
687           Say Y here if you want to use the IIC bus controller on
688           the Intel IOPx3xx I/O Processors or IXP4xx Network Processors.
689
690           This driver can also be built as a module.  If so, the module
691           will be called i2c-iop3xx.
692
693 config I2C_JZ4780
694         tristate "JZ4780 I2C controller interface support"
695         depends on MACH_JZ4780 || COMPILE_TEST
696         help
697          If you say yes to this option, support will be included for the
698          Ingenic JZ4780 I2C controller.
699
700          If you don't know what to do here, say N.
701
702 config I2C_KEMPLD
703         tristate "Kontron COM I2C Controller"
704         depends on MFD_KEMPLD
705         help
706           This enables support for the I2C bus interface on some Kontron ETX
707           and COMexpress (ETXexpress) modules.
708
709           This driver can also be built as a module. If so, the module
710           will be called i2c-kempld.
711
712 config I2C_LPC2K
713         tristate "I2C bus support for NXP LPC2K/LPC178x/18xx/43xx"
714         depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
715         help
716           This driver supports the I2C interface found several NXP
717           devices including LPC2xxx, LPC178x/7x and LPC18xx/43xx.
718
719           This driver can also be built as a module.  If so, the module
720           will be called i2c-lpc2k.
721
722 config I2C_MESON
723         tristate "Amlogic Meson I2C controller"
724         depends on ARCH_MESON || COMPILE_TEST
725         help
726           If you say yes to this option, support will be included for the
727           I2C interface on the Amlogic Meson family of SoCs.
728
729 config I2C_MPC
730         tristate "MPC107/824x/85xx/512x/52xx/83xx/86xx"
731         depends on PPC
732         help
733           If you say yes to this option, support will be included for the
734           built-in I2C interface on the MPC107, Tsi107, MPC512x, MPC52xx,
735           MPC8240, MPC8245, MPC83xx, MPC85xx and MPC8641 family processors.
736
737           This driver can also be built as a module.  If so, the module
738           will be called i2c-mpc.
739
740 config I2C_MT65XX
741         tristate "MediaTek I2C adapter"
742         depends on ARCH_MEDIATEK || COMPILE_TEST
743         help
744           This selects the MediaTek(R) Integrated Inter Circuit bus driver
745           for MT65xx and MT81xx.
746           If you want to use MediaTek(R) I2C interface, say Y or M here.
747           If unsure, say N.
748
749 config I2C_MV64XXX
750         tristate "Marvell mv64xxx I2C Controller"
751         depends on MV64X60 || PLAT_ORION || ARCH_SUNXI || ARCH_MVEBU
752         help
753           If you say yes to this option, support will be included for the
754           built-in I2C interface on the Marvell 64xxx line of host bridges.
755           This driver is also used for Allwinner SoCs I2C controllers.
756
757           This driver can also be built as a module.  If so, the module
758           will be called i2c-mv64xxx.
759
760 config I2C_MXS
761         tristate "Freescale i.MX28 I2C interface"
762         depends on SOC_IMX28
763         select STMP_DEVICE
764         help
765           Say Y here if you want to use the I2C bus controller on
766           the Freescale i.MX28 processors.
767
768           This driver can also be built as a module.  If so, the module
769           will be called i2c-mxs.
770
771 config I2C_NOMADIK
772         tristate "ST-Ericsson Nomadik/Ux500 I2C Controller"
773         depends on ARM_AMBA
774         help
775           If you say yes to this option, support will be included for the
776           I2C interface from ST-Ericsson's Nomadik and Ux500 architectures,
777           as well as the STA2X11 PCIe I/O HUB.
778
779 config I2C_OCORES
780         tristate "OpenCores I2C Controller"
781         help
782           If you say yes to this option, support will be included for the
783           OpenCores I2C controller. For details see
784           http://www.opencores.org/projects.cgi/web/i2c/overview
785
786           This driver can also be built as a module.  If so, the module
787           will be called i2c-ocores.
788
789 config I2C_OMAP
790         tristate "OMAP I2C adapter"
791         depends on ARCH_OMAP || ARCH_K3
792         default y if MACH_OMAP_H3 || MACH_OMAP_OSK
793         help
794           If you say yes to this option, support will be included for the
795           I2C interface on the Texas Instruments OMAP1/2 family of processors.
796           Like OMAP1510/1610/1710/5912 and OMAP242x.
797           For details see http://www.ti.com/omap.
798
799 config I2C_OWL
800         tristate "Actions Semiconductor Owl I2C Controller"
801         depends on ARCH_ACTIONS || COMPILE_TEST
802         help
803           Say Y here if you want to use the I2C bus controller on
804           the Actions Semiconductor Owl SoC's.
805
806 config I2C_PASEMI
807         tristate "PA Semi SMBus interface"
808         depends on PPC_PASEMI && PCI
809         help
810           Supports the PA Semi PWRficient on-chip SMBus interfaces.
811
812 config I2C_PCA_PLATFORM
813         tristate "PCA9564/PCA9665 as platform device"
814         select I2C_ALGOPCA
815         default n
816         help
817           This driver supports a memory mapped Philips PCA9564/PCA9665
818           parallel bus to I2C bus controller.
819
820           This driver can also be built as a module.  If so, the module
821           will be called i2c-pca-platform.
822
823 config I2C_PMCMSP
824         tristate "PMC MSP I2C TWI Controller"
825         depends on PMC_MSP
826         help
827           This driver supports the PMC TWI controller on MSP devices.
828
829           This driver can also be built as module. If so, the module
830           will be called i2c-pmcmsp.
831
832 config I2C_PNX
833         tristate "I2C bus support for Philips PNX and NXP LPC targets"
834         depends on ARCH_LPC32XX
835         help
836           This driver supports the Philips IP3204 I2C IP block master and/or
837           slave controller
838
839           This driver can also be built as a module.  If so, the module
840           will be called i2c-pnx.
841
842 config I2C_PUV3
843         tristate "PKUnity v3 I2C bus support"
844         depends on UNICORE32 && ARCH_PUV3
845         select I2C_ALGOBIT
846         help
847           This driver supports the I2C IP inside the PKUnity-v3 SoC.
848           This I2C bus controller is under AMBA/AXI bus.
849
850           This driver can also be built as a module.  If so, the module
851           will be called i2c-puv3.
852
853 config I2C_PXA
854         tristate "Intel PXA2XX I2C adapter"
855         depends on ARCH_PXA || ARCH_MMP || ARCH_MVEBU || (X86_32 && PCI && OF)
856         help
857           If you have devices in the PXA I2C bus, say yes to this option.
858           This driver can also be built as a module.  If so, the module
859           will be called i2c-pxa.
860
861 config I2C_PXA_PCI
862         def_bool I2C_PXA && X86_32 && PCI && OF
863
864 config I2C_PXA_SLAVE
865         bool "Intel PXA2XX I2C Slave comms support"
866         depends on I2C_PXA && !X86_32
867         help
868           Support I2C slave mode communications on the PXA I2C bus.  This
869           is necessary for systems where the PXA may be a target on the
870           I2C bus.
871
872 config I2C_QCOM_GENI
873         tristate "Qualcomm Technologies Inc.'s GENI based I2C controller"
874         depends on ARCH_QCOM || COMPILE_TEST
875         depends on QCOM_GENI_SE
876         help
877           This driver supports GENI serial engine based I2C controller in
878           master mode on the Qualcomm Technologies Inc.'s SoCs. If you say
879           yes to this option, support will be included for the built-in I2C
880           interface on the Qualcomm Technologies Inc.'s SoCs.
881
882           This driver can also be built as a module.  If so, the module
883           will be called i2c-qcom-geni.
884
885 config I2C_QUP
886         tristate "Qualcomm QUP based I2C controller"
887         depends on ARCH_QCOM
888         help
889           If you say yes to this option, support will be included for the
890           built-in I2C interface on the Qualcomm SoCs.
891
892           This driver can also be built as a module.  If so, the module
893           will be called i2c-qup.
894
895 config I2C_RIIC
896         tristate "Renesas RIIC adapter"
897         depends on ARCH_RENESAS || COMPILE_TEST
898         help
899           If you say yes to this option, support will be included for the
900           Renesas RIIC I2C interface.
901
902           This driver can also be built as a module.  If so, the module
903           will be called i2c-riic.
904
905 config I2C_RK3X
906         tristate "Rockchip RK3xxx I2C adapter"
907         depends on OF && COMMON_CLK
908         help
909           Say Y here to include support for the I2C adapter in Rockchip RK3xxx
910           SoCs.
911
912           This driver can also be built as a module. If so, the module will
913           be called i2c-rk3x.
914
915 config HAVE_S3C2410_I2C
916         bool
917         help
918           This will include I2C support for Samsung SoCs. If you want to
919           include I2C support for any machine, kindly select this in the
920           respective Kconfig file.
921
922 config I2C_S3C2410
923         tristate "S3C2410 I2C Driver"
924         depends on HAVE_S3C2410_I2C
925         help
926           Say Y here to include support for I2C controller in the
927           Samsung SoCs.
928
929 config I2C_SH7760
930         tristate "Renesas SH7760 I2C Controller"
931         depends on CPU_SUBTYPE_SH7760
932         help
933           This driver supports the 2 I2C interfaces on the Renesas SH7760.
934
935           This driver can also be built as a module.  If so, the module
936           will be called i2c-sh7760.
937
938 config I2C_SH_MOBILE
939         tristate "SuperH Mobile I2C Controller"
940         depends on ARCH_SHMOBILE || ARCH_RENESAS || COMPILE_TEST
941         help
942           If you say yes to this option, support will be included for the
943           built-in I2C interface on the Renesas SH-Mobile processor.
944
945           This driver can also be built as a module.  If so, the module
946           will be called i2c-sh_mobile.
947
948 config I2C_SIMTEC
949         tristate "Simtec Generic I2C interface"
950         select I2C_ALGOBIT
951         help
952           If you say yes to this option, support will be included for
953           the Simtec Generic I2C interface. This driver is for the
954           simple I2C bus used on newer Simtec products for general
955           I2C, such as DDC on the Simtec BBD2016A.
956
957           This driver can also be built as a module. If so, the module
958           will be called i2c-simtec.
959
960 config I2C_SIRF
961         tristate "CSR SiRFprimaII I2C interface"
962         depends on ARCH_SIRF
963         help
964           If you say yes to this option, support will be included for the
965           CSR SiRFprimaII I2C interface.
966
967           This driver can also be built as a module.  If so, the module
968           will be called i2c-sirf.
969
970 config I2C_SPRD
971         bool "Spreadtrum I2C interface"
972         depends on I2C=y && ARCH_SPRD
973         help
974           If you say yes to this option, support will be included for the
975           Spreadtrum I2C interface.
976
977 config I2C_ST
978         tristate "STMicroelectronics SSC I2C support"
979         depends on ARCH_STI
980         help
981           Enable this option to add support for STMicroelectronics SoCs
982           hardware SSC (Synchronous Serial Controller) as an I2C controller.
983
984           This driver can also be built as module. If so, the module
985           will be called i2c-st.
986
987 config I2C_STM32F4
988         tristate "STMicroelectronics STM32F4 I2C support"
989         depends on ARCH_STM32 || COMPILE_TEST
990         help
991           Enable this option to add support for STM32 I2C controller embedded
992           in STM32F4 SoCs.
993
994           This driver can also be built as module. If so, the module
995           will be called i2c-stm32f4.
996
997 config I2C_STM32F7
998         tristate "STMicroelectronics STM32F7 I2C support"
999         depends on ARCH_STM32 || COMPILE_TEST
1000         select I2C_SLAVE
1001         help
1002           Enable this option to add support for STM32 I2C controller embedded
1003           in STM32F7 SoCs.
1004
1005           This driver can also be built as module. If so, the module
1006           will be called i2c-stm32f7.
1007
1008 config I2C_STU300
1009         tristate "ST Microelectronics DDC I2C interface"
1010         depends on MACH_U300
1011         default y if MACH_U300
1012         help
1013           If you say yes to this option, support will be included for the
1014           I2C interface from ST Microelectronics simply called "DDC I2C"
1015           supporting both I2C and DDC, used in e.g. the U300 series
1016           mobile platforms.
1017
1018           This driver can also be built as a module. If so, the module
1019           will be called i2c-stu300.
1020
1021 config I2C_SUN6I_P2WI
1022         tristate "Allwinner sun6i internal P2WI controller"
1023         depends on RESET_CONTROLLER
1024         depends on MACH_SUN6I || COMPILE_TEST
1025         help
1026           If you say yes to this option, support will be included for the
1027           P2WI (Push/Pull 2 Wire Interface) controller embedded in some sunxi
1028           SOCs.
1029           The P2WI looks like an SMBus controller (which supports only byte
1030           accesses), except that it only supports one slave device.
1031           This interface is used to connect to specific PMIC devices (like the
1032           AXP221).
1033
1034 config I2C_SYNQUACER
1035         tristate "Socionext SynQuacer I2C controller"
1036         depends on ARCH_SYNQUACER || COMPILE_TEST
1037         help
1038           Say Y here to include support for the I2C controller used in some
1039           Fujitsu and Socionext SoCs.
1040
1041           This driver can also be built as a module. If so, the module
1042           will be called i2c-synquacer.
1043
1044 config I2C_TEGRA
1045         tristate "NVIDIA Tegra internal I2C controller"
1046         depends on ARCH_TEGRA
1047         help
1048           If you say yes to this option, support will be included for the
1049           I2C controller embedded in NVIDIA Tegra SOCs
1050
1051 config I2C_TEGRA_BPMP
1052         tristate "NVIDIA Tegra BPMP I2C controller"
1053         depends on TEGRA_BPMP
1054         default y
1055         help
1056           If you say yes to this option, support will be included for the I2C
1057           controller embedded in NVIDIA Tegra SoCs accessed via the BPMP.
1058
1059           This I2C driver is a 'virtual' I2C driver. The real driver is part
1060           of the BPMP firmware, and this driver merely communicates with that
1061           real driver.
1062
1063 config I2C_UNIPHIER
1064         tristate "UniPhier FIFO-less I2C controller"
1065         depends on ARCH_UNIPHIER || COMPILE_TEST
1066         help
1067           If you say yes to this option, support will be included for
1068           the UniPhier FIFO-less I2C interface embedded in PH1-LD4, PH1-sLD8,
1069           or older UniPhier SoCs.
1070
1071 config I2C_UNIPHIER_F
1072         tristate "UniPhier FIFO-builtin I2C controller"
1073         depends on ARCH_UNIPHIER || COMPILE_TEST
1074         help
1075           If you say yes to this option, support will be included for
1076           the UniPhier FIFO-builtin I2C interface embedded in PH1-Pro4,
1077           PH1-Pro5, or newer UniPhier SoCs.
1078
1079 config I2C_VERSATILE
1080         tristate "ARM Versatile/Realview I2C bus support"
1081         depends on ARCH_MPS2 || ARCH_VERSATILE || ARCH_REALVIEW || ARCH_VEXPRESS || COMPILE_TEST
1082         select I2C_ALGOBIT
1083         help
1084           Say yes if you want to support the I2C serial bus on ARMs Versatile
1085           range of platforms.
1086
1087           This driver can also be built as a module.  If so, the module
1088           will be called i2c-versatile.
1089
1090 config I2C_WMT
1091         tristate "Wondermedia WM8xxx SoC I2C bus support"
1092         depends on ARCH_VT8500
1093         help
1094           Say yes if you want to support the I2C bus on Wondermedia 8xxx-series
1095           SoCs.
1096
1097           This driver can also be built as a module. If so, the module will be
1098           called i2c-wmt.
1099
1100 config I2C_OCTEON
1101         tristate "Cavium OCTEON I2C bus support"
1102         depends on CAVIUM_OCTEON_SOC
1103         help
1104           Say yes if you want to support the I2C serial bus on Cavium
1105           OCTEON SOC.
1106
1107           This driver can also be built as a module.  If so, the module
1108           will be called i2c-octeon.
1109
1110 config I2C_THUNDERX
1111         tristate "Cavium ThunderX I2C bus support"
1112         depends on 64BIT && PCI && (ARM64 || COMPILE_TEST)
1113         select I2C_SMBUS
1114         help
1115           Say yes if you want to support the I2C serial bus on Cavium
1116           ThunderX SOC.
1117
1118           This driver can also be built as a module.  If so, the module
1119           will be called i2c-thunderx.
1120
1121 config I2C_XILINX
1122         tristate "Xilinx I2C Controller"
1123         depends on HAS_IOMEM
1124         help
1125           If you say yes to this option, support will be included for the
1126           Xilinx I2C controller.
1127
1128           This driver can also be built as a module.  If so, the module
1129           will be called xilinx_i2c.
1130
1131 config I2C_XLR
1132         tristate "Netlogic XLR and Sigma Designs I2C support"
1133         depends on CPU_XLR || ARCH_TANGO
1134         help
1135           This driver enables support for the on-chip I2C interface of
1136           the Netlogic XLR/XLS MIPS processors and Sigma Designs SOCs.
1137
1138           This driver can also be built as a module.  If so, the module
1139           will be called i2c-xlr.
1140
1141 config I2C_XLP9XX
1142         tristate "XLP9XX I2C support"
1143         depends on CPU_XLP || ARCH_THUNDER2 || COMPILE_TEST
1144         help
1145           This driver enables support for the on-chip I2C interface of
1146           the Broadcom XLP9xx/XLP5xx MIPS and Vulcan ARM64 processors.
1147
1148           This driver can also be built as a module.  If so, the module will
1149           be called i2c-xlp9xx.
1150
1151 config I2C_RCAR
1152         tristate "Renesas R-Car I2C Controller"
1153         depends on ARCH_RENESAS || COMPILE_TEST
1154         select I2C_SLAVE
1155         help
1156           If you say yes to this option, support will be included for the
1157           R-Car I2C controller.
1158
1159           This driver can also be built as a module.  If so, the module
1160           will be called i2c-rcar.
1161
1162 comment "External I2C/SMBus adapter drivers"
1163
1164 config I2C_DIOLAN_U2C
1165         tristate "Diolan U2C-12 USB adapter"
1166         depends on USB
1167         help
1168           If you say yes to this option, support will be included for Diolan
1169           U2C-12, a USB to I2C interface.
1170
1171           This driver can also be built as a module.  If so, the module
1172           will be called i2c-diolan-u2c.
1173
1174 config I2C_DLN2
1175        tristate "Diolan DLN-2 USB I2C adapter"
1176        depends on MFD_DLN2
1177        help
1178          If you say yes to this option, support will be included for Diolan
1179          DLN2, a USB to I2C interface.
1180
1181          This driver can also be built as a module.  If so, the module
1182          will be called i2c-dln2.
1183
1184 config I2C_PARPORT
1185         tristate "Parallel port adapter"
1186         depends on PARPORT
1187         select I2C_ALGOBIT
1188         select I2C_SMBUS
1189         help
1190           This supports parallel port I2C adapters such as the ones made by
1191           Philips or Velleman, Analog Devices evaluation boards, and more.
1192           Basically any adapter using the parallel port as an I2C bus with
1193           no extra chipset is supported by this driver, or could be.
1194
1195           This driver is a replacement for (and was inspired by) an older
1196           driver named i2c-philips-par.  The new driver supports more devices,
1197           and makes it easier to add support for new devices.
1198
1199           An adapter type parameter is now mandatory.  Please read the file
1200           Documentation/i2c/busses/i2c-parport for details.
1201
1202           Another driver exists, named i2c-parport-light, which doesn't depend
1203           on the parport driver.  This is meant for embedded systems. Don't say
1204           Y here if you intend to say Y or M there.
1205
1206           This support is also available as a module.  If so, the module
1207           will be called i2c-parport.
1208
1209 config I2C_PARPORT_LIGHT
1210         tristate "Parallel port adapter (light)"
1211         select I2C_ALGOBIT
1212         select I2C_SMBUS
1213         help
1214           This supports parallel port I2C adapters such as the ones made by
1215           Philips or Velleman, Analog Devices evaluation boards, and more.
1216           Basically any adapter using the parallel port as an I2C bus with
1217           no extra chipset is supported by this driver, or could be.
1218
1219           This driver is a light version of i2c-parport.  It doesn't depend
1220           on the parport driver, and uses direct I/O access instead.  This
1221           might be preferred on embedded systems where wasting memory for
1222           the clean but heavy parport handling is not an option.  The
1223           drawback is a reduced portability and the impossibility to
1224           daisy-chain other parallel port devices.
1225
1226           Don't say Y here if you said Y or M to i2c-parport.  Saying M to
1227           both is possible but both modules should not be loaded at the same
1228           time.
1229
1230           This support is also available as a module.  If so, the module
1231           will be called i2c-parport-light.
1232
1233 config I2C_ROBOTFUZZ_OSIF
1234         tristate "RobotFuzz Open Source InterFace USB adapter"
1235         depends on USB
1236         help
1237           If you say yes to this option, support will be included for the
1238           RobotFuzz Open Source InterFace USB to I2C interface.
1239
1240           This driver can also be built as a module.  If so, the module
1241           will be called i2c-osif.
1242
1243 config I2C_TAOS_EVM
1244         tristate "TAOS evaluation module"
1245         depends on TTY
1246         select SERIO
1247         select SERIO_SERPORT
1248         default n
1249         help
1250           This supports TAOS evaluation modules on serial port. In order to
1251           use this driver, you will need the inputattach tool, which is part
1252           of the input-utils package.
1253
1254           If unsure, say N.
1255
1256           This support is also available as a module.  If so, the module
1257           will be called i2c-taos-evm.
1258
1259 config I2C_TINY_USB
1260         tristate "Tiny-USB adapter"
1261         depends on USB
1262         help
1263           If you say yes to this option, support will be included for the
1264           i2c-tiny-usb, a simple do-it-yourself USB to I2C interface. See
1265           http://www.harbaum.org/till/i2c_tiny_usb for hardware details.
1266
1267           This driver can also be built as a module.  If so, the module
1268           will be called i2c-tiny-usb.
1269
1270 config I2C_VIPERBOARD
1271         tristate "Viperboard I2C master support"
1272         depends on MFD_VIPERBOARD && USB
1273         help
1274           Say yes here to access the I2C part of the Nano River
1275           Technologies Viperboard as I2C master.
1276           See viperboard API specification and Nano
1277           River Tech's viperboard.h for detailed meaning
1278           of the module parameters.
1279
1280 comment "Other I2C/SMBus bus drivers"
1281
1282 config I2C_ACORN
1283         tristate "Acorn IOC/IOMD I2C bus support"
1284         depends on ARCH_ACORN
1285         default y
1286         select I2C_ALGOBIT
1287         help
1288           Say yes if you want to support the I2C bus on Acorn platforms.
1289
1290           If you don't know, say Y.
1291
1292 config I2C_ELEKTOR
1293         tristate "Elektor ISA card"
1294         depends on ISA && HAS_IOPORT_MAP && BROKEN_ON_SMP
1295         select I2C_ALGOPCF
1296         help
1297           This supports the PCF8584 ISA bus I2C adapter.  Say Y if you own
1298           such an adapter.
1299
1300           This support is also available as a module.  If so, the module
1301           will be called i2c-elektor.
1302
1303 config I2C_MLXCPLD
1304         tristate "Mellanox I2C driver"
1305         depends on X86_64
1306         help
1307           This exposes the Mellanox platform I2C busses to the linux I2C layer
1308           for X86 based systems.
1309           Controller is implemented as CPLD logic.
1310
1311           This driver can also be built as a module. If so, the module will be
1312           called as i2c-mlxcpld.
1313
1314 config I2C_PCA_ISA
1315         tristate "PCA9564/PCA9665 on an ISA bus"
1316         depends on ISA
1317         select I2C_ALGOPCA
1318         default n
1319         help
1320           This driver supports ISA boards using the Philips PCA9564/PCA9665
1321           parallel bus to I2C bus controller.
1322
1323           This driver can also be built as a module.  If so, the module
1324           will be called i2c-pca-isa.
1325
1326           This device is almost undetectable and using this driver on a
1327           system which doesn't have this device will result in long
1328           delays when I2C/SMBus chip drivers are loaded (e.g. at boot
1329           time).  If unsure, say N.
1330
1331 config I2C_SIBYTE
1332         tristate "SiByte SMBus interface"
1333         depends on SIBYTE_SB1xxx_SOC
1334         help
1335           Supports the SiByte SOC on-chip I2C interfaces (2 channels).
1336
1337 config I2C_CROS_EC_TUNNEL
1338         tristate "ChromeOS EC tunnel I2C bus"
1339         depends on MFD_CROS_EC
1340         help
1341           If you say yes here you get an I2C bus that will tunnel i2c commands
1342           through to the other side of the ChromeOS EC to the i2c bus
1343           connected there. This will work whatever the interface used to
1344           talk to the EC (SPI, I2C or LPC).
1345
1346 config I2C_XGENE_SLIMPRO
1347         tristate "APM X-Gene SoC I2C SLIMpro devices support"
1348         depends on ARCH_XGENE && MAILBOX
1349         help
1350           Enable I2C bus access using the APM X-Gene SoC SLIMpro
1351           co-processor. The I2C device access the I2C bus via the X-Gene
1352           to SLIMpro (On chip coprocessor) mailbox mechanism.
1353           If unsure, say N.
1354
1355 config SCx200_ACB
1356         tristate "Geode ACCESS.bus support"
1357         depends on X86_32 && PCI
1358         help
1359           Enable the use of the ACCESS.bus controllers on the Geode SCx200 and
1360           SC1100 processors and the CS5535 and CS5536 Geode companion devices.
1361
1362           If you don't know what to do here, say N.
1363
1364           This support is also available as a module.  If so, the module
1365           will be called scx200_acb.
1366
1367 config I2C_OPAL
1368         tristate "IBM OPAL I2C driver"
1369         depends on PPC_POWERNV
1370         default y
1371         help
1372           This exposes the PowerNV platform i2c busses to the linux i2c layer,
1373           the driver is based on the OPAL interfaces.
1374
1375           This driver can also be built as a module. If so, the module will be
1376           called as i2c-opal.
1377
1378 config I2C_ZX2967
1379         tristate "ZTE ZX2967 I2C support"
1380         depends on ARCH_ZX
1381         default y
1382         help
1383           Selecting this option will add ZX2967 I2C driver.
1384           This driver can also be built as a module. If so, the module will be
1385           called i2c-zx2967.
1386
1387 config I2C_FSI
1388         tristate "FSI I2C driver"
1389         depends on FSI
1390         help
1391           Driver for FSI bus attached I2C masters. These are I2C masters that
1392           are connected to the system over an FSI bus, instead of the more
1393           common PCI or MMIO interface.
1394
1395           This driver can also be built as a module. If so, the module will be
1396           called as i2c-fsi.
1397
1398 endmenu