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