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