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