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