Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wirel...
[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_88PM860X
14         bool "Support Marvell 88PM8606/88PM8607"
15         depends on I2C=y && GENERIC_HARDIRQS
16         select REGMAP_I2C
17         select MFD_CORE
18         help
19           This supports for Marvell 88PM8606/88PM8607 Power Management IC.
20           This includes the I2C driver and the core APIs _only_, you have to
21           select individual components like voltage regulators, RTC and
22           battery-charger under the corresponding menus.
23
24 config MFD_88PM800
25         tristate "Support Marvell 88PM800"
26         depends on I2C=y && GENERIC_HARDIRQS
27         select REGMAP_I2C
28         select REGMAP_IRQ
29         select MFD_CORE
30         help
31           This supports for Marvell 88PM800 Power Management IC.
32           This includes the I2C driver and the core APIs _only_, you have to
33           select individual components like voltage regulators, RTC and
34           battery-charger under the corresponding menus.
35
36 config MFD_88PM805
37         tristate "Support Marvell 88PM805"
38         depends on I2C=y && GENERIC_HARDIRQS
39         select REGMAP_I2C
40         select REGMAP_IRQ
41         select MFD_CORE
42         help
43           This supports for Marvell 88PM805 Power Management IC. This includes
44           the I2C driver and the core APIs _only_, you have to select individual
45           components like codec device, headset/Mic device under the
46           corresponding menus.
47
48 config MFD_SM501
49         tristate "Support for Silicon Motion SM501"
50          ---help---
51           This is the core driver for the Silicon Motion SM501 multimedia
52           companion chip. This device is a multifunction device which may
53           provide numerous interfaces including USB host controller, USB gadget,
54           asynchronous serial ports, audio functions, and a dual display video
55           interface. The device may be connected by PCI or local bus with
56           varying functions enabled.
57
58 config MFD_SM501_GPIO
59         bool "Export GPIO via GPIO layer"
60         depends on MFD_SM501 && GPIOLIB
61          ---help---
62          This option uses the gpio library layer to export the 64 GPIO
63          lines on the SM501. The platform data is used to supply the
64          base number for the first GPIO line to register.
65
66 config MFD_RTSX_PCI
67         tristate "Support for Realtek PCI-E card reader"
68         depends on PCI && GENERIC_HARDIRQS
69         select MFD_CORE
70         help
71           This supports for Realtek PCI-Express card reader including rts5209,
72           rts5229, rtl8411, etc. Realtek card reader supports access to many
73           types of memory cards, such as Memory Stick, Memory Stick Pro,
74           Secure Digital and MultiMediaCard.
75
76 config MFD_ASIC3
77         bool "Support for Compaq ASIC3"
78         depends on GENERIC_HARDIRQS && GPIOLIB && ARM
79         select MFD_CORE
80          ---help---
81           This driver supports the ASIC3 multifunction chip found on many
82           PDAs (mainly iPAQ and HTC based ones)
83
84 config MFD_DAVINCI_VOICECODEC
85         tristate
86         select MFD_CORE
87
88 config MFD_DM355EVM_MSP
89         bool "DaVinci DM355 EVM microcontroller"
90         depends on I2C=y && MACH_DAVINCI_DM355_EVM
91         help
92           This driver supports the MSP430 microcontroller used on these
93           boards.  MSP430 firmware manages resets and power sequencing,
94           inputs from buttons and the IR remote, LEDs, an RTC, and more.
95
96 config MFD_TI_SSP
97         tristate "TI Sequencer Serial Port support"
98         depends on ARCH_DAVINCI_TNETV107X && GENERIC_HARDIRQS
99         select MFD_CORE
100         ---help---
101           Say Y here if you want support for the Sequencer Serial Port
102           in a Texas Instruments TNETV107X SoC.
103
104           To compile this driver as a module, choose M here: the
105           module will be called ti-ssp.
106
107 config MFD_TI_AM335X_TSCADC
108         tristate "TI ADC / Touch Screen chip support"
109         select MFD_CORE
110         select REGMAP
111         select REGMAP_MMIO
112         depends on GENERIC_HARDIRQS
113         help
114           If you say yes here you get support for Texas Instruments series
115           of Touch Screen /ADC chips.
116           To compile this driver as a module, choose M here: the
117           module will be called ti_am335x_tscadc.
118
119 config HTC_EGPIO
120         bool "HTC EGPIO support"
121         depends on GENERIC_HARDIRQS && GPIOLIB && ARM
122         help
123             This driver supports the CPLD egpio chip present on
124             several HTC phones.  It provides basic support for input
125             pins, output pins, and irqs.
126
127 config HTC_PASIC3
128         tristate "HTC PASIC3 LED/DS1WM chip support"
129         select MFD_CORE
130         depends on GENERIC_HARDIRQS
131         help
132           This core driver provides register access for the LED/DS1WM
133           chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
134           HTC Magician devices, respectively. Actual functionality is
135           handled by the leds-pasic3 and ds1wm drivers.
136
137 config HTC_I2CPLD
138         bool "HTC I2C PLD chip support"
139         depends on I2C=y && GPIOLIB
140         help
141           If you say yes here you get support for the supposed CPLD
142           found on omap850 HTC devices like the HTC Wizard and HTC Herald.
143           This device provides input and output GPIOs through an I2C
144           interface to one or more sub-chips.
145
146 config UCB1400_CORE
147         tristate "Philips UCB1400 Core driver"
148         depends on AC97_BUS
149         depends on GPIOLIB
150         help
151           This enables support for the Philips UCB1400 core functions.
152           The UCB1400 is an AC97 audio codec.
153
154           To compile this driver as a module, choose M here: the
155           module will be called ucb1400_core.
156
157 config MFD_LM3533
158         tristate "LM3533 Lighting Power chip"
159         depends on I2C
160         select MFD_CORE
161         select REGMAP_I2C
162         depends on GENERIC_HARDIRQS
163         help
164           Say yes here to enable support for National Semiconductor / TI
165           LM3533 Lighting Power chips.
166
167           This driver provides common support for accessing the device;
168           additional drivers must be enabled in order to use the LED,
169           backlight or ambient-light-sensor functionality of the device.
170
171 config TPS6105X
172         tristate "TPS61050/61052 Boost Converters"
173         depends on I2C
174         select REGULATOR
175         select MFD_CORE
176         select REGULATOR_FIXED_VOLTAGE
177         depends on GENERIC_HARDIRQS
178         help
179           This option enables a driver for the TP61050/TPS61052
180           high-power "white LED driver". This boost converter is
181           sometimes used for other things than white LEDs, and
182           also contains a GPIO pin.
183
184 config TPS65010
185         tristate "TPS6501x Power Management chips"
186         depends on I2C && GPIOLIB
187         default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
188         help
189           If you say yes here you get support for the TPS6501x series of
190           Power Management chips.  These include voltage regulators,
191           lithium ion/polymer battery charging, and other features that
192           are often used in portable devices like cell phones and cameras.
193
194           This driver can also be built as a module.  If so, the module
195           will be called tps65010.
196
197 config TPS6507X
198         tristate "TPS6507x Power Management / Touch Screen chips"
199         select MFD_CORE
200         depends on I2C && GENERIC_HARDIRQS
201         help
202           If you say yes here you get support for the TPS6507x series of
203           Power Management / Touch Screen chips.  These include voltage
204           regulators, lithium ion/polymer battery charging, touch screen
205           and other features that are often used in portable devices.
206           This driver can also be built as a module.  If so, the module
207           will be called tps6507x.
208
209 config MFD_TPS65217
210         tristate "TPS65217 Power Management / White LED chips"
211         depends on I2C && GENERIC_HARDIRQS
212         select MFD_CORE
213         select REGMAP_I2C
214         help
215           If you say yes here you get support for the TPS65217 series of
216           Power Management / White LED chips.
217           These include voltage regulators, lithium ion/polymer battery
218           charger, wled and other features that are often used in portable
219           devices.
220
221           This driver can also be built as a module.  If so, the module
222           will be called tps65217.
223
224 config MFD_TPS6586X
225         bool "TPS6586x Power Management chips"
226         depends on I2C=y && GENERIC_HARDIRQS
227         select MFD_CORE
228         select REGMAP_I2C
229         help
230           If you say yes here you get support for the TPS6586X series of
231           Power Management chips.
232           This driver provides common support for accessing the device,
233           additional drivers must be enabled in order to use the
234           functionality of the device.
235
236           This driver can also be built as a module.  If so, the module
237           will be called tps6586x.
238
239 config MFD_TPS65910
240         bool "TPS65910 Power Management chip"
241         depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS
242         select MFD_CORE
243         select REGMAP_I2C
244         select REGMAP_IRQ
245         select IRQ_DOMAIN
246         help
247           if you say yes here you get support for the TPS65910 series of
248           Power Management chips.
249
250 config MFD_TPS65912
251         bool
252         depends on GPIOLIB
253
254 config MFD_TPS65912_I2C
255         bool "TPS65912 Power Management chip with I2C"
256         select MFD_CORE
257         select MFD_TPS65912
258         depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS
259         help
260           If you say yes here you get support for the TPS65912 series of
261           PM chips with I2C interface.
262
263 config MFD_TPS65912_SPI
264         bool "TPS65912 Power Management chip with SPI"
265         select MFD_CORE
266         select MFD_TPS65912
267         depends on SPI_MASTER && GPIOLIB && GENERIC_HARDIRQS
268         help
269           If you say yes here you get support for the TPS65912 series of
270           PM chips with SPI interface.
271
272 config MFD_TPS80031
273         bool "TI TPS80031/TPS80032 Power Management chips"
274         depends on I2C=y && GENERIC_HARDIRQS
275         select MFD_CORE
276         select REGMAP_I2C
277         select REGMAP_IRQ
278         help
279           If you say yes here you get support for the Texas Instruments
280           TPS80031/ TPS80032 Fully Integrated Power Management with Power
281           Path and Battery Charger. The device provides five configurable
282           step-down converters, 11 general purpose LDOs, USB OTG Module,
283           ADC, RTC, 2 PWM, System Voltage Regulator/Battery Charger with
284           Power Path from USB, 32K clock generator.
285
286 config MENELAUS
287         bool "Texas Instruments TWL92330/Menelaus PM chip"
288         depends on I2C=y && ARCH_OMAP2
289         help
290           If you say yes here you get support for the Texas Instruments
291           TWL92330/Menelaus Power Management chip. This include voltage
292           regulators, Dual slot memory card transceivers, real-time clock
293           and other features that are often used in portable devices like
294           cell phones and PDAs.
295
296 config TWL4030_CORE
297         bool "Texas Instruments TWL4030/TWL5030/TWL6030/TPS659x0 Support"
298         depends on I2C=y && GENERIC_HARDIRQS
299         select IRQ_DOMAIN
300         select REGMAP_I2C
301         help
302           Say yes here if you have TWL4030 / TWL6030 family chip on your board.
303           This core driver provides register access and IRQ handling
304           facilities, and registers devices for the various functions
305           so that function-specific drivers can bind to them.
306
307           These multi-function chips are found on many OMAP2 and OMAP3
308           boards, providing power management, RTC, GPIO, keypad, a
309           high speed USB OTG transceiver, an audio codec (on most
310           versions) and many other features.
311
312 config TWL4030_MADC
313         tristate "Texas Instruments TWL4030 MADC"
314         depends on TWL4030_CORE
315         help
316         This driver provides support for triton TWL4030-MADC. The
317         driver supports both RT and SW conversion methods.
318
319         This driver can be built as a module. If so it will be
320         named twl4030-madc
321
322 config TWL4030_POWER
323         bool "Support power resources on TWL4030 family chips"
324         depends on TWL4030_CORE && ARM
325         help
326           Say yes here if you want to use the power resources on the
327           TWL4030 family chips.  Most of these resources are regulators,
328           which have a separate driver; some are control signals, such
329           as clock request handshaking.
330
331           This driver uses board-specific data to initialize the resources
332           and load scripts controlling which resources are switched off/on
333           or reset when a sleep, wakeup or warm reset event occurs.
334
335 config MFD_TWL4030_AUDIO
336         bool
337         depends on TWL4030_CORE && GENERIC_HARDIRQS
338         select MFD_CORE
339         default n
340
341 config TWL6040_CORE
342         bool "Support for TWL6040 audio codec"
343         depends on I2C=y && GENERIC_HARDIRQS
344         select MFD_CORE
345         select REGMAP_I2C
346         select REGMAP_IRQ
347         default n
348         help
349           Say yes here if you want support for Texas Instruments TWL6040 audio
350           codec.
351           This driver provides common support for accessing the device,
352           additional drivers must be enabled in order to use the
353           functionality of the device (audio, vibra).
354
355 config MFD_STMPE
356         bool "Support STMicroelectronics STMPE"
357         depends on (I2C=y || SPI_MASTER=y) && GENERIC_HARDIRQS
358         select MFD_CORE
359         help
360           Support for the STMPE family of I/O Expanders from
361           STMicroelectronics.
362
363           Currently supported devices are:
364
365                 STMPE811: GPIO, Touchscreen
366                 STMPE1601: GPIO, Keypad
367                 STMPE2401: GPIO, Keypad
368                 STMPE2403: GPIO, Keypad
369
370           This driver provides common support for accessing the device,
371           additional drivers must be enabled in order to use the functionality
372           of the device.  Currently available sub drivers are:
373
374                 GPIO: stmpe-gpio
375                 Keypad: stmpe-keypad
376                 Touchscreen: stmpe-ts
377
378 menu "STMPE Interface Drivers"
379 depends on MFD_STMPE
380
381 config STMPE_I2C
382         bool "STMPE I2C Inteface"
383         depends on I2C=y
384         default y
385         help
386           This is used to enable I2C interface of STMPE
387
388 config STMPE_SPI
389         bool "STMPE SPI Inteface"
390         depends on SPI_MASTER
391         help
392           This is used to enable SPI interface of STMPE
393 endmenu
394
395 config MFD_TC3589X
396         bool "Support Toshiba TC35892 and variants"
397         depends on I2C=y && GENERIC_HARDIRQS
398         select MFD_CORE
399         help
400           Support for the Toshiba TC35892 and variants I/O Expander.
401
402           This driver provides common support for accessing the device,
403           additional drivers must be enabled in order to use the
404           functionality of the device.
405
406 config MFD_TMIO
407         bool
408         default n
409
410 config MFD_T7L66XB
411         bool "Support Toshiba T7L66XB"
412         depends on ARM && HAVE_CLK && GENERIC_HARDIRQS
413         select MFD_CORE
414         select MFD_TMIO
415         help
416           Support for Toshiba Mobile IO Controller T7L66XB
417
418 config MFD_SMSC
419        bool "Support for the SMSC ECE1099 series chips"
420        depends on I2C=y && GENERIC_HARDIRQS
421        select MFD_CORE
422        select REGMAP_I2C
423        help
424         If you say yes here you get support for the
425         ece1099 chips from SMSC.
426
427         To compile this driver as a module, choose M here: the
428         module will be called smsc.
429
430 config MFD_TC6387XB
431         bool "Support Toshiba TC6387XB"
432         depends on ARM && HAVE_CLK
433         select MFD_CORE
434         select MFD_TMIO
435         help
436           Support for Toshiba Mobile IO Controller TC6387XB
437
438 config MFD_TC6393XB
439         bool "Support Toshiba TC6393XB"
440         depends on ARM && HAVE_CLK
441         select GPIOLIB
442         select MFD_CORE
443         select MFD_TMIO
444         help
445           Support for Toshiba Mobile IO Controller TC6393XB
446
447 config PMIC_DA903X
448         bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
449         depends on I2C=y
450         help
451           Say yes here to support for Dialog Semiconductor DA9030 (a.k.a
452           ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
453           usually found on PXA processors-based platforms. This includes
454           the I2C driver and the core APIs _only_, you have to select
455           individual components like LCD backlight, voltage regulators,
456           LEDs and battery-charger under the corresponding menus.
457
458 config PMIC_DA9052
459         bool
460         select MFD_CORE
461
462 config MFD_DA9052_SPI
463         bool "Support Dialog Semiconductor DA9052/53 PMIC variants with SPI"
464         select REGMAP_SPI
465         select REGMAP_IRQ
466         select PMIC_DA9052
467         depends on SPI_MASTER=y && GENERIC_HARDIRQS
468         help
469           Support for the Dialog Semiconductor DA9052 PMIC
470           when controlled using SPI. This driver provides common support
471           for accessing the device, additional drivers must be enabled in
472           order to use the functionality of the device.
473
474 config MFD_DA9052_I2C
475         bool "Support Dialog Semiconductor DA9052/53 PMIC variants with I2C"
476         select REGMAP_I2C
477         select REGMAP_IRQ
478         select PMIC_DA9052
479         depends on I2C=y && GENERIC_HARDIRQS
480         help
481           Support for the Dialog Semiconductor DA9052 PMIC
482           when controlled using I2C. This driver provides common support
483           for accessing the device, additional drivers must be enabled in
484           order to use the functionality of the device.
485
486 config MFD_DA9055
487         bool "Dialog Semiconductor DA9055 PMIC Support"
488         select REGMAP_I2C
489         select REGMAP_IRQ
490         select PMIC_DA9055
491         select MFD_CORE
492         depends on I2C=y && GENERIC_HARDIRQS
493         help
494           Say yes here for support of Dialog Semiconductor DA9055. This is
495           a Power Management IC. This driver provides common support for
496           accessing the device as well as the I2C interface to the chip itself.
497           Additional drivers must be enabled in order to use the functionality
498           of the device.
499
500           This driver can be built as a module. If built as a module it will be
501           called "da9055"
502
503 config PMIC_ADP5520
504         bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
505         depends on I2C=y
506         help
507           Say yes here to add support for Analog Devices AD5520 and ADP5501,
508           Multifunction Power Management IC. This includes
509           the I2C driver and the core APIs _only_, you have to select
510           individual components like LCD backlight, LEDs, GPIOs and Kepad
511           under the corresponding menus.
512
513 config MFD_LP8788
514         bool "Texas Instruments LP8788 Power Management Unit Driver"
515         depends on I2C=y && GENERIC_HARDIRQS
516         select MFD_CORE
517         select REGMAP_I2C
518         select IRQ_DOMAIN
519         help
520           TI LP8788 PMU supports regulators, battery charger, RTC,
521           ADC, backlight driver and current sinks.
522
523 config MFD_MAX77686
524         bool "Maxim Semiconductor MAX77686 PMIC Support"
525         depends on I2C=y && GENERIC_HARDIRQS
526         select MFD_CORE
527         select REGMAP_I2C
528         select IRQ_DOMAIN
529         help
530           Say yes here to support for Maxim Semiconductor MAX77686.
531           This is a Power Management IC with RTC on chip.
532           This driver provides common support for accessing the device;
533           additional drivers must be enabled in order to use the functionality
534           of the device.
535
536 config MFD_MAX77693
537         bool "Maxim Semiconductor MAX77693 PMIC Support"
538         depends on I2C=y && GENERIC_HARDIRQS
539         select MFD_CORE
540         select REGMAP_I2C
541         help
542           Say yes here to support for Maxim Semiconductor MAX77693.
543           This is a companion Power Management IC with Flash, Haptic, Charger,
544           and MUIC(Micro USB Interface Controller) controls on chip.
545           This driver provides common support for accessing the device;
546           additional drivers must be enabled in order to use the functionality
547           of the device.
548
549 config MFD_MAX8907
550         tristate "Maxim Semiconductor MAX8907 PMIC Support"
551         select MFD_CORE
552         depends on I2C=y && GENERIC_HARDIRQS
553         select REGMAP_I2C
554         select REGMAP_IRQ
555         help
556           Say yes here to support for Maxim Semiconductor MAX8907. This is
557           a Power Management IC. This driver provides common support for
558           accessing the device; additional drivers must be enabled in order
559           to use the functionality of the device.
560
561 config MFD_MAX8925
562         bool "Maxim Semiconductor MAX8925 PMIC Support"
563         depends on I2C=y && GENERIC_HARDIRQS
564         select MFD_CORE
565         help
566           Say yes here to support for Maxim Semiconductor MAX8925. This is
567           a Power Management IC. This driver provides common support for
568           accessing the device, additional drivers must be enabled in order
569           to use the functionality of the device.
570
571 config MFD_MAX8997
572         bool "Maxim Semiconductor MAX8997/8966 PMIC Support"
573         depends on I2C=y && GENERIC_HARDIRQS
574         select MFD_CORE
575         select IRQ_DOMAIN
576         help
577           Say yes here to support for Maxim Semiconductor MAX8997/8966.
578           This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic,
579           MUIC 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_MAX8998
585         bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support"
586         depends on I2C=y && GENERIC_HARDIRQS
587         select MFD_CORE
588         help
589           Say yes here to support for Maxim Semiconductor MAX8998 and
590           National Semiconductor LP3974. This is a Power Management IC.
591           This driver provides common support for accessing the device,
592           additional drivers must be enabled in order to use the functionality
593           of the device.
594
595 config MFD_SEC_CORE
596         bool "SAMSUNG Electronics PMIC Series Support"
597         depends on I2C=y && GENERIC_HARDIRQS
598         select MFD_CORE
599         select REGMAP_I2C
600         select REGMAP_IRQ
601         help
602          Support for the Samsung Electronics MFD series.
603          This driver provides common support for accessing the device,
604          additional drivers must be enabled in order to use the functionality
605          of the device
606
607 config MFD_ARIZONA
608         select REGMAP
609         select REGMAP_IRQ
610         select MFD_CORE
611         bool
612
613 config MFD_ARIZONA_I2C
614         tristate "Support Wolfson Microelectronics Arizona platform with I2C"
615         select MFD_ARIZONA
616         select MFD_CORE
617         select REGMAP_I2C
618         depends on I2C && GENERIC_HARDIRQS
619         help
620           Support for the Wolfson Microelectronics Arizona platform audio SoC
621           core functionality controlled via I2C.
622
623 config MFD_ARIZONA_SPI
624         tristate "Support Wolfson Microelectronics Arizona platform with SPI"
625         select MFD_ARIZONA
626         select MFD_CORE
627         select REGMAP_SPI
628         depends on SPI_MASTER && GENERIC_HARDIRQS
629         help
630           Support for the Wolfson Microelectronics Arizona platform audio SoC
631           core functionality controlled via I2C.
632
633 config MFD_WM5102
634         bool "Support Wolfson Microelectronics WM5102"
635         depends on MFD_ARIZONA
636         help
637           Support for Wolfson Microelectronics WM5102 low power audio SoC
638
639 config MFD_WM5110
640         bool "Support Wolfson Microelectronics WM5110"
641         depends on MFD_ARIZONA
642         help
643           Support for Wolfson Microelectronics WM5110 low power audio SoC
644
645 config MFD_WM8400
646         bool "Support Wolfson Microelectronics WM8400"
647         select MFD_CORE
648         depends on I2C=y && GENERIC_HARDIRQS
649         select REGMAP_I2C
650         help
651           Support for the Wolfson Microelecronics WM8400 PMIC and audio
652           CODEC.  This driver provides common support for accessing
653           the device, additional drivers must be enabled in order to use
654           the functionality of the device.
655
656 config MFD_WM831X
657         bool
658         depends on GENERIC_HARDIRQS
659
660 config MFD_WM831X_I2C
661         bool "Support Wolfson Microelectronics WM831x/2x PMICs with I2C"
662         select MFD_CORE
663         select MFD_WM831X
664         select REGMAP_I2C
665         select IRQ_DOMAIN
666         depends on I2C=y && GENERIC_HARDIRQS
667         help
668           Support for the Wolfson Microelecronics WM831x and WM832x PMICs
669           when controlled using I2C.  This driver provides common support
670           for accessing the device, additional drivers must be enabled in
671           order to use the functionality of the device.
672
673 config MFD_WM831X_SPI
674         bool "Support Wolfson Microelectronics WM831x/2x PMICs with SPI"
675         select MFD_CORE
676         select MFD_WM831X
677         select REGMAP_SPI
678         select IRQ_DOMAIN
679         depends on SPI_MASTER && GENERIC_HARDIRQS
680         help
681           Support for the Wolfson Microelecronics WM831x and WM832x PMICs
682           when controlled using SPI.  This driver provides common support
683           for accessing the device, additional drivers must be enabled in
684           order to use the functionality of the device.
685
686 config MFD_WM8350
687         bool
688         depends on GENERIC_HARDIRQS
689
690 config MFD_WM8350_CONFIG_MODE_0
691         bool
692         depends on MFD_WM8350
693
694 config MFD_WM8350_CONFIG_MODE_1
695         bool
696         depends on MFD_WM8350
697
698 config MFD_WM8350_CONFIG_MODE_2
699         bool
700         depends on MFD_WM8350
701
702 config MFD_WM8350_CONFIG_MODE_3
703         bool
704         depends on MFD_WM8350
705
706 config MFD_WM8351_CONFIG_MODE_0
707         bool
708         depends on MFD_WM8350
709
710 config MFD_WM8351_CONFIG_MODE_1
711         bool
712         depends on MFD_WM8350
713
714 config MFD_WM8351_CONFIG_MODE_2
715         bool
716         depends on MFD_WM8350
717
718 config MFD_WM8351_CONFIG_MODE_3
719         bool
720         depends on MFD_WM8350
721
722 config MFD_WM8352_CONFIG_MODE_0
723         bool
724         depends on MFD_WM8350
725
726 config MFD_WM8352_CONFIG_MODE_1
727         bool
728         depends on MFD_WM8350
729
730 config MFD_WM8352_CONFIG_MODE_2
731         bool
732         depends on MFD_WM8350
733
734 config MFD_WM8352_CONFIG_MODE_3
735         bool
736         depends on MFD_WM8350
737
738 config MFD_WM8350_I2C
739         bool "Support Wolfson Microelectronics WM8350 with I2C"
740         select MFD_WM8350
741         depends on I2C=y && GENERIC_HARDIRQS
742         help
743           The WM8350 is an integrated audio and power management
744           subsystem with watchdog and RTC functionality for embedded
745           systems.  This option enables core support for the WM8350 with
746           I2C as the control interface.  Additional options must be
747           selected to enable support for the functionality of the chip.
748
749 config MFD_WM8994
750         bool "Support Wolfson Microelectronics WM8994"
751         select MFD_CORE
752         select REGMAP_I2C
753         select REGMAP_IRQ
754         depends on I2C=y && GENERIC_HARDIRQS
755         help
756           The WM8994 is a highly integrated hi-fi CODEC designed for
757           smartphone applicatiosn.  As well as audio functionality it
758           has on board GPIO and regulator functionality which is
759           supported via the relevant subsystems.  This driver provides
760           core support for the WM8994, in order to use the actual
761           functionaltiy of the device other drivers must be enabled.
762
763 config MFD_PCF50633
764         tristate "Support for NXP PCF50633"
765         depends on I2C
766         select REGMAP_I2C
767         help
768           Say yes here if you have NXP PCF50633 chip on your board.
769           This core driver provides register access and IRQ handling
770           facilities, and registers devices for the various functions
771           so that function-specific drivers can bind to them.
772
773 config PCF50633_ADC
774         tristate "Support for NXP PCF50633 ADC"
775         depends on MFD_PCF50633
776         help
777          Say yes here if you want to include support for ADC in the
778          NXP PCF50633 chip.
779
780 config PCF50633_GPIO
781         tristate "Support for NXP PCF50633 GPIO"
782         depends on MFD_PCF50633
783         help
784          Say yes here if you want to include support GPIO for pins on
785          the PCF50633 chip.
786
787 config MFD_MC13783
788         tristate
789
790 config MFD_MC13XXX
791         tristate
792         depends on (SPI_MASTER || I2C) && GENERIC_HARDIRQS
793         select MFD_CORE
794         select MFD_MC13783
795         help
796           Enable support for the Freescale MC13783 and MC13892 PMICs.
797           This driver provides common support for accessing the device,
798           additional drivers must be enabled in order to use the
799           functionality of the device.
800
801 config MFD_MC13XXX_SPI
802         tristate "Freescale MC13783 and MC13892 SPI interface"
803         depends on SPI_MASTER && GENERIC_HARDIRQS
804         select REGMAP_SPI
805         select MFD_MC13XXX
806         help
807           Select this if your MC13xxx is connected via an SPI bus.
808
809 config MFD_MC13XXX_I2C
810         tristate "Freescale MC13892 I2C interface"
811         depends on I2C && GENERIC_HARDIRQS
812         select REGMAP_I2C
813         select MFD_MC13XXX
814         help
815           Select this if your MC13xxx is connected via an I2C bus.
816
817 config ABX500_CORE
818         bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions"
819         default y if ARCH_U300 || ARCH_U8500
820         help
821           Say yes here if you have the ABX500 Mixed Signal IC family
822           chips. This core driver expose register access functions.
823           Functionality specific drivers using these functions can
824           remain unchanged when IC changes. Binding of the functions to
825           actual register access is done by the IC core driver.
826
827 config AB3100_CORE
828         bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
829         depends on I2C=y && ABX500_CORE && GENERIC_HARDIRQS
830         select MFD_CORE
831         default y if ARCH_U300
832         help
833           Select this to enable the AB3100 Mixed Signal IC core
834           functionality. This connects to a AB3100 on the I2C bus
835           and expose a number of symbols needed for dependent devices
836           to read and write registers and subscribe to events from
837           this multi-functional IC. This is needed to use other features
838           of the AB3100 such as battery-backed RTC, charging control,
839           LEDs, vibrator, system power and temperature, power management
840           and ALSA sound.
841
842 config AB3100_OTP
843         tristate "ST-Ericsson AB3100 OTP functions"
844         depends on AB3100_CORE
845         default y if AB3100_CORE
846         help
847           Select this to enable the AB3100 Mixed Signal IC OTP (one-time
848           programmable memory) support. This exposes a sysfs file to read
849           out OTP values.
850
851 config EZX_PCAP
852         bool "PCAP Support"
853         depends on GENERIC_HARDIRQS && SPI_MASTER
854         help
855           This enables the PCAP ASIC present on EZX Phones. This is
856           needed for MMC, TouchScreen, Sound, USB, etc..
857
858 config AB8500_CORE
859         bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
860         depends on GENERIC_HARDIRQS && ABX500_CORE && MFD_DB8500_PRCMU
861         select MFD_CORE
862         select IRQ_DOMAIN
863         help
864           Select this option to enable access to AB8500 power management
865           chip. This connects to U8500 either on the SSP/SPI bus (deprecated
866           since hardware version v1.0) or the I2C bus via PRCMU. It also adds
867           the irq_chip parts for handling the Mixed Signal chip events.
868           This chip embeds various other multimedia funtionalities as well.
869
870 config AB8500_DEBUG
871        bool "Enable debug info via debugfs"
872        depends on AB8500_CORE && DEBUG_FS
873        default y if DEBUG_FS
874        help
875          Select this option if you want debug information using the debug
876          filesystem, debugfs.
877
878 config AB8500_GPADC
879         bool "AB8500 GPADC driver"
880         depends on AB8500_CORE && REGULATOR_AB8500
881         default y
882         help
883           AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage
884
885 config MFD_DB8500_PRCMU
886         bool "ST-Ericsson DB8500 Power Reset Control Management Unit"
887         depends on UX500_SOC_DB8500
888         select MFD_CORE
889         help
890           Select this option to enable support for the DB8500 Power Reset
891           and Control Management Unit. This is basically an autonomous
892           system controller running an XP70 microprocessor, which is accessed
893           through a register map.
894
895 config MFD_CS5535
896         tristate "Support for CS5535 and CS5536 southbridge core functions"
897         select MFD_CORE
898         depends on PCI && X86
899         ---help---
900           This is the core driver for CS5535/CS5536 MFD functions.  This is
901           necessary for using the board's GPIO and MFGPT functionality.
902
903 config MFD_TIMBERDALE
904         tristate "Support for the Timberdale FPGA"
905         select MFD_CORE
906         depends on PCI && GPIOLIB
907         ---help---
908         This is the core driver for the timberdale FPGA. This device is a
909         multifunction device which exposes numerous platform devices.
910
911         The timberdale FPGA can be found on the Intel Atom development board
912         for in-vehicle infontainment, called Russellville.
913
914 config LPC_SCH
915         tristate "Intel SCH LPC"
916         depends on PCI && GENERIC_HARDIRQS
917         select MFD_CORE
918         help
919           LPC bridge function of the Intel SCH provides support for
920           System Management Bus and General Purpose I/O.
921
922 config LPC_ICH
923         tristate "Intel ICH LPC"
924         depends on PCI && GENERIC_HARDIRQS
925         select MFD_CORE
926         help
927           The LPC bridge function of the Intel ICH provides support for
928           many functional units. This driver provides needed support for
929           other drivers to control these functions, currently GPIO and
930           watchdog.
931
932 config MFD_RDC321X
933         tristate "Support for RDC-R321x southbridge"
934         select MFD_CORE
935         depends on PCI && GENERIC_HARDIRQS
936         help
937           Say yes here if you want to have support for the RDC R-321x SoC
938           southbridge which provides access to GPIOs and Watchdog using the
939           southbridge PCI device configuration space.
940
941 config MFD_JANZ_CMODIO
942         tristate "Support for Janz CMOD-IO PCI MODULbus Carrier Board"
943         select MFD_CORE
944         depends on PCI && GENERIC_HARDIRQS
945         help
946           This is the core driver for the Janz CMOD-IO PCI MODULbus
947           carrier board. This device is a PCI to MODULbus bridge which may
948           host many different types of MODULbus daughterboards, including
949           CAN and GPIO controllers.
950
951 config MFD_JZ4740_ADC
952         bool "Support for the JZ4740 SoC ADC core"
953         select MFD_CORE
954         select GENERIC_IRQ_CHIP
955         depends on MACH_JZ4740
956         help
957           Say yes here if you want support for the ADC unit in the JZ4740 SoC.
958           This driver is necessary for jz4740-battery and jz4740-hwmon driver.
959
960 config MFD_VX855
961         tristate "Support for VIA VX855/VX875 integrated south bridge"
962         depends on PCI && GENERIC_HARDIRQS
963         select MFD_CORE
964         help
965           Say yes here to enable support for various functions of the
966           VIA VX855/VX875 south bridge. You will need to enable the vx855_spi
967           and/or vx855_gpio drivers for this to do anything useful.
968
969 config MFD_WL1273_CORE
970         tristate "Support for TI WL1273 FM radio."
971         depends on I2C && GENERIC_HARDIRQS
972         select MFD_CORE
973         default n
974         help
975           This is the core driver for the TI WL1273 FM radio. This MFD
976           driver connects the radio-wl1273 V4L2 module and the wl1273
977           audio codec.
978
979 config MFD_OMAP_USB_HOST
980         bool "Support OMAP USBHS core and TLL driver"
981         depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3
982         default y
983         help
984           This is the core driver for the OAMP EHCI and OHCI drivers.
985           This MFD driver does the required setup functionalities for
986           OMAP USB Host drivers.
987
988 config MFD_PM8XXX
989         tristate
990
991 config MFD_PM8921_CORE
992         tristate "Qualcomm PM8921 PMIC chip"
993         depends on MSM_SSBI
994         select MFD_CORE
995         select MFD_PM8XXX
996         help
997           If you say yes to this option, support will be included for the
998           built-in PM8921 PMIC chip.
999
1000           This is required if your board has a PM8921 and uses its features,
1001           such as: MPPs, GPIOs, regulators, interrupts, and PWM.
1002
1003           Say M here if you want to include support for PM8921 chip as a module.
1004           This will build a module called "pm8921-core".
1005
1006 config MFD_PM8XXX_IRQ
1007         bool "Support for Qualcomm PM8xxx IRQ features"
1008         depends on MFD_PM8XXX
1009         default y if MFD_PM8XXX
1010         help
1011           This is the IRQ driver for Qualcomm PM 8xxx PMIC chips.
1012
1013           This is required to use certain other PM 8xxx features, such as GPIO
1014           and MPP.
1015
1016 config TPS65911_COMPARATOR
1017         tristate
1018
1019 config MFD_TPS65090
1020         bool "TPS65090 Power Management chips"
1021         depends on I2C=y && GENERIC_HARDIRQS
1022         select MFD_CORE
1023         select REGMAP_I2C
1024         select REGMAP_IRQ
1025         help
1026           If you say yes here you get support for the TPS65090 series of
1027           Power Management chips.
1028           This driver provides common support for accessing the device,
1029           additional drivers must be enabled in order to use the
1030           functionality of the device.
1031
1032 config MFD_AAT2870_CORE
1033         bool "Support for the AnalogicTech AAT2870"
1034         select MFD_CORE
1035         depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS
1036         help
1037           If you say yes here you get support for the AAT2870.
1038           This driver provides common support for accessing the device,
1039           additional drivers must be enabled in order to use the
1040           functionality of the device.
1041
1042 config MFD_INTEL_MSIC
1043         bool "Support for Intel MSIC"
1044         depends on INTEL_SCU_IPC
1045         select MFD_CORE
1046         help
1047           Select this option to enable access to Intel MSIC (Avatele
1048           Passage) chip. This chip embeds audio, battery, GPIO, etc.
1049           devices used in Intel Medfield platforms.
1050
1051 config MFD_RC5T583
1052         bool "Ricoh RC5T583 Power Management system device"
1053         depends on I2C=y && GENERIC_HARDIRQS
1054         select MFD_CORE
1055         select REGMAP_I2C
1056         help
1057           Select this option to get support for the RICOH583 Power
1058           Management system device.
1059           This driver provides common support for accessing the device
1060           through i2c interface. The device supports multiple sub-devices
1061           like GPIO, interrupts, RTC, LDO and DCDC regulators, onkey.
1062           Additional drivers must be enabled in order to use the
1063           different functionality of the device.
1064
1065 config MFD_STA2X11
1066         bool "STA2X11 multi function device support"
1067         depends on STA2X11 && GENERIC_HARDIRQS
1068         select MFD_CORE
1069         select REGMAP_MMIO
1070
1071 config MFD_SYSCON
1072         bool "System Controller Register R/W Based on Regmap"
1073         depends on OF
1074         select REGMAP_MMIO
1075         help
1076           Select this option to enable accessing system control registers
1077           via regmap.
1078
1079 config MFD_PALMAS
1080         bool "Support for the TI Palmas series chips"
1081         select MFD_CORE
1082         select REGMAP_I2C
1083         select REGMAP_IRQ
1084         depends on I2C=y && GENERIC_HARDIRQS
1085         help
1086           If you say yes here you get support for the Palmas
1087           series of PMIC chips from Texas Instruments.
1088
1089 config MFD_VIPERBOARD
1090         tristate "Support for Nano River Technologies Viperboard"
1091         select MFD_CORE
1092         depends on USB && GENERIC_HARDIRQS
1093         default n
1094         help
1095           Say yes here if you want support for Nano River Technologies
1096           Viperboard.
1097           There are mfd cell drivers available for i2c master, adc and
1098           both gpios found on the board. The spi part does not yet
1099           have a driver.
1100           You need to select the mfd cell drivers separately.
1101           The drivers do not support all features the board exposes.
1102
1103 config MFD_RETU
1104         tristate "Support for Retu multi-function device"
1105         select MFD_CORE
1106         depends on I2C && GENERIC_HARDIRQS
1107         select REGMAP_IRQ
1108         help
1109           Retu is a multi-function device found on Nokia Internet Tablets
1110           (770, N800 and N810).
1111
1112 config MFD_AS3711
1113         bool "Support for AS3711"
1114         select MFD_CORE
1115         select REGMAP_I2C
1116         select REGMAP_IRQ
1117         depends on I2C=y && GENERIC_HARDIRQS
1118         help
1119           Support for the AS3711 PMIC from AMS
1120
1121 endmenu
1122 endif
1123
1124 menu "Multimedia Capabilities Port drivers"
1125         depends on ARCH_SA1100
1126
1127 config MCP
1128         tristate
1129
1130 # Interface drivers
1131 config MCP_SA11X0
1132         tristate "Support SA11x0 MCP interface"
1133         depends on ARCH_SA1100
1134         select MCP
1135
1136 # Chip drivers
1137 config MCP_UCB1200
1138         bool "Support for UCB1200 / UCB1300"
1139         depends on MCP_SA11X0
1140         select MCP
1141
1142 config MCP_UCB1200_TS
1143         tristate "Touchscreen interface support"
1144         depends on MCP_UCB1200 && INPUT
1145
1146 endmenu
1147
1148 config VEXPRESS_CONFIG
1149         bool
1150         help
1151           Platform configuration infrastructure for the ARM Ltd.
1152           Versatile Express.