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