xref: /openbmc/linux/drivers/mfd/Kconfig (revision 88baa78d)
1#
2# Multifunction miscellaneous devices
3#
4
5if HAS_IOMEM
6menu "Multifunction device drivers"
7
8config MFD_CORE
9	tristate
10	select IRQ_DOMAIN
11	default n
12
13config MFD_CS5535
14	tristate "AMD CS5535 and CS5536 southbridge core functions"
15	select MFD_CORE
16	depends on PCI && (X86_32 || (X86 && COMPILE_TEST))
17	---help---
18	  This is the core driver for CS5535/CS5536 MFD functions.  This is
19          necessary for using the board's GPIO and MFGPT functionality.
20
21config MFD_ALTERA_A10SR
22	bool "Altera Arria10 DevKit System Resource chip"
23	depends on ARCH_SOCFPGA && SPI_MASTER=y && OF
24	select REGMAP_SPI
25	select MFD_CORE
26	help
27	  Support for the Altera Arria10 DevKit MAX5 System Resource chip
28	  using the SPI interface. This driver provides common support for
29	  accessing the external gpio extender (LEDs & buttons) and
30	  power supply alarms (hwmon).
31
32config MFD_ACT8945A
33	tristate "Active-semi ACT8945A"
34	select MFD_CORE
35	select REGMAP_I2C
36	depends on I2C && OF
37	help
38	  Support for the ACT8945A PMIC from Active-semi. This device
39	  features three step-down DC/DC converters and four low-dropout
40	  linear regulators, along with a complete ActivePath battery
41	  charger.
42
43config MFD_SUN4I_GPADC
44	tristate "Allwinner sunxi platforms' GPADC MFD driver"
45	select MFD_CORE
46	select REGMAP_MMIO
47	select REGMAP_IRQ
48	depends on ARCH_SUNXI || COMPILE_TEST
49	help
50	  Select this to get support for Allwinner SoCs (A10, A13 and A31) ADC.
51	  This driver will only map the hardware interrupt and registers, you
52	  have to select individual drivers based on this MFD to be able to use
53	  the ADC or the thermal sensor. This will try to probe the ADC driver
54	  sun4i-gpadc-iio and the hwmon driver iio_hwmon.
55
56	  To compile this driver as a module, choose M here: the module will be
57	  called sun4i-gpadc.
58
59config MFD_AS3711
60	bool "AMS AS3711"
61	select MFD_CORE
62	select REGMAP_I2C
63	select REGMAP_IRQ
64	depends on I2C=y
65	help
66	  Support for the AS3711 PMIC from AMS
67
68config MFD_AS3722
69	tristate "ams AS3722 Power Management IC"
70	select MFD_CORE
71	select REGMAP_I2C
72	select REGMAP_IRQ
73	depends on I2C=y && OF
74	help
75	  The ams AS3722 is a compact system PMU suitable for mobile phones,
76	  tablets etc. It has 4 DC/DC step-down regulators, 3 DC/DC step-down
77	  controllers, 11 LDOs, RTC, automatic battery, temperature and
78	  over current monitoring, GPIOs, ADC and a watchdog.
79
80config PMIC_ADP5520
81	bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
82	depends on I2C=y
83	help
84	  Say yes here to add support for Analog Devices AD5520 and ADP5501,
85	  Multifunction Power Management IC. This includes
86	  the I2C driver and the core APIs _only_, you have to select
87	  individual components like LCD backlight, LEDs, GPIOs and Kepad
88	  under the corresponding menus.
89
90config MFD_AAT2870_CORE
91	bool "AnalogicTech AAT2870"
92	select MFD_CORE
93	depends on I2C=y
94	depends on GPIOLIB || COMPILE_TEST
95	help
96	  If you say yes here you get support for the AAT2870.
97	  This driver provides common support for accessing the device,
98	  additional drivers must be enabled in order to use the
99	  functionality of the device.
100
101config MFD_ATMEL_FLEXCOM
102	tristate "Atmel Flexcom (Flexible Serial Communication Unit)"
103	select MFD_CORE
104	depends on OF
105	help
106	  Select this to get support for Atmel Flexcom. This is a wrapper
107	  which embeds a SPI controller, a I2C controller and a USART. Only
108	  one function can be used at a time. The choice is done at boot time
109	  by the probe function of this MFD driver according to a device tree
110	  property.
111
112config MFD_ATMEL_HLCDC
113	tristate "Atmel HLCDC (High-end LCD Controller)"
114	select MFD_CORE
115	select REGMAP_MMIO
116	depends on OF
117	help
118	  If you say yes here you get support for the HLCDC block.
119	  This driver provides common support for accessing the device,
120	  additional drivers must be enabled in order to use the
121	  functionality of the device.
122
123config MFD_BCM590XX
124	tristate "Broadcom BCM590xx PMUs"
125	select MFD_CORE
126	select REGMAP_I2C
127	depends on I2C
128	help
129	  Support for the BCM590xx PMUs from Broadcom
130
131config MFD_AC100
132	tristate "X-Powers AC100"
133	select MFD_CORE
134	depends on SUNXI_RSB
135	help
136	  If you say Y here you get support for the X-Powers AC100 audio codec
137	  IC.
138	  This driver include only the core APIs. You have to select individual
139	  components like codecs or RTC under the corresponding menus.
140
141config MFD_AXP20X
142	tristate
143	select MFD_CORE
144	select REGMAP_IRQ
145
146config MFD_AXP20X_I2C
147	tristate "X-Powers AXP series PMICs with I2C"
148	select MFD_AXP20X
149	select REGMAP_I2C
150	depends on I2C
151	help
152	  If you say Y here you get support for the X-Powers AXP series power
153	  management ICs (PMICs) controlled with I2C.
154	  This driver include only the core APIs. You have to select individual
155	  components like regulators or the PEK (Power Enable Key) under the
156	  corresponding menus.
157
158config MFD_AXP20X_RSB
159	tristate "X-Powers AXP series PMICs with RSB"
160	select MFD_AXP20X
161	depends on SUNXI_RSB
162	help
163	  If you say Y here you get support for the X-Powers AXP series power
164	  management ICs (PMICs) controlled with RSB.
165	  This driver include only the core APIs. You have to select individual
166	  components like regulators or the PEK (Power Enable Key) under the
167	  corresponding menus.
168
169config MFD_CROS_EC
170	tristate "ChromeOS Embedded Controller"
171	select MFD_CORE
172	select CHROME_PLATFORMS
173	select CROS_EC_PROTO
174	depends on X86 || ARM || ARM64 || COMPILE_TEST
175	help
176	  If you say Y here you get support for the ChromeOS Embedded
177	  Controller (EC) providing keyboard, battery and power services.
178	  You also need to enable the driver for the bus you are using. The
179	  protocol for talking to the EC is defined by the bus driver.
180
181config MFD_CROS_EC_I2C
182	tristate "ChromeOS Embedded Controller (I2C)"
183	depends on MFD_CROS_EC && I2C
184
185	help
186	  If you say Y here, you get support for talking to the ChromeOS
187	  EC through an I2C bus. This uses a simple byte-level protocol with
188	  a checksum. Failing accesses will be retried three times to
189	  improve reliability.
190
191config MFD_CROS_EC_SPI
192	tristate "ChromeOS Embedded Controller (SPI)"
193	depends on MFD_CROS_EC && SPI
194
195	---help---
196	  If you say Y here, you get support for talking to the ChromeOS EC
197	  through a SPI bus, using a byte-level protocol. Since the EC's
198	  response time cannot be guaranteed, we support ignoring
199	  'pre-amble' bytes before the response actually starts.
200
201config MFD_ASIC3
202	bool "Compaq ASIC3"
203	depends on GPIOLIB && ARM
204	select MFD_CORE
205	 ---help---
206	  This driver supports the ASIC3 multifunction chip found on many
207	  PDAs (mainly iPAQ and HTC based ones)
208
209config PMIC_DA903X
210	bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
211	depends on I2C=y
212	help
213	  Say yes here to add support for Dialog Semiconductor DA9030 (a.k.a
214	  ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
215	  usually found on PXA processors-based platforms. This includes
216	  the I2C driver and the core APIs _only_, you have to select
217	  individual components like LCD backlight, voltage regulators,
218	  LEDs and battery-charger under the corresponding menus.
219
220config PMIC_DA9052
221	bool
222	select MFD_CORE
223
224config MFD_DA9052_SPI
225	bool "Dialog Semiconductor DA9052/53 PMIC variants with SPI"
226	select REGMAP_SPI
227	select REGMAP_IRQ
228	select PMIC_DA9052
229	depends on SPI_MASTER=y
230	help
231	  Support for the Dialog Semiconductor DA9052 PMIC
232	  when controlled using SPI. This driver provides common support
233	  for accessing the device, additional drivers must be enabled in
234	  order to use the functionality of the device.
235
236config MFD_DA9052_I2C
237	bool "Dialog Semiconductor DA9052/53 PMIC variants with I2C"
238	select REGMAP_I2C
239	select REGMAP_IRQ
240	select PMIC_DA9052
241	depends on I2C=y
242	help
243	  Support for the Dialog Semiconductor DA9052 PMIC
244	  when controlled using I2C. This driver provides common support
245	  for accessing the device, additional drivers must be enabled in
246	  order to use the functionality of the device.
247
248config MFD_DA9055
249	bool "Dialog Semiconductor DA9055 PMIC Support"
250	select REGMAP_I2C
251	select REGMAP_IRQ
252	select MFD_CORE
253	depends on I2C=y
254	help
255	  Say yes here for support of Dialog Semiconductor DA9055. This is
256	  a Power Management IC. This driver provides common support for
257	  accessing the device as well as the I2C interface to the chip itself.
258	  Additional drivers must be enabled in order to use the functionality
259	  of the device.
260
261	  This driver can be built as a module. If built as a module it will be
262	  called "da9055"
263
264config MFD_DA9062
265	tristate "Dialog Semiconductor DA9062 PMIC Support"
266	select MFD_CORE
267	select REGMAP_I2C
268	select REGMAP_IRQ
269	depends on I2C
270	help
271	  Say yes here for support for the Dialog Semiconductor DA9062 PMIC.
272	  This includes the I2C driver and core APIs.
273	  Additional drivers must be enabled in order to use the functionality
274	  of the device.
275
276config MFD_DA9063
277	tristate "Dialog Semiconductor DA9063 PMIC Support"
278	select MFD_CORE
279	select REGMAP_I2C
280	select REGMAP_IRQ
281	depends on I2C
282	help
283	  Say yes here for support for the Dialog Semiconductor DA9063 PMIC.
284	  This includes the I2C driver and core APIs.
285	  Additional drivers must be enabled in order to use the functionality
286	  of the device.
287
288config MFD_DA9150
289	tristate "Dialog Semiconductor DA9150 Charger Fuel-Gauge chip"
290	depends on I2C
291	select MFD_CORE
292	select REGMAP_I2C
293	select REGMAP_IRQ
294	help
295	  This adds support for the DA9150 integrated charger and fuel-gauge
296	  chip. This driver provides common support for accessing the device.
297	  Additional drivers must be enabled in order to use the specific
298	  features of the device.
299
300config MFD_DLN2
301	tristate "Diolan DLN2 support"
302	select MFD_CORE
303	depends on USB
304	help
305	  This adds support for Diolan USB-I2C/SPI/GPIO Master Adapter
306	  DLN-2. Additional drivers such as I2C_DLN2, GPIO_DLN2,
307	  etc. must be enabled in order to use the functionality of
308	  the device.
309
310config MFD_EXYNOS_LPASS
311	tristate "Samsung Exynos SoC Low Power Audio Subsystem"
312	depends on ARCH_EXYNOS || COMPILE_TEST
313	select MFD_CORE
314	select REGMAP_MMIO
315	help
316	  Select this option to enable support for Samsung Exynos Low Power
317	  Audio Subsystem.
318
319config MFD_MC13XXX
320	tristate
321	depends on (SPI_MASTER || I2C)
322	select MFD_CORE
323	select REGMAP_IRQ
324	help
325	  Enable support for the Freescale MC13783 and MC13892 PMICs.
326	  This driver provides common support for accessing the device,
327	  additional drivers must be enabled in order to use the
328	  functionality of the device.
329
330config MFD_MC13XXX_SPI
331	tristate "Freescale MC13783 and MC13892 SPI interface"
332	depends on SPI_MASTER
333	select REGMAP_SPI
334	select MFD_MC13XXX
335	help
336	  Select this if your MC13xxx is connected via an SPI bus.
337
338config MFD_MC13XXX_I2C
339	tristate "Freescale MC13892 I2C interface"
340	depends on I2C
341	select REGMAP_I2C
342	select MFD_MC13XXX
343	help
344	  Select this if your MC13xxx is connected via an I2C bus.
345
346config MFD_MX25_TSADC
347	tristate "Freescale i.MX25 integrated Touchscreen and ADC unit"
348	select REGMAP_MMIO
349	depends on (SOC_IMX25 && OF) || COMPILE_TEST
350	help
351	  Enable support for the integrated Touchscreen and ADC unit of the
352	  i.MX25 processors. They consist of a conversion queue for general
353	  purpose ADC and a queue for Touchscreens.
354
355config MFD_HI6421_PMIC
356	tristate "HiSilicon Hi6421 PMU/Codec IC"
357	depends on OF
358	select MFD_CORE
359	select REGMAP_MMIO
360	help
361	  Add support for HiSilicon Hi6421 PMIC. Hi6421 includes multi-
362	  functions, such as regulators, RTC, codec, Coulomb counter, etc.
363	  This driver includes core APIs _only_. You have to select
364	  individul components like voltage regulators under corresponding
365	  menus in order to enable them.
366	  We communicate with the Hi6421 via memory-mapped I/O.
367
368config MFD_HI655X_PMIC
369	tristate "HiSilicon Hi655X series PMU/Codec IC"
370	depends on ARCH_HISI || COMPILE_TEST
371	depends on OF
372	select MFD_CORE
373	select REGMAP_MMIO
374	select REGMAP_IRQ
375	help
376	  Select this option to enable Hisilicon hi655x series pmic driver.
377
378config HTC_PASIC3
379	tristate "HTC PASIC3 LED/DS1WM chip support"
380	select MFD_CORE
381	help
382	  This core driver provides register access for the LED/DS1WM
383	  chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
384	  HTC Magician devices, respectively. Actual functionality is
385	  handled by the leds-pasic3 and ds1wm drivers.
386
387config HTC_I2CPLD
388	bool "HTC I2C PLD chip support"
389	depends on I2C=y && GPIOLIB
390	help
391	  If you say yes here you get support for the supposed CPLD
392	  found on omap850 HTC devices like the HTC Wizard and HTC Herald.
393	  This device provides input and output GPIOs through an I2C
394	  interface to one or more sub-chips.
395
396config MFD_INTEL_QUARK_I2C_GPIO
397	tristate "Intel Quark MFD I2C GPIO"
398	depends on PCI
399	depends on X86
400	depends on COMMON_CLK
401	select MFD_CORE
402	help
403	  This MFD provides support for I2C and GPIO that exist only
404	  in a single PCI device. It splits the 2 IO devices to
405	  their respective IO driver.
406	  The GPIO exports a total amount of 8 interrupt-capable GPIOs.
407
408config LPC_ICH
409	tristate "Intel ICH LPC"
410	depends on PCI
411	select MFD_CORE
412	help
413	  The LPC bridge function of the Intel ICH provides support for
414	  many functional units. This driver provides needed support for
415	  other drivers to control these functions, currently GPIO and
416	  watchdog.
417
418config LPC_SCH
419	tristate "Intel SCH LPC"
420	depends on PCI
421	select MFD_CORE
422	help
423	  LPC bridge function of the Intel SCH provides support for
424	  System Management Bus and General Purpose I/O.
425
426config INTEL_SOC_PMIC
427	bool "Support for Intel Atom SoC PMIC"
428	depends on GPIOLIB
429	depends on I2C=y
430	select MFD_CORE
431	select REGMAP_I2C
432	select REGMAP_IRQ
433	help
434	  Select this option to enable support for the PMIC device
435	  on some Intel SoC systems. The PMIC provides ADC, GPIO,
436	  thermal, charger and related power management functions
437	  on these systems.
438
439config MFD_INTEL_LPSS
440	tristate
441	select COMMON_CLK
442	select MFD_CORE
443
444config MFD_INTEL_LPSS_ACPI
445	tristate "Intel Low Power Subsystem support in ACPI mode"
446	select MFD_INTEL_LPSS
447	depends on X86 && ACPI
448	help
449	  This driver supports Intel Low Power Subsystem (LPSS) devices such as
450	  I2C, SPI and HS-UART starting from Intel Sunrisepoint (Intel Skylake
451	  PCH) in ACPI mode.
452
453config MFD_INTEL_LPSS_PCI
454	tristate "Intel Low Power Subsystem support in PCI mode"
455	select MFD_INTEL_LPSS
456	depends on X86 && PCI
457	help
458	  This driver supports Intel Low Power Subsystem (LPSS) devices such as
459	  I2C, SPI and HS-UART starting from Intel Sunrisepoint (Intel Skylake
460	  PCH) in PCI mode.
461
462config MFD_INTEL_MSIC
463	bool "Intel MSIC"
464	depends on INTEL_SCU_IPC
465	select MFD_CORE
466	help
467	  Select this option to enable access to Intel MSIC (Avatele
468	  Passage) chip. This chip embeds audio, battery, GPIO, etc.
469	  devices used in Intel Medfield platforms.
470
471config MFD_IPAQ_MICRO
472	bool "Atmel Micro ASIC (iPAQ h3100/h3600/h3700) Support"
473	depends on SA1100_H3100 || SA1100_H3600
474	select MFD_CORE
475	help
476	  Select this to get support for the Microcontroller found in
477	  the Compaq iPAQ handheld computers. This is an Atmel
478	  AT90LS8535 microcontroller flashed with a special iPAQ
479	  firmware using the custom protocol implemented in this driver.
480
481config MFD_JANZ_CMODIO
482	tristate "Janz CMOD-IO PCI MODULbus Carrier Board"
483	select MFD_CORE
484	depends on PCI
485	help
486	  This is the core driver for the Janz CMOD-IO PCI MODULbus
487	  carrier board. This device is a PCI to MODULbus bridge which may
488	  host many different types of MODULbus daughterboards, including
489	  CAN and GPIO controllers.
490
491config MFD_JZ4740_ADC
492	bool "Janz JZ4740 ADC core"
493	select MFD_CORE
494	select GENERIC_IRQ_CHIP
495	depends on MACH_JZ4740
496	help
497	  Say yes here if you want support for the ADC unit in the JZ4740 SoC.
498	  This driver is necessary for jz4740-battery and jz4740-hwmon driver.
499
500config MFD_KEMPLD
501	tristate "Kontron module PLD device"
502	select MFD_CORE
503	help
504	  This is the core driver for the PLD (Programmable Logic Device) found
505	  on some Kontron ETX and COMexpress (ETXexpress) modules. The PLD
506	  device may provide functions like watchdog, GPIO, UART and I2C bus.
507
508	  The following modules are supported:
509		* COMe-bBL6
510		* COMe-bHL6
511		* COMe-bIP#
512		* COMe-bPC2 (ETXexpress-PC)
513		* COMe-bSC# (ETXexpress-SC T#)
514		* COMe-cBL6
515		* COMe-cBT6
516		* COMe-cBW6
517		* COMe-cCT6
518		* COMe-cDC2 (microETXexpress-DC)
519		* COMe-cHL6
520		* COMe-cPC2 (microETXexpress-PC)
521		* COMe-cSL6
522		* COMe-mAL10
523		* COMe-mBT10
524		* COMe-mCT10
525		* COMe-mTT10 (nanoETXexpress-TT)
526		* ETX-OH
527
528	  This driver can also be built as a module. If so, the module
529	  will be called kempld-core.
530
531config MFD_88PM800
532	tristate "Marvell 88PM800"
533	depends on I2C
534	select REGMAP_I2C
535	select REGMAP_IRQ
536	select MFD_CORE
537	help
538	  This supports for Marvell 88PM800 Power Management IC.
539	  This includes the I2C driver and the core APIs _only_, you have to
540	  select individual components like voltage regulators, RTC and
541	  battery-charger under the corresponding menus.
542
543config MFD_88PM805
544	tristate "Marvell 88PM805"
545	depends on I2C
546	select REGMAP_I2C
547	select REGMAP_IRQ
548	select MFD_CORE
549	help
550	  This supports for Marvell 88PM805 Power Management IC. This includes
551	  the I2C driver and the core APIs _only_, you have to select individual
552	  components like codec device, headset/Mic device under the
553	  corresponding menus.
554
555config MFD_88PM860X
556	bool "Marvell 88PM8606/88PM8607"
557	depends on I2C=y
558	select REGMAP_I2C
559	select MFD_CORE
560	help
561	  This supports for Marvell 88PM8606/88PM8607 Power Management IC.
562	  This includes the I2C driver and the core APIs _only_, you have to
563	  select individual components like voltage regulators, RTC and
564	  battery-charger under the corresponding menus.
565
566config MFD_MAX14577
567	tristate "Maxim Semiconductor MAX14577/77836 MUIC + Charger Support"
568	depends on I2C
569	select MFD_CORE
570	select REGMAP_I2C
571	select REGMAP_IRQ
572	select IRQ_DOMAIN
573	help
574	  Say yes here to add support for Maxim Semiconductor MAX14577 and
575	  MAX77836 Micro-USB ICs with battery charger.
576	  This driver provides common support for accessing the device;
577	  additional drivers must be enabled in order to use the functionality
578	  of the device.
579
580config MFD_MAX77620
581	bool "Maxim Semiconductor MAX77620 and MAX20024 PMIC Support"
582	depends on I2C=y
583	depends on OF || COMPILE_TEST
584	select MFD_CORE
585	select REGMAP_I2C
586	select REGMAP_IRQ
587	select IRQ_DOMAIN
588	help
589	  Say yes here to add support for Maxim Semiconductor MAX77620 and
590	  MAX20024 which are Power Management IC with General purpose pins,
591	  RTC, regulators, clock generator, watchdog etc. This driver
592	  provides common support for accessing the device; additional drivers
593	  must be enabled in order to use the functionality of the device.
594
595config MFD_MAX77686
596	tristate "Maxim Semiconductor MAX77686/802 PMIC Support"
597	depends on I2C
598	depends on OF || COMPILE_TEST
599	select MFD_CORE
600	select REGMAP_I2C
601	select REGMAP_IRQ
602	select IRQ_DOMAIN
603	help
604	  Say yes here to add support for Maxim Semiconductor MAX77686 and
605	  MAX77802 which are Power Management IC with an RTC on chip.
606	  This driver provides common support for accessing the device;
607	  additional drivers must be enabled in order to use the functionality
608	  of the device.
609
610config MFD_MAX77693
611	tristate "Maxim Semiconductor MAX77693 PMIC Support"
612	depends on I2C
613	select MFD_CORE
614	select REGMAP_I2C
615	select REGMAP_IRQ
616	help
617	  Say yes here to add support for Maxim Semiconductor MAX77693.
618	  This is a companion Power Management IC with Flash, Haptic, Charger,
619	  and MUIC(Micro USB Interface Controller) controls on chip.
620	  This driver provides common support for accessing the device;
621	  additional drivers must be enabled in order to use the functionality
622	  of the device.
623
624config MFD_MAX77843
625	bool "Maxim Semiconductor MAX77843 PMIC Support"
626	depends on I2C=y
627	select MFD_CORE
628	select REGMAP_I2C
629	select REGMAP_IRQ
630	help
631	  Say yes here to add support for Maxim Semiconductor MAX77843.
632	  This is companion Power Management IC with LEDs, Haptic, Charger,
633	  Fuel Gauge, MUIC(Micro USB Interface Controller) controls on chip.
634	  This driver provides common support for accessing the device;
635	  additional drivers must be enabled in order to use the functionality
636	  of the device.
637
638config MFD_MAX8907
639	tristate "Maxim Semiconductor MAX8907 PMIC Support"
640	select MFD_CORE
641	depends on I2C
642	select REGMAP_I2C
643	select REGMAP_IRQ
644	help
645	  Say yes here to add support for Maxim Semiconductor MAX8907. This is
646	  a Power Management IC. This driver provides common support for
647	  accessing the device; additional drivers must be enabled in order
648	  to use the functionality of the device.
649
650config MFD_MAX8925
651	bool "Maxim Semiconductor MAX8925 PMIC Support"
652	depends on I2C=y
653	select MFD_CORE
654	help
655	  Say yes here to add support for Maxim Semiconductor MAX8925. This is
656	  a Power Management IC. This driver provides common support for
657	  accessing the device, additional drivers must be enabled in order
658	  to use the functionality of the device.
659
660config MFD_MAX8997
661	bool "Maxim Semiconductor MAX8997/8966 PMIC Support"
662	depends on I2C=y
663	select MFD_CORE
664	select IRQ_DOMAIN
665	help
666	  Say yes here to add support for Maxim Semiconductor MAX8997/8966.
667	  This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic,
668	  MUIC controls on chip.
669	  This driver provides common support for accessing the device;
670	  additional drivers must be enabled in order to use the functionality
671	  of the device.
672
673config MFD_MAX8998
674	bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support"
675	depends on I2C=y
676	select MFD_CORE
677	select IRQ_DOMAIN
678	help
679	  Say yes here to add support for Maxim Semiconductor MAX8998 and
680	  National Semiconductor LP3974. This is a Power Management IC.
681	  This driver provides common support for accessing the device,
682	  additional drivers must be enabled in order to use the functionality
683	  of the device.
684
685config MFD_MT6397
686	tristate "MediaTek MT6397 PMIC Support"
687	select MFD_CORE
688	select IRQ_DOMAIN
689	help
690	  Say yes here to add support for MediaTek MT6397 PMIC. This is
691	  a Power Management IC. This driver provides common support for
692	  accessing the device; additional drivers must be enabled in order
693	  to use the functionality of the device.
694
695config MFD_MENF21BMC
696	tristate "MEN 14F021P00 Board Management Controller Support"
697	depends on I2C
698	select MFD_CORE
699	help
700	  Say yes here to add support for the MEN 14F021P00 BMC
701	  which is a Board Management Controller connected to the I2C bus.
702	  The device supports multiple sub-devices like LED, HWMON and WDT.
703	  This driver provides common support for accessing the devices;
704	  additional drivers must be enabled in order to use the
705	  functionality of the BMC device.
706
707	  This driver can also be built as a module. If so the module
708	  will be called menf21bmc.
709
710config EZX_PCAP
711	bool "Motorola EZXPCAP Support"
712	depends on SPI_MASTER
713	help
714	  This enables the PCAP ASIC present on EZX Phones. This is
715	  needed for MMC, TouchScreen, Sound, USB, etc..
716
717config MFD_VIPERBOARD
718        tristate "Nano River Technologies Viperboard"
719	select MFD_CORE
720	depends on USB
721	default n
722	help
723	  Say yes here if you want support for Nano River Technologies
724	  Viperboard.
725	  There are mfd cell drivers available for i2c master, adc and
726	  both gpios found on the board. The spi part does not yet
727	  have a driver.
728	  You need to select the mfd cell drivers separately.
729	  The drivers do not support all features the board exposes.
730
731config MFD_RETU
732	tristate "Nokia Retu and Tahvo multi-function device"
733	select MFD_CORE
734	depends on I2C
735	select REGMAP_IRQ
736	help
737	  Retu and Tahvo are a multi-function devices found on Nokia
738	  Internet Tablets (770, N800 and N810).
739
740config MFD_PCF50633
741	tristate "NXP PCF50633"
742	depends on I2C
743	select REGMAP_I2C
744	help
745	  Say yes here if you have NXP PCF50633 chip on your board.
746	  This core driver provides register access and IRQ handling
747	  facilities, and registers devices for the various functions
748	  so that function-specific drivers can bind to them.
749
750config PCF50633_ADC
751	tristate "NXP PCF50633 ADC"
752	depends on MFD_PCF50633
753	help
754	 Say yes here if you want to include support for ADC in the
755	 NXP PCF50633 chip.
756
757config PCF50633_GPIO
758	tristate "NXP PCF50633 GPIO"
759	depends on MFD_PCF50633
760	help
761	 Say yes here if you want to include support GPIO for pins on
762	 the PCF50633 chip.
763
764config UCB1400_CORE
765	tristate "Philips UCB1400 Core driver"
766	depends on AC97_BUS
767	depends on GPIOLIB
768	help
769	  This enables support for the Philips UCB1400 core functions.
770	  The UCB1400 is an AC97 audio codec.
771
772	  To compile this driver as a module, choose M here: the
773	  module will be called ucb1400_core.
774
775config MFD_PM8XXX
776	tristate "Qualcomm PM8xxx PMIC chips driver"
777	depends on (ARM || HEXAGON)
778	select IRQ_DOMAIN
779	select MFD_CORE
780	select REGMAP
781	help
782	  If you say yes to this option, support will be included for the
783	  built-in PM8xxx PMIC chips.
784
785	  This is required if your board has a PM8xxx and uses its features,
786	  such as: MPPs, GPIOs, regulators, interrupts, and PWM.
787
788	  Say M here if you want to include support for PM8xxx chips as a
789	  module. This will build a module called "pm8xxx-core".
790
791config MFD_QCOM_RPM
792	tristate "Qualcomm Resource Power Manager (RPM)"
793	depends on ARCH_QCOM && OF
794	help
795	  If you say yes to this option, support will be included for the
796	  Resource Power Manager system found in the Qualcomm 8660, 8960 and
797	  8064 based devices.
798
799	  This is required to access many regulators, clocks and bus
800	  frequencies controlled by the RPM on these devices.
801
802	  Say M here if you want to include support for the Qualcomm RPM as a
803	  module. This will build a module called "qcom_rpm".
804
805config MFD_SPMI_PMIC
806	tristate "Qualcomm SPMI PMICs"
807	depends on ARCH_QCOM || COMPILE_TEST
808	depends on OF
809	depends on SPMI
810	select REGMAP_SPMI
811	help
812	  This enables support for the Qualcomm SPMI PMICs.
813	  These PMICs are currently used with the Snapdragon 800 series of
814	  SoCs.  Note, that this will only be useful paired with descriptions
815	  of the independent functions as children nodes in the device tree.
816
817	  Say M here if you want to include support for the SPMI PMIC
818	  series as a module.  The module will be called "qcom-spmi-pmic".
819
820config MFD_RDC321X
821	tristate "RDC R-321x southbridge"
822	select MFD_CORE
823	depends on PCI
824	help
825	  Say yes here if you want to have support for the RDC R-321x SoC
826	  southbridge which provides access to GPIOs and Watchdog using the
827	  southbridge PCI device configuration space.
828
829config MFD_RTSX_PCI
830	tristate "Realtek PCI-E card reader"
831	depends on PCI
832	select MFD_CORE
833	help
834	  This supports for Realtek PCI-Express card reader including rts5209,
835	  rts5227, rts522A, rts5229, rts5249, rts524A, rts525A, rtl8411, etc.
836	  Realtek card reader supports access to many types of memory cards,
837	  such as Memory Stick, Memory Stick Pro, Secure Digital and
838	  MultiMediaCard.
839
840config MFD_RT5033
841	tristate "Richtek RT5033 Power Management IC"
842	depends on I2C
843	select MFD_CORE
844	select REGMAP_I2C
845	select REGMAP_IRQ
846	help
847	  This driver provides for the Richtek RT5033 Power Management IC,
848	  which includes the I2C driver and the Core APIs. This driver provides
849	  common support for accessing the device. The device supports multiple
850	  sub-devices like charger, fuel gauge, flash LED, current source,
851	  LDO and Buck.
852
853config MFD_RTSX_USB
854	tristate "Realtek USB card reader"
855	depends on USB
856	select MFD_CORE
857	help
858	  Select this option to get support for Realtek USB 2.0 card readers
859	  including RTS5129, RTS5139, RTS5179 and RTS5170.
860	  Realtek card reader supports access to many types of memory cards,
861	  such as Memory Stick Pro, Secure Digital and MultiMediaCard.
862
863config MFD_RC5T583
864	bool "Ricoh RC5T583 Power Management system device"
865	depends on I2C=y
866	select MFD_CORE
867	select REGMAP_I2C
868	help
869	  Select this option to get support for the RICOH583 Power
870	  Management system device.
871	  This driver provides common support for accessing the device
872	  through i2c interface. The device supports multiple sub-devices
873	  like GPIO, interrupts, RTC, LDO and DCDC regulators, onkey.
874	  Additional drivers must be enabled in order to use the
875	  different functionality of the device.
876
877config MFD_RK808
878	tristate "Rockchip RK808/RK818 Power Management Chip"
879	depends on I2C && OF
880	select MFD_CORE
881	select REGMAP_I2C
882	select REGMAP_IRQ
883	help
884	  If you say yes here you get support for the RK808 and RK818
885	  Power Management chips.
886	  This driver provides common support for accessing the device
887	  through I2C interface. The device supports multiple sub-devices
888	  including interrupts, RTC, LDO & DCDC regulators, and onkey.
889
890config MFD_RN5T618
891	tristate "Ricoh RN5T567/618 PMIC"
892	depends on I2C
893	depends on OF
894	select MFD_CORE
895	select REGMAP_I2C
896	help
897	  Say yes here to add support for the Ricoh RN5T567,
898          RN5T618, RC5T619 PMIC.
899	  This driver provides common support for accessing the device,
900	  additional drivers must be enabled in order to use the
901	  functionality of the device.
902
903config MFD_SEC_CORE
904	bool "SAMSUNG Electronics PMIC Series Support"
905	depends on I2C=y
906	select MFD_CORE
907	select REGMAP_I2C
908	select REGMAP_IRQ
909	help
910	 Support for the Samsung Electronics MFD series.
911	 This driver provides common support for accessing the device,
912	 additional drivers must be enabled in order to use the functionality
913	 of the device
914
915config MFD_SI476X_CORE
916	tristate "Silicon Laboratories 4761/64/68 AM/FM radio."
917	depends on I2C
918	select MFD_CORE
919	select REGMAP_I2C
920	help
921	  This is the core driver for the SI476x series of AM/FM
922	  radio. This MFD driver connects the radio-si476x V4L2 module
923	  and the si476x audio codec.
924
925	  To compile this driver as a module, choose M here: the
926	  module will be called si476x-core.
927
928config MFD_SM501
929	tristate "Silicon Motion SM501"
930	 ---help---
931	  This is the core driver for the Silicon Motion SM501 multimedia
932	  companion chip. This device is a multifunction device which may
933	  provide numerous interfaces including USB host controller, USB gadget,
934	  asynchronous serial ports, audio functions, and a dual display video
935	  interface. The device may be connected by PCI or local bus with
936	  varying functions enabled.
937
938config MFD_SM501_GPIO
939	bool "Export GPIO via GPIO layer"
940	depends on MFD_SM501 && GPIOLIB
941	 ---help---
942	 This option uses the gpio library layer to export the 64 GPIO
943	 lines on the SM501. The platform data is used to supply the
944	 base number for the first GPIO line to register.
945
946config MFD_SKY81452
947	tristate "Skyworks Solutions SKY81452"
948	select MFD_CORE
949	select REGMAP_I2C
950	depends on I2C
951	help
952	  This is the core driver for the Skyworks SKY81452 backlight and
953	  voltage regulator device.
954
955	  This driver can also be built as a module.  If so, the module
956	  will be called sky81452.
957
958config MFD_SMSC
959       bool "SMSC ECE1099 series chips"
960       depends on I2C=y
961       select MFD_CORE
962       select REGMAP_I2C
963       help
964        If you say yes here you get support for the
965        ece1099 chips from SMSC.
966
967        To compile this driver as a module, choose M here: the
968        module will be called smsc.
969
970config ABX500_CORE
971	bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions"
972	default y if ARCH_U300 || ARCH_U8500 || COMPILE_TEST
973	help
974	  Say yes here if you have the ABX500 Mixed Signal IC family
975	  chips. This core driver expose register access functions.
976	  Functionality specific drivers using these functions can
977	  remain unchanged when IC changes. Binding of the functions to
978	  actual register access is done by the IC core driver.
979
980config AB3100_CORE
981	bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
982	depends on I2C=y && ABX500_CORE
983	select MFD_CORE
984	default y if ARCH_U300
985	help
986	  Select this to enable the AB3100 Mixed Signal IC core
987	  functionality. This connects to a AB3100 on the I2C bus
988	  and expose a number of symbols needed for dependent devices
989	  to read and write registers and subscribe to events from
990	  this multi-functional IC. This is needed to use other features
991	  of the AB3100 such as battery-backed RTC, charging control,
992	  LEDs, vibrator, system power and temperature, power management
993	  and ALSA sound.
994
995config AB3100_OTP
996	tristate "ST-Ericsson AB3100 OTP functions"
997	depends on AB3100_CORE
998	default y if AB3100_CORE
999	help
1000	  Select this to enable the AB3100 Mixed Signal IC OTP (one-time
1001	  programmable memory) support. This exposes a sysfs file to read
1002	  out OTP values.
1003
1004config AB8500_CORE
1005	bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
1006	depends on ABX500_CORE && MFD_DB8500_PRCMU
1007	select POWER_SUPPLY
1008	select MFD_CORE
1009	select IRQ_DOMAIN
1010	help
1011	  Select this option to enable access to AB8500 power management
1012	  chip. This connects to U8500 either on the SSP/SPI bus (deprecated
1013	  since hardware version v1.0) or the I2C bus via PRCMU. It also adds
1014	  the irq_chip parts for handling the Mixed Signal chip events.
1015	  This chip embeds various other multimedia funtionalities as well.
1016
1017config AB8500_DEBUG
1018       bool "Enable debug info via debugfs"
1019       depends on AB8500_GPADC && DEBUG_FS
1020       default y if DEBUG_FS
1021       help
1022         Select this option if you want debug information using the debug
1023         filesystem, debugfs.
1024
1025config AB8500_GPADC
1026	bool "ST-Ericsson AB8500 GPADC driver"
1027	depends on AB8500_CORE && REGULATOR_AB8500
1028	default y
1029	help
1030	  AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage
1031
1032config MFD_DB8500_PRCMU
1033	bool "ST-Ericsson DB8500 Power Reset Control Management Unit"
1034	depends on UX500_SOC_DB8500
1035	select MFD_CORE
1036	help
1037	  Select this option to enable support for the DB8500 Power Reset
1038	  and Control Management Unit. This is basically an autonomous
1039	  system controller running an XP70 microprocessor, which is accessed
1040	  through a register map.
1041
1042config MFD_STMPE
1043	bool "STMicroelectronics STMPE"
1044	depends on (I2C=y || SPI_MASTER=y)
1045	depends on OF
1046	select MFD_CORE
1047	help
1048	  Support for the STMPE family of I/O Expanders from
1049	  STMicroelectronics.
1050
1051	  Currently supported devices are:
1052
1053		STMPE811: GPIO, Touchscreen
1054		STMPE1601: GPIO, Keypad
1055		STMPE1801: GPIO, Keypad
1056		STMPE2401: GPIO, Keypad
1057		STMPE2403: GPIO, Keypad
1058
1059	  This driver provides common support for accessing the device,
1060	  additional drivers must be enabled in order to use the functionality
1061	  of the device.  Currently available sub drivers are:
1062
1063		GPIO: stmpe-gpio
1064		Keypad: stmpe-keypad
1065		Touchscreen: stmpe-ts
1066
1067menu "STMicroelectronics STMPE Interface Drivers"
1068depends on MFD_STMPE
1069
1070config STMPE_I2C
1071	bool "STMicroelectronics STMPE I2C Interface"
1072	depends on I2C=y
1073	default y
1074	help
1075	  This is used to enable I2C interface of STMPE
1076
1077config STMPE_SPI
1078	bool "STMicroelectronics STMPE SPI Interface"
1079	depends on SPI_MASTER
1080	help
1081	  This is used to enable SPI interface of STMPE
1082endmenu
1083
1084config MFD_STA2X11
1085	bool "STMicroelectronics STA2X11"
1086	depends on STA2X11
1087	select MFD_CORE
1088	select REGMAP_MMIO
1089
1090config MFD_SUN6I_PRCM
1091	bool "Allwinner A31 PRCM controller"
1092	depends on ARCH_SUNXI
1093	select MFD_CORE
1094	help
1095	  Support for the PRCM (Power/Reset/Clock Management) unit available
1096	  in A31 SoC.
1097
1098config MFD_SYSCON
1099	bool "System Controller Register R/W Based on Regmap"
1100	select REGMAP_MMIO
1101	help
1102	  Select this option to enable accessing system control registers
1103	  via regmap.
1104
1105config MFD_DAVINCI_VOICECODEC
1106	tristate
1107	select MFD_CORE
1108	select REGMAP_MMIO
1109
1110config MFD_TI_AM335X_TSCADC
1111	tristate "TI ADC / Touch Screen chip support"
1112	select MFD_CORE
1113	select REGMAP
1114	select REGMAP_MMIO
1115	help
1116	  If you say yes here you get support for Texas Instruments series
1117	  of Touch Screen /ADC chips.
1118	  To compile this driver as a module, choose M here: the
1119	  module will be called ti_am335x_tscadc.
1120
1121config MFD_DM355EVM_MSP
1122	bool "TI DaVinci DM355 EVM microcontroller"
1123	depends on I2C=y && MACH_DAVINCI_DM355_EVM
1124	help
1125	  This driver supports the MSP430 microcontroller used on these
1126	  boards.  MSP430 firmware manages resets and power sequencing,
1127	  inputs from buttons and the IR remote, LEDs, an RTC, and more.
1128
1129config MFD_LP3943
1130	tristate "TI/National Semiconductor LP3943 MFD Driver"
1131	depends on I2C
1132	select MFD_CORE
1133	select REGMAP_I2C
1134	help
1135	  Support for the TI/National Semiconductor LP3943.
1136	  This driver consists of GPIO and PWM drivers.
1137	  With these functionalities, it can be used for LED string control or
1138	  general usage such like a GPIO controller and a PWM controller.
1139
1140config MFD_LP8788
1141	bool "TI LP8788 Power Management Unit Driver"
1142	depends on I2C=y
1143	select MFD_CORE
1144	select REGMAP_I2C
1145	select IRQ_DOMAIN
1146	help
1147	  TI LP8788 PMU supports regulators, battery charger, RTC,
1148	  ADC, backlight driver and current sinks.
1149
1150config MFD_OMAP_USB_HOST
1151	bool "TI OMAP USBHS core and TLL driver"
1152	depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3
1153	default y
1154	help
1155	  This is the core driver for the OAMP EHCI and OHCI drivers.
1156	  This MFD driver does the required setup functionalities for
1157	  OMAP USB Host drivers.
1158
1159config MFD_PALMAS
1160	bool "TI Palmas series chips"
1161	select MFD_CORE
1162	select REGMAP_I2C
1163	select REGMAP_IRQ
1164	depends on I2C=y
1165	help
1166	  If you say yes here you get support for the Palmas
1167	  series of PMIC chips from Texas Instruments.
1168
1169config TPS6105X
1170	tristate "TI TPS61050/61052 Boost Converters"
1171	depends on I2C
1172	select REGMAP_I2C
1173	select REGULATOR
1174	select MFD_CORE
1175	select REGULATOR_FIXED_VOLTAGE
1176	help
1177	  This option enables a driver for the TP61050/TPS61052
1178	  high-power "white LED driver". This boost converter is
1179	  sometimes used for other things than white LEDs, and
1180	  also contains a GPIO pin.
1181
1182config TPS65010
1183	tristate "TI TPS6501x Power Management chips"
1184	depends on I2C && GPIOLIB
1185	default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
1186	help
1187	  If you say yes here you get support for the TPS6501x series of
1188	  Power Management chips.  These include voltage regulators,
1189	  lithium ion/polymer battery charging, and other features that
1190	  are often used in portable devices like cell phones and cameras.
1191
1192	  This driver can also be built as a module.  If so, the module
1193	  will be called tps65010.
1194
1195config TPS6507X
1196	tristate "TI TPS6507x Power Management / Touch Screen chips"
1197	select MFD_CORE
1198	depends on I2C
1199	help
1200	  If you say yes here you get support for the TPS6507x series of
1201	  Power Management / Touch Screen chips.  These include voltage
1202	  regulators, lithium ion/polymer battery charging, touch screen
1203	  and other features that are often used in portable devices.
1204	  This driver can also be built as a module.  If so, the module
1205	  will be called tps6507x.
1206
1207config MFD_TPS65086
1208	tristate "TI TPS65086 Power Management Integrated Chips (PMICs)"
1209	select REGMAP
1210	select REGMAP_IRQ
1211	select REGMAP_I2C
1212	depends on I2C
1213	help
1214	  If you say yes here you get support for the TPS65086 series of
1215	  Power Management chips.
1216	  This driver provides common support for accessing the device,
1217	  additional drivers must be enabled in order to use the
1218	  functionality of the device.
1219
1220config TPS65911_COMPARATOR
1221	tristate
1222
1223config MFD_TPS65090
1224	bool "TI TPS65090 Power Management chips"
1225	depends on I2C=y
1226	select MFD_CORE
1227	select REGMAP_I2C
1228	select REGMAP_IRQ
1229	help
1230	  If you say yes here you get support for the TPS65090 series of
1231	  Power Management chips.
1232	  This driver provides common support for accessing the device,
1233	  additional drivers must be enabled in order to use the
1234	  functionality of the device.
1235
1236config MFD_TPS65217
1237	tristate "TI TPS65217 Power Management / White LED chips"
1238	depends on I2C
1239	select MFD_CORE
1240	select REGMAP_I2C
1241	select IRQ_DOMAIN
1242	help
1243	  If you say yes here you get support for the TPS65217 series of
1244	  Power Management / White LED chips.
1245	  These include voltage regulators, lithium ion/polymer battery
1246	  charger, wled and other features that are often used in portable
1247	  devices.
1248
1249	  This driver can also be built as a module.  If so, the module
1250	  will be called tps65217.
1251
1252config MFD_TI_LP873X
1253	tristate "TI LP873X Power Management IC"
1254	depends on I2C
1255	select MFD_CORE
1256	select REGMAP_I2C
1257	help
1258	  If you say yes here then you get support for the LP873X series of
1259	  Power Management Integrated Circuits (PMIC).
1260	  These include voltage regulators, thermal protection, configurable
1261	  General Purpose Outputs (GPO) that are used in portable devices.
1262
1263	  This driver can also be built as a module. If so, the module
1264	  will be called lp873x.
1265
1266config MFD_TPS65218
1267	tristate "TI TPS65218 Power Management chips"
1268	depends on I2C
1269	select MFD_CORE
1270	select REGMAP_I2C
1271	select REGMAP_IRQ
1272	help
1273	  If you say yes here you get support for the TPS65218 series of
1274	  Power Management chips.
1275	  These include voltage regulators, gpio and other features
1276	  that are often used in portable devices. Only regulator
1277	  component is currently supported.
1278
1279	  This driver can also be built as a module.  If so, the module
1280	  will be called tps65218.
1281
1282config MFD_TPS6586X
1283	bool "TI TPS6586x Power Management chips"
1284	depends on I2C=y
1285	select MFD_CORE
1286	select REGMAP_I2C
1287	help
1288	  If you say yes here you get support for the TPS6586X series of
1289	  Power Management chips.
1290	  This driver provides common support for accessing the device,
1291	  additional drivers must be enabled in order to use the
1292	  functionality of the device.
1293
1294	  This driver can also be built as a module.  If so, the module
1295	  will be called tps6586x.
1296
1297config MFD_TPS65910
1298	bool "TI TPS65910 Power Management chip"
1299	depends on I2C=y
1300	depends on GPIOLIB || COMPILE_TEST
1301	select MFD_CORE
1302	select REGMAP_I2C
1303	select REGMAP_IRQ
1304	select IRQ_DOMAIN
1305	help
1306	  if you say yes here you get support for the TPS65910 series of
1307	  Power Management chips.
1308
1309config MFD_TPS65912
1310	tristate
1311	select MFD_CORE
1312	select REGMAP
1313	select REGMAP_IRQ
1314
1315config MFD_TPS65912_I2C
1316	tristate "TI TPS65912 Power Management chip with I2C"
1317	select MFD_TPS65912
1318	select REGMAP_I2C
1319	depends on I2C
1320	help
1321	  If you say yes here you get support for the TPS65912 series of
1322	  PM chips with I2C interface.
1323
1324config MFD_TPS65912_SPI
1325	tristate "TI TPS65912 Power Management chip with SPI"
1326	select MFD_TPS65912
1327	select REGMAP_SPI
1328	depends on SPI_MASTER
1329	help
1330	  If you say yes here you get support for the TPS65912 series of
1331	  PM chips with SPI interface.
1332
1333config MFD_TPS80031
1334	bool "TI TPS80031/TPS80032 Power Management chips"
1335	depends on I2C=y
1336	select MFD_CORE
1337	select REGMAP_I2C
1338	select REGMAP_IRQ
1339	help
1340	  If you say yes here you get support for the Texas Instruments
1341	  TPS80031/ TPS80032 Fully Integrated Power Management with Power
1342	  Path and Battery Charger. The device provides five configurable
1343	  step-down converters, 11 general purpose LDOs, USB OTG Module,
1344	  ADC, RTC, 2 PWM, System Voltage Regulator/Battery Charger with
1345	  Power Path from USB, 32K clock generator.
1346
1347config TWL4030_CORE
1348	bool "TI TWL4030/TWL5030/TWL6030/TPS659x0 Support"
1349	depends on I2C=y
1350	select IRQ_DOMAIN
1351	select REGMAP_I2C
1352	help
1353	  Say yes here if you have TWL4030 / TWL6030 family chip on your board.
1354	  This core driver provides register access and IRQ handling
1355	  facilities, and registers devices for the various functions
1356	  so that function-specific drivers can bind to them.
1357
1358	  These multi-function chips are found on many OMAP2 and OMAP3
1359	  boards, providing power management, RTC, GPIO, keypad, a
1360	  high speed USB OTG transceiver, an audio codec (on most
1361	  versions) and many other features.
1362
1363config TWL4030_POWER
1364	bool "TI TWL4030 power resources"
1365	depends on TWL4030_CORE && ARM
1366	help
1367	  Say yes here if you want to use the power resources on the
1368	  TWL4030 family chips.  Most of these resources are regulators,
1369	  which have a separate driver; some are control signals, such
1370	  as clock request handshaking.
1371
1372	  This driver uses board-specific data to initialize the resources
1373	  and load scripts controlling which resources are switched off/on
1374	  or reset when a sleep, wakeup or warm reset event occurs.
1375
1376config MFD_TWL4030_AUDIO
1377	bool "TI TWL4030 Audio"
1378	depends on TWL4030_CORE
1379	select MFD_CORE
1380	default n
1381
1382config TWL6040_CORE
1383	bool "TI TWL6040 audio codec"
1384	depends on I2C=y
1385	select MFD_CORE
1386	select REGMAP_I2C
1387	select REGMAP_IRQ
1388	default n
1389	help
1390	  Say yes here if you want support for Texas Instruments TWL6040 audio
1391	  codec.
1392	  This driver provides common support for accessing the device,
1393	  additional drivers must be enabled in order to use the
1394	  functionality of the device (audio, vibra).
1395
1396config MENELAUS
1397	bool "TI TWL92330/Menelaus PM chip"
1398	depends on I2C=y && ARCH_OMAP2
1399	help
1400	  If you say yes here you get support for the Texas Instruments
1401	  TWL92330/Menelaus Power Management chip. This include voltage
1402	  regulators, Dual slot memory card transceivers, real-time clock
1403	  and other features that are often used in portable devices like
1404	  cell phones and PDAs.
1405
1406config MFD_WL1273_CORE
1407	tristate "TI WL1273 FM radio"
1408	depends on I2C
1409	select MFD_CORE
1410	default n
1411	help
1412	  This is the core driver for the TI WL1273 FM radio. This MFD
1413	  driver connects the radio-wl1273 V4L2 module and the wl1273
1414	  audio codec.
1415
1416config MFD_LM3533
1417	tristate "TI/National Semiconductor LM3533 Lighting Power chip"
1418	depends on I2C
1419	select MFD_CORE
1420	select REGMAP_I2C
1421	help
1422	  Say yes here to enable support for National Semiconductor / TI
1423	  LM3533 Lighting Power chips.
1424
1425	  This driver provides common support for accessing the device;
1426	  additional drivers must be enabled in order to use the LED,
1427	  backlight or ambient-light-sensor functionality of the device.
1428
1429config MFD_TIMBERDALE
1430	tristate "Timberdale FPGA"
1431	select MFD_CORE
1432	depends on PCI && GPIOLIB && (X86_32 || COMPILE_TEST)
1433	---help---
1434	This is the core driver for the timberdale FPGA. This device is a
1435	multifunction device which exposes numerous platform devices.
1436
1437	The timberdale FPGA can be found on the Intel Atom development board
1438	for in-vehicle infontainment, called Russellville.
1439
1440config MFD_TC3589X
1441	bool "Toshiba TC35892 and variants"
1442	depends on I2C=y
1443	depends on OF
1444	select MFD_CORE
1445	help
1446	  Support for the Toshiba TC35892 and variants I/O Expander.
1447
1448	  This driver provides common support for accessing the device,
1449	  additional drivers must be enabled in order to use the
1450	  functionality of the device.
1451
1452config MFD_TMIO
1453	bool
1454	default n
1455
1456config MFD_T7L66XB
1457	bool "Toshiba T7L66XB"
1458	depends on ARM && HAVE_CLK
1459	select MFD_CORE
1460	select MFD_TMIO
1461	help
1462	  Support for Toshiba Mobile IO Controller T7L66XB
1463
1464config MFD_TC6387XB
1465	bool "Toshiba TC6387XB"
1466	depends on ARM && HAVE_CLK
1467	select MFD_CORE
1468	select MFD_TMIO
1469	help
1470	  Support for Toshiba Mobile IO Controller TC6387XB
1471
1472config MFD_TC6393XB
1473	bool "Toshiba TC6393XB"
1474	depends on ARM && HAVE_CLK
1475	select GPIOLIB
1476	select MFD_CORE
1477	select MFD_TMIO
1478	help
1479	  Support for Toshiba Mobile IO Controller TC6393XB
1480
1481config MFD_VX855
1482	tristate "VIA VX855/VX875 integrated south bridge"
1483	depends on PCI
1484	select MFD_CORE
1485	help
1486	  Say yes here to enable support for various functions of the
1487	  VIA VX855/VX875 south bridge. You will need to enable the vx855_spi
1488	  and/or vx855_gpio drivers for this to do anything useful.
1489
1490config MFD_ARIZONA
1491	select REGMAP
1492	select REGMAP_IRQ
1493	select MFD_CORE
1494	bool
1495
1496config MFD_ARIZONA_I2C
1497	tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with I2C"
1498	select MFD_ARIZONA
1499	select REGMAP_I2C
1500	depends on I2C
1501	help
1502	  Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform
1503	  audio SoC core functionality controlled via I2C.
1504
1505config MFD_ARIZONA_SPI
1506	tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with SPI"
1507	select MFD_ARIZONA
1508	select REGMAP_SPI
1509	depends on SPI_MASTER
1510	help
1511	  Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform
1512	  audio SoC core functionality controlled via SPI.
1513
1514config MFD_CS47L24
1515	bool "Cirrus Logic CS47L24 and WM1831"
1516	depends on MFD_ARIZONA
1517	help
1518	  Support for Cirrus Logic CS47L24 and WM1831 low power audio SoC
1519
1520config MFD_WM5102
1521	bool "Wolfson Microelectronics WM5102"
1522	depends on MFD_ARIZONA
1523	help
1524	  Support for Wolfson Microelectronics WM5102 low power audio SoC
1525
1526config MFD_WM5110
1527	bool "Wolfson Microelectronics WM5110 and WM8280/WM8281"
1528	depends on MFD_ARIZONA
1529	help
1530	  Support for Wolfson Microelectronics WM5110 and WM8280/WM8281
1531	  low power audio SoC
1532
1533config MFD_WM8997
1534	bool "Wolfson Microelectronics WM8997"
1535	depends on MFD_ARIZONA
1536	help
1537	  Support for Wolfson Microelectronics WM8997 low power audio SoC
1538
1539config MFD_WM8998
1540	bool "Wolfson Microelectronics WM8998"
1541	depends on MFD_ARIZONA
1542	help
1543	  Support for Wolfson Microelectronics WM8998 low power audio SoC
1544
1545config MFD_WM8400
1546	bool "Wolfson Microelectronics WM8400"
1547	select MFD_CORE
1548	depends on I2C=y
1549	select REGMAP_I2C
1550	help
1551	  Support for the Wolfson Microelecronics WM8400 PMIC and audio
1552	  CODEC.  This driver provides common support for accessing
1553	  the device, additional drivers must be enabled in order to use
1554	  the functionality of the device.
1555
1556config MFD_WM831X
1557	bool
1558
1559config MFD_WM831X_I2C
1560	bool "Wolfson Microelectronics WM831x/2x PMICs with I2C"
1561	select MFD_CORE
1562	select MFD_WM831X
1563	select REGMAP_I2C
1564	select IRQ_DOMAIN
1565	depends on I2C=y
1566	help
1567	  Support for the Wolfson Microelecronics WM831x and WM832x PMICs
1568	  when controlled using I2C.  This driver provides common support
1569	  for accessing the device, additional drivers must be enabled in
1570	  order to use the functionality of the device.
1571
1572config MFD_WM831X_SPI
1573	bool "Wolfson Microelectronics WM831x/2x PMICs with SPI"
1574	select MFD_CORE
1575	select MFD_WM831X
1576	select REGMAP_SPI
1577	select IRQ_DOMAIN
1578	depends on SPI_MASTER
1579	help
1580	  Support for the Wolfson Microelecronics WM831x and WM832x PMICs
1581	  when controlled using SPI.  This driver provides common support
1582	  for accessing the device, additional drivers must be enabled in
1583	  order to use the functionality of the device.
1584
1585config MFD_WM8350
1586	bool
1587
1588config MFD_WM8350_I2C
1589	bool "Wolfson Microelectronics WM8350 with I2C"
1590	select MFD_WM8350
1591	select REGMAP_I2C
1592	depends on I2C=y
1593	help
1594	  The WM8350 is an integrated audio and power management
1595	  subsystem with watchdog and RTC functionality for embedded
1596	  systems.  This option enables core support for the WM8350 with
1597	  I2C as the control interface.  Additional options must be
1598	  selected to enable support for the functionality of the chip.
1599
1600config MFD_WM8994
1601	tristate "Wolfson Microelectronics WM8994"
1602	select MFD_CORE
1603	select REGMAP_I2C
1604	select REGMAP_IRQ
1605	depends on I2C
1606	help
1607	  The WM8994 is a highly integrated hi-fi CODEC designed for
1608	  smartphone applications.  As well as audio functionality it
1609	  has on board GPIO and regulator functionality which is
1610	  supported via the relevant subsystems.  This driver provides
1611	  core support for the WM8994, in order to use the actual
1612	  functionaltiy of the device other drivers must be enabled.
1613
1614config MFD_STW481X
1615	tristate "Support for ST Microelectronics STw481x"
1616	depends on I2C && (ARCH_NOMADIK || COMPILE_TEST)
1617	select REGMAP_I2C
1618	select MFD_CORE
1619	help
1620	  Select this option to enable the STw481x chip driver used
1621	  in various ST Microelectronics and ST-Ericsson embedded
1622	  Nomadik series.
1623
1624menu "Multimedia Capabilities Port drivers"
1625	depends on ARCH_SA1100
1626
1627config MCP
1628	tristate
1629
1630# Interface drivers
1631config MCP_SA11X0
1632	tristate "Support SA11x0 MCP interface"
1633	depends on ARCH_SA1100
1634	select MCP
1635
1636# Chip drivers
1637config MCP_UCB1200
1638	tristate "Support for UCB1200 / UCB1300"
1639	depends on MCP_SA11X0
1640	select MCP
1641
1642config MCP_UCB1200_TS
1643	tristate "Touchscreen interface support"
1644	depends on MCP_UCB1200 && INPUT
1645
1646endmenu
1647
1648config MFD_VEXPRESS_SYSREG
1649	bool "Versatile Express System Registers"
1650	depends on VEXPRESS_CONFIG && GPIOLIB && !ARCH_USES_GETTIMEOFFSET
1651	default y
1652	select CLKSRC_MMIO
1653	select GPIO_GENERIC_PLATFORM
1654	select MFD_CORE
1655	select MFD_SYSCON
1656	help
1657	  System Registers are the platform configuration block
1658	  on the ARM Ltd. Versatile Express board.
1659
1660endmenu
1661endif
1662