Merge branch 'kvm-arm/vgic-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git...
[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 POWER_SUPPLY
862         select MFD_CORE
863         select IRQ_DOMAIN
864         help
865           Select this option to enable access to AB8500 power management
866           chip. This connects to U8500 either on the SSP/SPI bus (deprecated
867           since hardware version v1.0) or the I2C bus via PRCMU. It also adds
868           the irq_chip parts for handling the Mixed Signal chip events.
869           This chip embeds various other multimedia funtionalities as well.
870
871 config AB8500_DEBUG
872        bool "Enable debug info via debugfs"
873        depends on AB8500_CORE && DEBUG_FS
874        default y if DEBUG_FS
875        help
876          Select this option if you want debug information using the debug
877          filesystem, debugfs.
878
879 config AB8500_GPADC
880         bool "AB8500 GPADC driver"
881         depends on AB8500_CORE && REGULATOR_AB8500
882         default y
883         help
884           AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage
885
886 config MFD_DB8500_PRCMU
887         bool "ST-Ericsson DB8500 Power Reset Control Management Unit"
888         depends on UX500_SOC_DB8500
889         select MFD_CORE
890         help
891           Select this option to enable support for the DB8500 Power Reset
892           and Control Management Unit. This is basically an autonomous
893           system controller running an XP70 microprocessor, which is accessed
894           through a register map.
895
896 config MFD_CS5535
897         tristate "Support for CS5535 and CS5536 southbridge core functions"
898         select MFD_CORE
899         depends on PCI && X86
900         ---help---
901           This is the core driver for CS5535/CS5536 MFD functions.  This is
902           necessary for using the board's GPIO and MFGPT functionality.
903
904 config MFD_TIMBERDALE
905         tristate "Support for the Timberdale FPGA"
906         select MFD_CORE
907         depends on PCI && GPIOLIB
908         ---help---
909         This is the core driver for the timberdale FPGA. This device is a
910         multifunction device which exposes numerous platform devices.
911
912         The timberdale FPGA can be found on the Intel Atom development board
913         for in-vehicle infontainment, called Russellville.
914
915 config LPC_SCH
916         tristate "Intel SCH LPC"
917         depends on PCI && GENERIC_HARDIRQS
918         select MFD_CORE
919         help
920           LPC bridge function of the Intel SCH provides support for
921           System Management Bus and General Purpose I/O.
922
923 config LPC_ICH
924         tristate "Intel ICH LPC"
925         depends on PCI && GENERIC_HARDIRQS
926         select MFD_CORE
927         help
928           The LPC bridge function of the Intel ICH provides support for
929           many functional units. This driver provides needed support for
930           other drivers to control these functions, currently GPIO and
931           watchdog.
932
933 config MFD_RDC321X
934         tristate "Support for RDC-R321x southbridge"
935         select MFD_CORE
936         depends on PCI && GENERIC_HARDIRQS
937         help
938           Say yes here if you want to have support for the RDC R-321x SoC
939           southbridge which provides access to GPIOs and Watchdog using the
940           southbridge PCI device configuration space.
941
942 config MFD_JANZ_CMODIO
943         tristate "Support for Janz CMOD-IO PCI MODULbus Carrier Board"
944         select MFD_CORE
945         depends on PCI && GENERIC_HARDIRQS
946         help
947           This is the core driver for the Janz CMOD-IO PCI MODULbus
948           carrier board. This device is a PCI to MODULbus bridge which may
949           host many different types of MODULbus daughterboards, including
950           CAN and GPIO controllers.
951
952 config MFD_JZ4740_ADC
953         bool "Support for the JZ4740 SoC ADC core"
954         select MFD_CORE
955         select GENERIC_IRQ_CHIP
956         depends on MACH_JZ4740
957         help
958           Say yes here if you want support for the ADC unit in the JZ4740 SoC.
959           This driver is necessary for jz4740-battery and jz4740-hwmon driver.
960
961 config MFD_VX855
962         tristate "Support for VIA VX855/VX875 integrated south bridge"
963         depends on PCI && GENERIC_HARDIRQS
964         select MFD_CORE
965         help
966           Say yes here to enable support for various functions of the
967           VIA VX855/VX875 south bridge. You will need to enable the vx855_spi
968           and/or vx855_gpio drivers for this to do anything useful.
969
970 config MFD_WL1273_CORE
971         tristate "Support for TI WL1273 FM radio."
972         depends on I2C && GENERIC_HARDIRQS
973         select MFD_CORE
974         default n
975         help
976           This is the core driver for the TI WL1273 FM radio. This MFD
977           driver connects the radio-wl1273 V4L2 module and the wl1273
978           audio codec.
979
980 config MFD_OMAP_USB_HOST
981         bool "Support OMAP USBHS core and TLL driver"
982         depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3
983         default y
984         help
985           This is the core driver for the OAMP EHCI and OHCI drivers.
986           This MFD driver does the required setup functionalities for
987           OMAP USB Host drivers.
988
989 config MFD_PM8XXX
990         tristate
991
992 config MFD_PM8921_CORE
993         tristate "Qualcomm PM8921 PMIC chip"
994         depends on MSM_SSBI
995         select MFD_CORE
996         select MFD_PM8XXX
997         help
998           If you say yes to this option, support will be included for the
999           built-in PM8921 PMIC chip.
1000
1001           This is required if your board has a PM8921 and uses its features,
1002           such as: MPPs, GPIOs, regulators, interrupts, and PWM.
1003
1004           Say M here if you want to include support for PM8921 chip as a module.
1005           This will build a module called "pm8921-core".
1006
1007 config MFD_PM8XXX_IRQ
1008         bool "Support for Qualcomm PM8xxx IRQ features"
1009         depends on MFD_PM8XXX
1010         default y if MFD_PM8XXX
1011         help
1012           This is the IRQ driver for Qualcomm PM 8xxx PMIC chips.
1013
1014           This is required to use certain other PM 8xxx features, such as GPIO
1015           and MPP.
1016
1017 config TPS65911_COMPARATOR
1018         tristate
1019
1020 config MFD_TPS65090
1021         bool "TPS65090 Power Management chips"
1022         depends on I2C=y && GENERIC_HARDIRQS
1023         select MFD_CORE
1024         select REGMAP_I2C
1025         select REGMAP_IRQ
1026         help
1027           If you say yes here you get support for the TPS65090 series of
1028           Power Management chips.
1029           This driver provides common support for accessing the device,
1030           additional drivers must be enabled in order to use the
1031           functionality of the device.
1032
1033 config MFD_AAT2870_CORE
1034         bool "Support for the AnalogicTech AAT2870"
1035         select MFD_CORE
1036         depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS
1037         help
1038           If you say yes here you get support for the AAT2870.
1039           This driver provides common support for accessing the device,
1040           additional drivers must be enabled in order to use the
1041           functionality of the device.
1042
1043 config MFD_INTEL_MSIC
1044         bool "Support for Intel MSIC"
1045         depends on INTEL_SCU_IPC
1046         select MFD_CORE
1047         help
1048           Select this option to enable access to Intel MSIC (Avatele
1049           Passage) chip. This chip embeds audio, battery, GPIO, etc.
1050           devices used in Intel Medfield platforms.
1051
1052 config MFD_RC5T583
1053         bool "Ricoh RC5T583 Power Management system device"
1054         depends on I2C=y && GENERIC_HARDIRQS
1055         select MFD_CORE
1056         select REGMAP_I2C
1057         help
1058           Select this option to get support for the RICOH583 Power
1059           Management system device.
1060           This driver provides common support for accessing the device
1061           through i2c interface. The device supports multiple sub-devices
1062           like GPIO, interrupts, RTC, LDO and DCDC regulators, onkey.
1063           Additional drivers must be enabled in order to use the
1064           different functionality of the device.
1065
1066 config MFD_STA2X11
1067         bool "STA2X11 multi function device support"
1068         depends on STA2X11 && GENERIC_HARDIRQS
1069         select MFD_CORE
1070         select REGMAP_MMIO
1071
1072 config MFD_SYSCON
1073         bool "System Controller Register R/W Based on Regmap"
1074         depends on OF
1075         select REGMAP_MMIO
1076         help
1077           Select this option to enable accessing system control registers
1078           via regmap.
1079
1080 config MFD_PALMAS
1081         bool "Support for the TI Palmas series chips"
1082         select MFD_CORE
1083         select REGMAP_I2C
1084         select REGMAP_IRQ
1085         depends on I2C=y && GENERIC_HARDIRQS
1086         help
1087           If you say yes here you get support for the Palmas
1088           series of PMIC chips from Texas Instruments.
1089
1090 config MFD_VIPERBOARD
1091         tristate "Support for Nano River Technologies Viperboard"
1092         select MFD_CORE
1093         depends on USB && GENERIC_HARDIRQS
1094         default n
1095         help
1096           Say yes here if you want support for Nano River Technologies
1097           Viperboard.
1098           There are mfd cell drivers available for i2c master, adc and
1099           both gpios found on the board. The spi part does not yet
1100           have a driver.
1101           You need to select the mfd cell drivers separately.
1102           The drivers do not support all features the board exposes.
1103
1104 config MFD_RETU
1105         tristate "Support for Retu multi-function device"
1106         select MFD_CORE
1107         depends on I2C && GENERIC_HARDIRQS
1108         select REGMAP_IRQ
1109         help
1110           Retu is a multi-function device found on Nokia Internet Tablets
1111           (770, N800 and N810).
1112
1113 config MFD_AS3711
1114         bool "Support for AS3711"
1115         select MFD_CORE
1116         select REGMAP_I2C
1117         select REGMAP_IRQ
1118         depends on I2C=y && GENERIC_HARDIRQS
1119         help
1120           Support for the AS3711 PMIC from AMS
1121
1122 endmenu
1123 endif
1124
1125 menu "Multimedia Capabilities Port drivers"
1126         depends on ARCH_SA1100
1127
1128 config MCP
1129         tristate
1130
1131 # Interface drivers
1132 config MCP_SA11X0
1133         tristate "Support SA11x0 MCP interface"
1134         depends on ARCH_SA1100
1135         select MCP
1136
1137 # Chip drivers
1138 config MCP_UCB1200
1139         bool "Support for UCB1200 / UCB1300"
1140         depends on MCP_SA11X0
1141         select MCP
1142
1143 config MCP_UCB1200_TS
1144         tristate "Touchscreen interface support"
1145         depends on MCP_UCB1200 && INPUT
1146
1147 endmenu
1148
1149 config VEXPRESS_CONFIG
1150         bool
1151         help
1152           Platform configuration infrastructure for the ARM Ltd.
1153           Versatile Express.