2 # Multifunction miscellaneous devices
6 menu "Multifunction device drivers"
14 tristate "AMD CS5535 and CS5536 southbridge core functions"
16 depends on PCI && (X86_32 || (X86 && COMPILE_TEST))
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_ALTERA_A10SR
22 bool "Altera Arria10 DevKit System Resource chip"
23 depends on ARCH_SOCFPGA && SPI_MASTER=y && OF
27 Support for the Altera Arria10 DevKit MAX5 System Resource chip
28 using the SPI interface. This driver provides common support for
29 accessing the external gpio extender (LEDs & buttons) and
30 power supply alarms (hwmon).
33 tristate "Active-semi ACT8945A"
38 Support for the ACT8945A PMIC from Active-semi. This device
39 features three step-down DC/DC converters and four low-dropout
40 linear regulators, along with a complete ActivePath battery
50 Support for the AS3711 PMIC from AMS
53 bool "ams AS3722 Power Management IC"
57 depends on I2C=y && OF
59 The ams AS3722 is a compact system PMU suitable for mobile phones,
60 tablets etc. It has 4 DC/DC step-down regulators, 3 DC/DC step-down
61 controllers, 11 LDOs, RTC, automatic battery, temperature and
62 over current monitoring, GPIOs, ADC and a watchdog.
65 bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
68 Say yes here to add support for Analog Devices AD5520 and ADP5501,
69 Multifunction Power Management IC. This includes
70 the I2C driver and the core APIs _only_, you have to select
71 individual components like LCD backlight, LEDs, GPIOs and Kepad
72 under the corresponding menus.
74 config MFD_AAT2870_CORE
75 bool "AnalogicTech AAT2870"
78 depends on GPIOLIB || COMPILE_TEST
80 If you say yes here you get support for the AAT2870.
81 This driver provides common support for accessing the device,
82 additional drivers must be enabled in order to use the
83 functionality of the device.
85 config MFD_ATMEL_FLEXCOM
86 tristate "Atmel Flexcom (Flexible Serial Communication Unit)"
90 Select this to get support for Atmel Flexcom. This is a wrapper
91 which embeds a SPI controller, a I2C controller and a USART. Only
92 one function can be used at a time. The choice is done at boot time
93 by the probe function of this MFD driver according to a device tree
96 config MFD_ATMEL_HLCDC
97 tristate "Atmel HLCDC (High-end LCD Controller)"
102 If you say yes here you get support for the HLCDC block.
103 This driver provides common support for accessing the device,
104 additional drivers must be enabled in order to use the
105 functionality of the device.
108 tristate "Broadcom BCM590xx PMUs"
113 Support for the BCM590xx PMUs from Broadcom
120 config MFD_AXP20X_I2C
121 tristate "X-Powers AXP series PMICs with I2C"
126 If you say Y here you get support for the X-Powers AXP series power
127 management ICs (PMICs) controlled with I2C.
128 This driver include only the core APIs. You have to select individual
129 components like regulators or the PEK (Power Enable Key) under the
132 config MFD_AXP20X_RSB
133 tristate "X-Powers AXP series PMICs with RSB"
137 If you say Y here you get support for the X-Powers AXP series power
138 management ICs (PMICs) controlled with RSB.
139 This driver include only the core APIs. You have to select individual
140 components like regulators or the PEK (Power Enable Key) under the
144 tristate "ChromeOS Embedded Controller"
146 select CHROME_PLATFORMS
148 depends on X86 || ARM || ARM64 || COMPILE_TEST
150 If you say Y here you get support for the ChromeOS Embedded
151 Controller (EC) providing keyboard, battery and power services.
152 You also need to enable the driver for the bus you are using. The
153 protocol for talking to the EC is defined by the bus driver.
155 config MFD_CROS_EC_I2C
156 tristate "ChromeOS Embedded Controller (I2C)"
157 depends on MFD_CROS_EC && I2C
160 If you say Y here, you get support for talking to the ChromeOS
161 EC through an I2C bus. This uses a simple byte-level protocol with
162 a checksum. Failing accesses will be retried three times to
165 config MFD_CROS_EC_SPI
166 tristate "ChromeOS Embedded Controller (SPI)"
167 depends on MFD_CROS_EC && SPI
170 If you say Y here, you get support for talking to the ChromeOS EC
171 through a SPI bus, using a byte-level protocol. Since the EC's
172 response time cannot be guaranteed, we support ignoring
173 'pre-amble' bytes before the response actually starts.
177 depends on GPIOLIB && ARM
180 This driver supports the ASIC3 multifunction chip found on many
181 PDAs (mainly iPAQ and HTC based ones)
184 bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
187 Say yes here to add support for Dialog Semiconductor DA9030 (a.k.a
188 ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
189 usually found on PXA processors-based platforms. This includes
190 the I2C driver and the core APIs _only_, you have to select
191 individual components like LCD backlight, voltage regulators,
192 LEDs and battery-charger under the corresponding menus.
198 config MFD_DA9052_SPI
199 bool "Dialog Semiconductor DA9052/53 PMIC variants with SPI"
203 depends on SPI_MASTER=y
205 Support for the Dialog Semiconductor DA9052 PMIC
206 when controlled using SPI. This driver provides common support
207 for accessing the device, additional drivers must be enabled in
208 order to use the functionality of the device.
210 config MFD_DA9052_I2C
211 bool "Dialog Semiconductor DA9052/53 PMIC variants with I2C"
217 Support for the Dialog Semiconductor DA9052 PMIC
218 when controlled using I2C. This driver provides common support
219 for accessing the device, additional drivers must be enabled in
220 order to use the functionality of the device.
223 bool "Dialog Semiconductor DA9055 PMIC Support"
229 Say yes here for support of Dialog Semiconductor DA9055. This is
230 a Power Management IC. This driver provides common support for
231 accessing the device as well as the I2C interface to the chip itself.
232 Additional drivers must be enabled in order to use the functionality
235 This driver can be built as a module. If built as a module it will be
239 tristate "Dialog Semiconductor DA9062 PMIC Support"
245 Say yes here for support for the Dialog Semiconductor DA9062 PMIC.
246 This includes the I2C driver and core APIs.
247 Additional drivers must be enabled in order to use the functionality
251 tristate "Dialog Semiconductor DA9063 PMIC Support"
257 Say yes here for support for the Dialog Semiconductor DA9063 PMIC.
258 This includes the I2C driver and core APIs.
259 Additional drivers must be enabled in order to use the functionality
263 tristate "Dialog Semiconductor DA9150 Charger Fuel-Gauge chip"
269 This adds support for the DA9150 integrated charger and fuel-gauge
270 chip. This driver provides common support for accessing the device.
271 Additional drivers must be enabled in order to use the specific
272 features of the device.
275 tristate "Diolan DLN2 support"
279 This adds support for Diolan USB-I2C/SPI/GPIO Master Adapter
280 DLN-2. Additional drivers such as I2C_DLN2, GPIO_DLN2,
281 etc. must be enabled in order to use the functionality of
286 depends on (SPI_MASTER || I2C)
290 Enable support for the Freescale MC13783 and MC13892 PMICs.
291 This driver provides common support for accessing the device,
292 additional drivers must be enabled in order to use the
293 functionality of the device.
295 config MFD_MC13XXX_SPI
296 tristate "Freescale MC13783 and MC13892 SPI interface"
297 depends on SPI_MASTER
301 Select this if your MC13xxx is connected via an SPI bus.
303 config MFD_MC13XXX_I2C
304 tristate "Freescale MC13892 I2C interface"
309 Select this if your MC13xxx is connected via an I2C bus.
311 config MFD_MX25_TSADC
312 tristate "Freescale i.MX25 integrated Touchscreen and ADC unit"
314 depends on (SOC_IMX25 && OF) || COMPILE_TEST
316 Enable support for the integrated Touchscreen and ADC unit of the
317 i.MX25 processors. They consist of a conversion queue for general
318 purpose ADC and a queue for Touchscreens.
320 config MFD_HI6421_PMIC
321 tristate "HiSilicon Hi6421 PMU/Codec IC"
326 Add support for HiSilicon Hi6421 PMIC. Hi6421 includes multi-
327 functions, such as regulators, RTC, codec, Coulomb counter, etc.
328 This driver includes core APIs _only_. You have to select
329 individul components like voltage regulators under corresponding
330 menus in order to enable them.
331 We communicate with the Hi6421 via memory-mapped I/O.
333 config MFD_HI655X_PMIC
334 tristate "HiSilicon Hi655X series PMU/Codec IC"
335 depends on ARCH_HISI || COMPILE_TEST
341 Select this option to enable Hisilicon hi655x series pmic driver.
344 tristate "HTC PASIC3 LED/DS1WM chip support"
347 This core driver provides register access for the LED/DS1WM
348 chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
349 HTC Magician devices, respectively. Actual functionality is
350 handled by the leds-pasic3 and ds1wm drivers.
353 bool "HTC I2C PLD chip support"
354 depends on I2C=y && GPIOLIB
356 If you say yes here you get support for the supposed CPLD
357 found on omap850 HTC devices like the HTC Wizard and HTC Herald.
358 This device provides input and output GPIOs through an I2C
359 interface to one or more sub-chips.
361 config MFD_INTEL_QUARK_I2C_GPIO
362 tristate "Intel Quark MFD I2C GPIO"
365 depends on COMMON_CLK
368 This MFD provides support for I2C and GPIO that exist only
369 in a single PCI device. It splits the 2 IO devices to
370 their respective IO driver.
371 The GPIO exports a total amount of 8 interrupt-capable GPIOs.
374 tristate "Intel ICH LPC"
378 The LPC bridge function of the Intel ICH provides support for
379 many functional units. This driver provides needed support for
380 other drivers to control these functions, currently GPIO and
384 tristate "Intel SCH LPC"
388 LPC bridge function of the Intel SCH provides support for
389 System Management Bus and General Purpose I/O.
391 config INTEL_SOC_PMIC
392 bool "Support for Intel Atom SoC PMIC"
399 Select this option to enable support for the PMIC device
400 on some Intel SoC systems. The PMIC provides ADC, GPIO,
401 thermal, charger and related power management functions
404 config MFD_INTEL_LPSS
409 config MFD_INTEL_LPSS_ACPI
410 tristate "Intel Low Power Subsystem support in ACPI mode"
411 select MFD_INTEL_LPSS
412 depends on X86 && ACPI
414 This driver supports Intel Low Power Subsystem (LPSS) devices such as
415 I2C, SPI and HS-UART starting from Intel Sunrisepoint (Intel Skylake
418 config MFD_INTEL_LPSS_PCI
419 tristate "Intel Low Power Subsystem support in PCI mode"
420 select MFD_INTEL_LPSS
421 depends on X86 && PCI
423 This driver supports Intel Low Power Subsystem (LPSS) devices such as
424 I2C, SPI and HS-UART starting from Intel Sunrisepoint (Intel Skylake
427 config MFD_INTEL_MSIC
429 depends on INTEL_SCU_IPC
432 Select this option to enable access to Intel MSIC (Avatele
433 Passage) chip. This chip embeds audio, battery, GPIO, etc.
434 devices used in Intel Medfield platforms.
436 config MFD_IPAQ_MICRO
437 bool "Atmel Micro ASIC (iPAQ h3100/h3600/h3700) Support"
438 depends on SA1100_H3100 || SA1100_H3600
441 Select this to get support for the Microcontroller found in
442 the Compaq iPAQ handheld computers. This is an Atmel
443 AT90LS8535 microcontroller flashed with a special iPAQ
444 firmware using the custom protocol implemented in this driver.
446 config MFD_JANZ_CMODIO
447 tristate "Janz CMOD-IO PCI MODULbus Carrier Board"
451 This is the core driver for the Janz CMOD-IO PCI MODULbus
452 carrier board. This device is a PCI to MODULbus bridge which may
453 host many different types of MODULbus daughterboards, including
454 CAN and GPIO controllers.
456 config MFD_JZ4740_ADC
457 bool "Janz JZ4740 ADC core"
459 select GENERIC_IRQ_CHIP
460 depends on MACH_JZ4740
462 Say yes here if you want support for the ADC unit in the JZ4740 SoC.
463 This driver is necessary for jz4740-battery and jz4740-hwmon driver.
466 tristate "Kontron module PLD device"
469 This is the core driver for the PLD (Programmable Logic Device) found
470 on some Kontron ETX and COMexpress (ETXexpress) modules. The PLD
471 device may provide functions like watchdog, GPIO, UART and I2C bus.
473 The following modules are supported:
477 * COMe-bPC2 (ETXexpress-PC)
478 * COMe-bSC# (ETXexpress-SC T#)
483 * COMe-cDC2 (microETXexpress-DC)
485 * COMe-cPC2 (microETXexpress-PC)
490 * COMe-mTT10 (nanoETXexpress-TT)
493 This driver can also be built as a module. If so, the module
494 will be called kempld-core.
497 tristate "Marvell 88PM800"
503 This supports for Marvell 88PM800 Power Management IC.
504 This includes the I2C driver and the core APIs _only_, you have to
505 select individual components like voltage regulators, RTC and
506 battery-charger under the corresponding menus.
509 tristate "Marvell 88PM805"
515 This supports for Marvell 88PM805 Power Management IC. This includes
516 the I2C driver and the core APIs _only_, you have to select individual
517 components like codec device, headset/Mic device under the
521 bool "Marvell 88PM8606/88PM8607"
526 This supports for Marvell 88PM8606/88PM8607 Power Management IC.
527 This includes the I2C driver and the core APIs _only_, you have to
528 select individual components like voltage regulators, RTC and
529 battery-charger under the corresponding menus.
532 tristate "Maxim Semiconductor MAX14577/77836 MUIC + Charger Support"
539 Say yes here to add support for Maxim Semiconductor MAX14577 and
540 MAX77836 Micro-USB ICs with battery charger.
541 This driver provides common support for accessing the device;
542 additional drivers must be enabled in order to use the functionality
546 bool "Maxim Semiconductor MAX77620 and MAX20024 PMIC Support"
554 Say yes here to add support for Maxim Semiconductor MAX77620 and
555 MAX20024 which are Power Management IC with General purpose pins,
556 RTC, regulators, clock generator, watchdog etc. This driver
557 provides common support for accessing the device; additional drivers
558 must be enabled in order to use the functionality of the device.
561 tristate "Maxim Semiconductor MAX77686/802 PMIC Support"
569 Say yes here to add support for Maxim Semiconductor MAX77686 and
570 MAX77802 which are Power Management IC with an RTC on chip.
571 This driver provides common support for accessing the device;
572 additional drivers must be enabled in order to use the functionality
576 tristate "Maxim Semiconductor MAX77693 PMIC Support"
582 Say yes here to add support for Maxim Semiconductor MAX77693.
583 This is a companion Power Management IC with Flash, Haptic, Charger,
584 and MUIC(Micro USB Interface Controller) controls on chip.
585 This driver provides common support for accessing the device;
586 additional drivers must be enabled in order to use the functionality
590 bool "Maxim Semiconductor MAX77843 PMIC Support"
596 Say yes here to add support for Maxim Semiconductor MAX77843.
597 This is companion Power Management IC with LEDs, Haptic, Charger,
598 Fuel Gauge, MUIC(Micro USB Interface Controller) controls on chip.
599 This driver provides common support for accessing the device;
600 additional drivers must be enabled in order to use the functionality
604 tristate "Maxim Semiconductor MAX8907 PMIC Support"
610 Say yes here to add support for Maxim Semiconductor MAX8907. This is
611 a Power Management IC. This driver provides common support for
612 accessing the device; additional drivers must be enabled in order
613 to use the functionality of the device.
616 bool "Maxim Semiconductor MAX8925 PMIC Support"
620 Say yes here to add support for Maxim Semiconductor MAX8925. This is
621 a Power Management IC. This driver provides common support for
622 accessing the device, additional drivers must be enabled in order
623 to use the functionality of the device.
626 bool "Maxim Semiconductor MAX8997/8966 PMIC Support"
631 Say yes here to add support for Maxim Semiconductor MAX8997/8966.
632 This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic,
633 MUIC controls on chip.
634 This driver provides common support for accessing the device;
635 additional drivers must be enabled in order to use the functionality
639 bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support"
644 Say yes here to add support for Maxim Semiconductor MAX8998 and
645 National Semiconductor LP3974. This is a Power Management IC.
646 This driver provides common support for accessing the device,
647 additional drivers must be enabled in order to use the functionality
651 tristate "MediaTek MT6397 PMIC Support"
655 Say yes here to add support for MediaTek MT6397 PMIC. This is
656 a Power Management IC. This driver provides common support for
657 accessing the device; additional drivers must be enabled in order
658 to use the functionality of the device.
661 tristate "MEN 14F021P00 Board Management Controller Support"
665 Say yes here to add support for the MEN 14F021P00 BMC
666 which is a Board Management Controller connected to the I2C bus.
667 The device supports multiple sub-devices like LED, HWMON and WDT.
668 This driver provides common support for accessing the devices;
669 additional drivers must be enabled in order to use the
670 functionality of the BMC device.
672 This driver can also be built as a module. If so the module
673 will be called menf21bmc.
676 bool "Motorola EZXPCAP Support"
677 depends on SPI_MASTER
679 This enables the PCAP ASIC present on EZX Phones. This is
680 needed for MMC, TouchScreen, Sound, USB, etc..
682 config MFD_VIPERBOARD
683 tristate "Nano River Technologies Viperboard"
688 Say yes here if you want support for Nano River Technologies
690 There are mfd cell drivers available for i2c master, adc and
691 both gpios found on the board. The spi part does not yet
693 You need to select the mfd cell drivers separately.
694 The drivers do not support all features the board exposes.
697 tristate "Nokia Retu and Tahvo multi-function device"
702 Retu and Tahvo are a multi-function devices found on Nokia
703 Internet Tablets (770, N800 and N810).
706 tristate "NXP PCF50633"
710 Say yes here if you have NXP PCF50633 chip on your board.
711 This core driver provides register access and IRQ handling
712 facilities, and registers devices for the various functions
713 so that function-specific drivers can bind to them.
716 tristate "NXP PCF50633 ADC"
717 depends on MFD_PCF50633
719 Say yes here if you want to include support for ADC in the
723 tristate "NXP PCF50633 GPIO"
724 depends on MFD_PCF50633
726 Say yes here if you want to include support GPIO for pins on
730 tristate "Philips UCB1400 Core driver"
734 This enables support for the Philips UCB1400 core functions.
735 The UCB1400 is an AC97 audio codec.
737 To compile this driver as a module, choose M here: the
738 module will be called ucb1400_core.
743 config MFD_PM8921_CORE
744 tristate "Qualcomm PM8921 PMIC chip"
745 depends on (ARM || HEXAGON)
751 If you say yes to this option, support will be included for the
752 built-in PM8921 PMIC chip.
754 This is required if your board has a PM8921 and uses its features,
755 such as: MPPs, GPIOs, regulators, interrupts, and PWM.
757 Say M here if you want to include support for PM8921 chip as a module.
758 This will build a module called "pm8921-core".
761 tristate "Qualcomm Resource Power Manager (RPM)"
762 depends on ARCH_QCOM && OF
764 If you say yes to this option, support will be included for the
765 Resource Power Manager system found in the Qualcomm 8660, 8960 and
768 This is required to access many regulators, clocks and bus
769 frequencies controlled by the RPM on these devices.
771 Say M here if you want to include support for the Qualcomm RPM as a
772 module. This will build a module called "qcom_rpm".
775 tristate "Qualcomm SPMI PMICs"
776 depends on ARCH_QCOM || COMPILE_TEST
781 This enables support for the Qualcomm SPMI PMICs.
782 These PMICs are currently used with the Snapdragon 800 series of
783 SoCs. Note, that this will only be useful paired with descriptions
784 of the independent functions as children nodes in the device tree.
786 Say M here if you want to include support for the SPMI PMIC
787 series as a module. The module will be called "qcom-spmi-pmic".
790 tristate "RDC R-321x southbridge"
794 Say yes here if you want to have support for the RDC R-321x SoC
795 southbridge which provides access to GPIOs and Watchdog using the
796 southbridge PCI device configuration space.
799 tristate "Realtek PCI-E card reader"
803 This supports for Realtek PCI-Express card reader including rts5209,
804 rts5227, rts522A, rts5229, rts5249, rts524A, rts525A, rtl8411, etc.
805 Realtek card reader supports access to many types of memory cards,
806 such as Memory Stick, Memory Stick Pro, Secure Digital and
810 tristate "Richtek RT5033 Power Management IC"
816 This driver provides for the Richtek RT5033 Power Management IC,
817 which includes the I2C driver and the Core APIs. This driver provides
818 common support for accessing the device. The device supports multiple
819 sub-devices like charger, fuel gauge, flash LED, current source,
823 tristate "Realtek USB card reader"
827 Select this option to get support for Realtek USB 2.0 card readers
828 including RTS5129, RTS5139, RTS5179 and RTS5170.
829 Realtek card reader supports access to many types of memory cards,
830 such as Memory Stick Pro, Secure Digital and MultiMediaCard.
833 bool "Ricoh RC5T583 Power Management system device"
838 Select this option to get support for the RICOH583 Power
839 Management system device.
840 This driver provides common support for accessing the device
841 through i2c interface. The device supports multiple sub-devices
842 like GPIO, interrupts, RTC, LDO and DCDC regulators, onkey.
843 Additional drivers must be enabled in order to use the
844 different functionality of the device.
847 tristate "Rockchip RK808 Power Management chip"
853 If you say yes here you get support for the RK808
854 Power Management chips.
855 This driver provides common support for accessing the device
856 through I2C interface. The device supports multiple sub-devices
857 including interrupts, RTC, LDO & DCDC regulators, and onkey.
860 tristate "Ricoh RN5T567/618 PMIC"
866 Say yes here to add support for the Ricoh RN5T567 or R5T618 PMIC.
867 This driver provides common support for accessing the device,
868 additional drivers must be enabled in order to use the
869 functionality of the device.
872 bool "SAMSUNG Electronics PMIC Series Support"
878 Support for the Samsung Electronics MFD series.
879 This driver provides common support for accessing the device,
880 additional drivers must be enabled in order to use the functionality
883 config MFD_SI476X_CORE
884 tristate "Silicon Laboratories 4761/64/68 AM/FM radio."
889 This is the core driver for the SI476x series of AM/FM
890 radio. This MFD driver connects the radio-si476x V4L2 module
891 and the si476x audio codec.
893 To compile this driver as a module, choose M here: the
894 module will be called si476x-core.
897 tristate "Silicon Motion SM501"
899 This is the core driver for the Silicon Motion SM501 multimedia
900 companion chip. This device is a multifunction device which may
901 provide numerous interfaces including USB host controller, USB gadget,
902 asynchronous serial ports, audio functions, and a dual display video
903 interface. The device may be connected by PCI or local bus with
904 varying functions enabled.
906 config MFD_SM501_GPIO
907 bool "Export GPIO via GPIO layer"
908 depends on MFD_SM501 && GPIOLIB
910 This option uses the gpio library layer to export the 64 GPIO
911 lines on the SM501. The platform data is used to supply the
912 base number for the first GPIO line to register.
915 tristate "Skyworks Solutions SKY81452"
920 This is the core driver for the Skyworks SKY81452 backlight and
921 voltage regulator device.
923 This driver can also be built as a module. If so, the module
924 will be called sky81452.
927 bool "SMSC ECE1099 series chips"
932 If you say yes here you get support for the
933 ece1099 chips from SMSC.
935 To compile this driver as a module, choose M here: the
936 module will be called smsc.
939 bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions"
940 default y if ARCH_U300 || ARCH_U8500
942 Say yes here if you have the ABX500 Mixed Signal IC family
943 chips. This core driver expose register access functions.
944 Functionality specific drivers using these functions can
945 remain unchanged when IC changes. Binding of the functions to
946 actual register access is done by the IC core driver.
949 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
950 depends on I2C=y && ABX500_CORE
952 default y if ARCH_U300
954 Select this to enable the AB3100 Mixed Signal IC core
955 functionality. This connects to a AB3100 on the I2C bus
956 and expose a number of symbols needed for dependent devices
957 to read and write registers and subscribe to events from
958 this multi-functional IC. This is needed to use other features
959 of the AB3100 such as battery-backed RTC, charging control,
960 LEDs, vibrator, system power and temperature, power management
964 tristate "ST-Ericsson AB3100 OTP functions"
965 depends on AB3100_CORE
966 default y if AB3100_CORE
968 Select this to enable the AB3100 Mixed Signal IC OTP (one-time
969 programmable memory) support. This exposes a sysfs file to read
973 bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
974 depends on ABX500_CORE && MFD_DB8500_PRCMU
979 Select this option to enable access to AB8500 power management
980 chip. This connects to U8500 either on the SSP/SPI bus (deprecated
981 since hardware version v1.0) or the I2C bus via PRCMU. It also adds
982 the irq_chip parts for handling the Mixed Signal chip events.
983 This chip embeds various other multimedia funtionalities as well.
986 bool "Enable debug info via debugfs"
987 depends on AB8500_GPADC && DEBUG_FS
988 default y if DEBUG_FS
990 Select this option if you want debug information using the debug
994 bool "ST-Ericsson AB8500 GPADC driver"
995 depends on AB8500_CORE && REGULATOR_AB8500
998 AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage
1000 config MFD_DB8500_PRCMU
1001 bool "ST-Ericsson DB8500 Power Reset Control Management Unit"
1002 depends on UX500_SOC_DB8500
1005 Select this option to enable support for the DB8500 Power Reset
1006 and Control Management Unit. This is basically an autonomous
1007 system controller running an XP70 microprocessor, which is accessed
1008 through a register map.
1011 bool "STMicroelectronics STMPE"
1012 depends on (I2C=y || SPI_MASTER=y)
1016 Support for the STMPE family of I/O Expanders from
1019 Currently supported devices are:
1021 STMPE811: GPIO, Touchscreen
1022 STMPE1601: GPIO, Keypad
1023 STMPE1801: GPIO, Keypad
1024 STMPE2401: GPIO, Keypad
1025 STMPE2403: GPIO, Keypad
1027 This driver provides common support for accessing the device,
1028 additional drivers must be enabled in order to use the functionality
1029 of the device. Currently available sub drivers are:
1032 Keypad: stmpe-keypad
1033 Touchscreen: stmpe-ts
1035 menu "STMicroelectronics STMPE Interface Drivers"
1036 depends on MFD_STMPE
1039 bool "STMicroelectronics STMPE I2C Interface"
1043 This is used to enable I2C interface of STMPE
1046 bool "STMicroelectronics STMPE SPI Interface"
1047 depends on SPI_MASTER
1049 This is used to enable SPI interface of STMPE
1053 bool "STMicroelectronics STA2X11"
1058 config MFD_SUN6I_PRCM
1059 bool "Allwinner A31 PRCM controller"
1060 depends on ARCH_SUNXI
1063 Support for the PRCM (Power/Reset/Clock Management) unit available
1067 bool "System Controller Register R/W Based on Regmap"
1070 Select this option to enable accessing system control registers
1073 config MFD_DAVINCI_VOICECODEC
1078 config MFD_TI_AM335X_TSCADC
1079 tristate "TI ADC / Touch Screen chip support"
1084 If you say yes here you get support for Texas Instruments series
1085 of Touch Screen /ADC chips.
1086 To compile this driver as a module, choose M here: the
1087 module will be called ti_am335x_tscadc.
1089 config MFD_DM355EVM_MSP
1090 bool "TI DaVinci DM355 EVM microcontroller"
1091 depends on I2C=y && MACH_DAVINCI_DM355_EVM
1093 This driver supports the MSP430 microcontroller used on these
1094 boards. MSP430 firmware manages resets and power sequencing,
1095 inputs from buttons and the IR remote, LEDs, an RTC, and more.
1098 tristate "TI/National Semiconductor LP3943 MFD Driver"
1103 Support for the TI/National Semiconductor LP3943.
1104 This driver consists of GPIO and PWM drivers.
1105 With these functionalities, it can be used for LED string control or
1106 general usage such like a GPIO controller and a PWM controller.
1109 bool "TI LP8788 Power Management Unit Driver"
1115 TI LP8788 PMU supports regulators, battery charger, RTC,
1116 ADC, backlight driver and current sinks.
1118 config MFD_OMAP_USB_HOST
1119 bool "TI OMAP USBHS core and TLL driver"
1120 depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3
1123 This is the core driver for the OAMP EHCI and OHCI drivers.
1124 This MFD driver does the required setup functionalities for
1125 OMAP USB Host drivers.
1128 bool "TI Palmas series chips"
1134 If you say yes here you get support for the Palmas
1135 series of PMIC chips from Texas Instruments.
1138 tristate "TI TPS61050/61052 Boost Converters"
1143 select REGULATOR_FIXED_VOLTAGE
1145 This option enables a driver for the TP61050/TPS61052
1146 high-power "white LED driver". This boost converter is
1147 sometimes used for other things than white LEDs, and
1148 also contains a GPIO pin.
1151 tristate "TI TPS6501x Power Management chips"
1152 depends on I2C && GPIOLIB
1153 default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
1155 If you say yes here you get support for the TPS6501x series of
1156 Power Management chips. These include voltage regulators,
1157 lithium ion/polymer battery charging, and other features that
1158 are often used in portable devices like cell phones and cameras.
1160 This driver can also be built as a module. If so, the module
1161 will be called tps65010.
1164 tristate "TI TPS6507x Power Management / Touch Screen chips"
1168 If you say yes here you get support for the TPS6507x series of
1169 Power Management / Touch Screen chips. These include voltage
1170 regulators, lithium ion/polymer battery charging, touch screen
1171 and other features that are often used in portable devices.
1172 This driver can also be built as a module. If so, the module
1173 will be called tps6507x.
1176 tristate "TI TPS65086 Power Management Integrated Chips (PMICs)"
1182 If you say yes here you get support for the TPS65086 series of
1183 Power Management chips.
1184 This driver provides common support for accessing the device,
1185 additional drivers must be enabled in order to use the
1186 functionality of the device.
1188 config TPS65911_COMPARATOR
1192 bool "TI TPS65090 Power Management chips"
1198 If you say yes here you get support for the TPS65090 series of
1199 Power Management chips.
1200 This driver provides common support for accessing the device,
1201 additional drivers must be enabled in order to use the
1202 functionality of the device.
1205 tristate "TI TPS65217 Power Management / White LED chips"
1210 If you say yes here you get support for the TPS65217 series of
1211 Power Management / White LED chips.
1212 These include voltage regulators, lithium ion/polymer battery
1213 charger, wled and other features that are often used in portable
1216 This driver can also be built as a module. If so, the module
1217 will be called tps65217.
1219 config MFD_TI_LP873X
1220 tristate "TI LP873X Power Management IC"
1225 If you say yes here then you get support for the LP873X series of
1226 Power Management Integrated Circuits (PMIC).
1227 These include voltage regulators, thermal protection, configurable
1228 General Purpose Outputs (GPO) that are used in portable devices.
1230 This driver can also be built as a module. If so, the module
1231 will be called lp873x.
1234 tristate "TI TPS65218 Power Management chips"
1240 If you say yes here you get support for the TPS65218 series of
1241 Power Management chips.
1242 These include voltage regulators, gpio and other features
1243 that are often used in portable devices. Only regulator
1244 component is currently supported.
1246 This driver can also be built as a module. If so, the module
1247 will be called tps65218.
1250 bool "TI TPS6586x Power Management chips"
1255 If you say yes here you get support for the TPS6586X series of
1256 Power Management chips.
1257 This driver provides common support for accessing the device,
1258 additional drivers must be enabled in order to use the
1259 functionality of the device.
1261 This driver can also be built as a module. If so, the module
1262 will be called tps6586x.
1265 bool "TI TPS65910 Power Management chip"
1267 depends on GPIOLIB || COMPILE_TEST
1273 if you say yes here you get support for the TPS65910 series of
1274 Power Management chips.
1282 config MFD_TPS65912_I2C
1283 tristate "TI TPS65912 Power Management chip with I2C"
1288 If you say yes here you get support for the TPS65912 series of
1289 PM chips with I2C interface.
1291 config MFD_TPS65912_SPI
1292 tristate "TI TPS65912 Power Management chip with SPI"
1295 depends on SPI_MASTER
1297 If you say yes here you get support for the TPS65912 series of
1298 PM chips with SPI interface.
1301 bool "TI TPS80031/TPS80032 Power Management chips"
1307 If you say yes here you get support for the Texas Instruments
1308 TPS80031/ TPS80032 Fully Integrated Power Management with Power
1309 Path and Battery Charger. The device provides five configurable
1310 step-down converters, 11 general purpose LDOs, USB OTG Module,
1311 ADC, RTC, 2 PWM, System Voltage Regulator/Battery Charger with
1312 Power Path from USB, 32K clock generator.
1315 bool "TI TWL4030/TWL5030/TWL6030/TPS659x0 Support"
1320 Say yes here if you have TWL4030 / TWL6030 family chip on your board.
1321 This core driver provides register access and IRQ handling
1322 facilities, and registers devices for the various functions
1323 so that function-specific drivers can bind to them.
1325 These multi-function chips are found on many OMAP2 and OMAP3
1326 boards, providing power management, RTC, GPIO, keypad, a
1327 high speed USB OTG transceiver, an audio codec (on most
1328 versions) and many other features.
1330 config TWL4030_POWER
1331 bool "TI TWL4030 power resources"
1332 depends on TWL4030_CORE && ARM
1334 Say yes here if you want to use the power resources on the
1335 TWL4030 family chips. Most of these resources are regulators,
1336 which have a separate driver; some are control signals, such
1337 as clock request handshaking.
1339 This driver uses board-specific data to initialize the resources
1340 and load scripts controlling which resources are switched off/on
1341 or reset when a sleep, wakeup or warm reset event occurs.
1343 config MFD_TWL4030_AUDIO
1344 bool "TI TWL4030 Audio"
1345 depends on TWL4030_CORE
1350 bool "TI TWL6040 audio codec"
1357 Say yes here if you want support for Texas Instruments TWL6040 audio
1359 This driver provides common support for accessing the device,
1360 additional drivers must be enabled in order to use the
1361 functionality of the device (audio, vibra).
1364 bool "TI TWL92330/Menelaus PM chip"
1365 depends on I2C=y && ARCH_OMAP2
1367 If you say yes here you get support for the Texas Instruments
1368 TWL92330/Menelaus Power Management chip. This include voltage
1369 regulators, Dual slot memory card transceivers, real-time clock
1370 and other features that are often used in portable devices like
1371 cell phones and PDAs.
1373 config MFD_WL1273_CORE
1374 tristate "TI WL1273 FM radio"
1379 This is the core driver for the TI WL1273 FM radio. This MFD
1380 driver connects the radio-wl1273 V4L2 module and the wl1273
1384 tristate "TI/National Semiconductor LM3533 Lighting Power chip"
1389 Say yes here to enable support for National Semiconductor / TI
1390 LM3533 Lighting Power chips.
1392 This driver provides common support for accessing the device;
1393 additional drivers must be enabled in order to use the LED,
1394 backlight or ambient-light-sensor functionality of the device.
1396 config MFD_TIMBERDALE
1397 tristate "Timberdale FPGA"
1399 depends on PCI && GPIOLIB && (X86_32 || COMPILE_TEST)
1401 This is the core driver for the timberdale FPGA. This device is a
1402 multifunction device which exposes numerous platform devices.
1404 The timberdale FPGA can be found on the Intel Atom development board
1405 for in-vehicle infontainment, called Russellville.
1408 bool "Toshiba TC35892 and variants"
1413 Support for the Toshiba TC35892 and variants I/O Expander.
1415 This driver provides common support for accessing the device,
1416 additional drivers must be enabled in order to use the
1417 functionality of the device.
1424 bool "Toshiba T7L66XB"
1425 depends on ARM && HAVE_CLK
1429 Support for Toshiba Mobile IO Controller T7L66XB
1432 bool "Toshiba TC6387XB"
1433 depends on ARM && HAVE_CLK
1437 Support for Toshiba Mobile IO Controller TC6387XB
1440 bool "Toshiba TC6393XB"
1441 depends on ARM && HAVE_CLK
1446 Support for Toshiba Mobile IO Controller TC6393XB
1449 tristate "VIA VX855/VX875 integrated south bridge"
1453 Say yes here to enable support for various functions of the
1454 VIA VX855/VX875 south bridge. You will need to enable the vx855_spi
1455 and/or vx855_gpio drivers for this to do anything useful.
1463 config MFD_ARIZONA_I2C
1464 tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with I2C"
1469 Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform
1470 audio SoC core functionality controlled via I2C.
1472 config MFD_ARIZONA_SPI
1473 tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with SPI"
1476 depends on SPI_MASTER
1478 Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform
1479 audio SoC core functionality controlled via SPI.
1482 bool "Cirrus Logic CS47L24 and WM1831"
1483 depends on MFD_ARIZONA
1485 Support for Cirrus Logic CS47L24 and WM1831 low power audio SoC
1488 bool "Wolfson Microelectronics WM5102"
1489 depends on MFD_ARIZONA
1491 Support for Wolfson Microelectronics WM5102 low power audio SoC
1494 bool "Wolfson Microelectronics WM5110 and WM8280/WM8281"
1495 depends on MFD_ARIZONA
1497 Support for Wolfson Microelectronics WM5110 and WM8280/WM8281
1501 bool "Wolfson Microelectronics WM8997"
1502 depends on MFD_ARIZONA
1504 Support for Wolfson Microelectronics WM8997 low power audio SoC
1507 bool "Wolfson Microelectronics WM8998"
1508 depends on MFD_ARIZONA
1510 Support for Wolfson Microelectronics WM8998 low power audio SoC
1513 bool "Wolfson Microelectronics WM8400"
1518 Support for the Wolfson Microelecronics WM8400 PMIC and audio
1519 CODEC. This driver provides common support for accessing
1520 the device, additional drivers must be enabled in order to use
1521 the functionality of the device.
1526 config MFD_WM831X_I2C
1527 bool "Wolfson Microelectronics WM831x/2x PMICs with I2C"
1534 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
1535 when controlled using I2C. This driver provides common support
1536 for accessing the device, additional drivers must be enabled in
1537 order to use the functionality of the device.
1539 config MFD_WM831X_SPI
1540 bool "Wolfson Microelectronics WM831x/2x PMICs with SPI"
1545 depends on SPI_MASTER
1547 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
1548 when controlled using SPI. This driver provides common support
1549 for accessing the device, additional drivers must be enabled in
1550 order to use the functionality of the device.
1555 config MFD_WM8350_I2C
1556 bool "Wolfson Microelectronics WM8350 with I2C"
1560 The WM8350 is an integrated audio and power management
1561 subsystem with watchdog and RTC functionality for embedded
1562 systems. This option enables core support for the WM8350 with
1563 I2C as the control interface. Additional options must be
1564 selected to enable support for the functionality of the chip.
1567 tristate "Wolfson Microelectronics WM8994"
1573 The WM8994 is a highly integrated hi-fi CODEC designed for
1574 smartphone applications. As well as audio functionality it
1575 has on board GPIO and regulator functionality which is
1576 supported via the relevant subsystems. This driver provides
1577 core support for the WM8994, in order to use the actual
1578 functionaltiy of the device other drivers must be enabled.
1581 tristate "Support for ST Microelectronics STw481x"
1582 depends on I2C && (ARCH_NOMADIK || COMPILE_TEST)
1586 Select this option to enable the STw481x chip driver used
1587 in various ST Microelectronics and ST-Ericsson embedded
1590 menu "Multimedia Capabilities Port drivers"
1591 depends on ARCH_SA1100
1598 tristate "Support SA11x0 MCP interface"
1599 depends on ARCH_SA1100
1604 tristate "Support for UCB1200 / UCB1300"
1605 depends on MCP_SA11X0
1608 config MCP_UCB1200_TS
1609 tristate "Touchscreen interface support"
1610 depends on MCP_UCB1200 && INPUT
1614 config MFD_VEXPRESS_SYSREG
1615 bool "Versatile Express System Registers"
1616 depends on VEXPRESS_CONFIG && GPIOLIB && !ARCH_USES_GETTIMEOFFSET
1619 select GPIO_GENERIC_PLATFORM
1623 System Registers are the platform configuration block
1624 on the ARM Ltd. Versatile Express board.