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