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
43 config MFD_SUN4I_GPADC
44 tristate "Allwinner sunxi platforms' GPADC MFD driver"
48 depends on ARCH_SUNXI || COMPILE_TEST
49 depends on !TOUCHSCREEN_SUN4I
51 Select this to get support for Allwinner SoCs (A10, A13 and A31) ADC.
52 This driver will only map the hardware interrupt and registers, you
53 have to select individual drivers based on this MFD to be able to use
54 the ADC or the thermal sensor. This will try to probe the ADC driver
55 sun4i-gpadc-iio and the hwmon driver iio_hwmon.
57 To compile this driver as a module, choose M here: the module will be
67 Support for the AS3711 PMIC from AMS
70 tristate "ams AS3722 Power Management IC"
74 depends on I2C=y && OF
76 The ams AS3722 is a compact system PMU suitable for mobile phones,
77 tablets etc. It has 4 DC/DC step-down regulators, 3 DC/DC step-down
78 controllers, 11 LDOs, RTC, automatic battery, temperature and
79 over current monitoring, GPIOs, ADC and a watchdog.
82 bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
85 Say yes here to add support for Analog Devices AD5520 and ADP5501,
86 Multifunction Power Management IC. This includes
87 the I2C driver and the core APIs _only_, you have to select
88 individual components like LCD backlight, LEDs, GPIOs and Kepad
89 under the corresponding menus.
91 config MFD_AAT2870_CORE
92 bool "AnalogicTech AAT2870"
95 depends on GPIOLIB || COMPILE_TEST
97 If you say yes here you get support for the AAT2870.
98 This driver provides common support for accessing the device,
99 additional drivers must be enabled in order to use the
100 functionality of the device.
102 config MFD_ATMEL_FLEXCOM
103 tristate "Atmel Flexcom (Flexible Serial Communication Unit)"
107 Select this to get support for Atmel Flexcom. This is a wrapper
108 which embeds a SPI controller, a I2C controller and a USART. Only
109 one function can be used at a time. The choice is done at boot time
110 by the probe function of this MFD driver according to a device tree
113 config MFD_ATMEL_HLCDC
114 tristate "Atmel HLCDC (High-end LCD Controller)"
119 If you say yes here you get support for the HLCDC block.
120 This driver provides common support for accessing the device,
121 additional drivers must be enabled in order to use the
122 functionality of the device.
129 tristate "Broadcom BCM590xx PMUs"
134 Support for the BCM590xx PMUs from Broadcom
137 tristate "X-Powers AC100"
141 If you say Y here you get support for the X-Powers AC100 audio codec
143 This driver include only the core APIs. You have to select individual
144 components like codecs or RTC under the corresponding menus.
151 config MFD_AXP20X_I2C
152 tristate "X-Powers AXP series PMICs with I2C"
157 If you say Y here you get support for the X-Powers AXP series power
158 management ICs (PMICs) controlled with I2C.
159 This driver include only the core APIs. You have to select individual
160 components like regulators or the PEK (Power Enable Key) under the
163 config MFD_AXP20X_RSB
164 tristate "X-Powers AXP series PMICs with RSB"
168 If you say Y here you get support for the X-Powers AXP series power
169 management ICs (PMICs) controlled with RSB.
170 This driver include only the core APIs. You have to select individual
171 components like regulators or the PEK (Power Enable Key) under the
175 tristate "ChromeOS Embedded Controller"
177 select CHROME_PLATFORMS
179 depends on X86 || ARM || ARM64 || COMPILE_TEST
181 If you say Y here you get support for the ChromeOS Embedded
182 Controller (EC) providing keyboard, battery and power services.
183 You also need to enable the driver for the bus you are using. The
184 protocol for talking to the EC is defined by the bus driver.
186 config MFD_CROS_EC_I2C
187 tristate "ChromeOS Embedded Controller (I2C)"
188 depends on MFD_CROS_EC && I2C
191 If you say Y here, you get support for talking to the ChromeOS
192 EC through an I2C bus. This uses a simple byte-level protocol with
193 a checksum. Failing accesses will be retried three times to
196 config MFD_CROS_EC_SPI
197 tristate "ChromeOS Embedded Controller (SPI)"
198 depends on MFD_CROS_EC && SPI
201 If you say Y here, you get support for talking to the ChromeOS EC
202 through a SPI bus, using a byte-level protocol. Since the EC's
203 response time cannot be guaranteed, we support ignoring
204 'pre-amble' bytes before the response actually starts.
208 depends on GPIOLIB && ARM
211 This driver supports the ASIC3 multifunction chip found on many
212 PDAs (mainly iPAQ and HTC based ones)
215 bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
218 Say yes here to add support for Dialog Semiconductor DA9030 (a.k.a
219 ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
220 usually found on PXA processors-based platforms. This includes
221 the I2C driver and the core APIs _only_, you have to select
222 individual components like LCD backlight, voltage regulators,
223 LEDs and battery-charger under the corresponding menus.
229 config MFD_DA9052_SPI
230 bool "Dialog Semiconductor DA9052/53 PMIC variants with SPI"
234 depends on SPI_MASTER=y
236 Support for the Dialog Semiconductor DA9052 PMIC
237 when controlled using SPI. This driver provides common support
238 for accessing the device, additional drivers must be enabled in
239 order to use the functionality of the device.
241 config MFD_DA9052_I2C
242 bool "Dialog Semiconductor DA9052/53 PMIC variants with I2C"
248 Support for the Dialog Semiconductor DA9052 PMIC
249 when controlled using I2C. This driver provides common support
250 for accessing the device, additional drivers must be enabled in
251 order to use the functionality of the device.
254 bool "Dialog Semiconductor DA9055 PMIC Support"
260 Say yes here for support of Dialog Semiconductor DA9055. This is
261 a Power Management IC. This driver provides common support for
262 accessing the device as well as the I2C interface to the chip itself.
263 Additional drivers must be enabled in order to use the functionality
266 This driver can be built as a module. If built as a module it will be
270 tristate "Dialog Semiconductor DA9062/61 PMIC Support"
276 Say yes here for support for the Dialog Semiconductor DA9061 and
278 This includes the I2C driver and core APIs.
279 Additional drivers must be enabled in order to use the functionality
283 tristate "Dialog Semiconductor DA9063 PMIC Support"
289 Say yes here for support for the Dialog Semiconductor DA9063 PMIC.
290 This includes the I2C driver and core APIs.
291 Additional drivers must be enabled in order to use the functionality
295 tristate "Dialog Semiconductor DA9150 Charger Fuel-Gauge chip"
301 This adds support for the DA9150 integrated charger and fuel-gauge
302 chip. This driver provides common support for accessing the device.
303 Additional drivers must be enabled in order to use the specific
304 features of the device.
307 tristate "Diolan DLN2 support"
311 This adds support for Diolan USB-I2C/SPI/GPIO Master Adapter
312 DLN-2. Additional drivers such as I2C_DLN2, GPIO_DLN2,
313 etc. must be enabled in order to use the functionality of
316 config MFD_EXYNOS_LPASS
317 tristate "Samsung Exynos SoC Low Power Audio Subsystem"
318 depends on ARCH_EXYNOS || COMPILE_TEST
322 Select this option to enable support for Samsung Exynos Low Power
327 depends on (SPI_MASTER || I2C)
331 Enable support for the Freescale MC13783 and MC13892 PMICs.
332 This driver provides common support for accessing the device,
333 additional drivers must be enabled in order to use the
334 functionality of the device.
336 config MFD_MC13XXX_SPI
337 tristate "Freescale MC13783 and MC13892 SPI interface"
338 depends on SPI_MASTER
342 Select this if your MC13xxx is connected via an SPI bus.
344 config MFD_MC13XXX_I2C
345 tristate "Freescale MC13892 I2C interface"
350 Select this if your MC13xxx is connected via an I2C bus.
353 tristate "Freescale i.MX23/i.MX28 LRADC"
354 depends on ARCH_MXS || COMPILE_TEST
358 Say yes here to build support for the Low Resolution
359 Analog-to-Digital Converter (LRADC) found on the i.MX23 and i.MX28
360 processors. This driver provides common support for accessing the
361 device, additional drivers must be enabled in order to use the
362 functionality of the device:
363 mxs-lradc-adc for ADC readings
364 mxs-lradc-ts for touchscreen support
366 This driver can also be built as a module. If so, the module will be
369 config MFD_MX25_TSADC
370 tristate "Freescale i.MX25 integrated Touchscreen and ADC unit"
372 depends on (SOC_IMX25 && OF) || COMPILE_TEST
374 Enable support for the integrated Touchscreen and ADC unit of the
375 i.MX25 processors. They consist of a conversion queue for general
376 purpose ADC and a queue for Touchscreens.
378 config MFD_HI6421_PMIC
379 tristate "HiSilicon Hi6421 PMU/Codec IC"
384 Add support for HiSilicon Hi6421 PMIC. Hi6421 includes multi-
385 functions, such as regulators, RTC, codec, Coulomb counter, etc.
386 This driver includes core APIs _only_. You have to select
387 individul components like voltage regulators under corresponding
388 menus in order to enable them.
389 We communicate with the Hi6421 via memory-mapped I/O.
391 config MFD_HI655X_PMIC
392 tristate "HiSilicon Hi655X series PMU/Codec IC"
393 depends on ARCH_HISI || COMPILE_TEST
399 Select this option to enable Hisilicon hi655x series pmic driver.
402 tristate "HTC PASIC3 LED/DS1WM chip support"
405 This core driver provides register access for the LED/DS1WM
406 chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
407 HTC Magician devices, respectively. Actual functionality is
408 handled by the leds-pasic3 and ds1wm drivers.
411 bool "HTC I2C PLD chip support"
412 depends on I2C=y && GPIOLIB
414 If you say yes here you get support for the supposed CPLD
415 found on omap850 HTC devices like the HTC Wizard and HTC Herald.
416 This device provides input and output GPIOs through an I2C
417 interface to one or more sub-chips.
419 config MFD_INTEL_QUARK_I2C_GPIO
420 tristate "Intel Quark MFD I2C GPIO"
423 depends on COMMON_CLK
426 This MFD provides support for I2C and GPIO that exist only
427 in a single PCI device. It splits the 2 IO devices to
428 their respective IO driver.
429 The GPIO exports a total amount of 8 interrupt-capable GPIOs.
432 tristate "Intel ICH LPC"
436 The LPC bridge function of the Intel ICH provides support for
437 many functional units. This driver provides needed support for
438 other drivers to control these functions, currently GPIO and
442 tristate "Intel SCH LPC"
446 LPC bridge function of the Intel SCH provides support for
447 System Management Bus and General Purpose I/O.
449 config INTEL_SOC_PMIC
450 bool "Support for Crystal Cove PMIC"
457 Select this option to enable support for Crystal Cove PMIC
458 on some Intel SoC systems. The PMIC provides ADC, GPIO,
459 thermal, charger and related power management functions
462 config INTEL_SOC_PMIC_BXTWC
463 tristate "Support for Intel Broxton Whiskey Cove PMIC"
464 depends on INTEL_PMC_IPC
468 Select this option to enable support for Whiskey Cove PMIC
469 on Intel Broxton systems. The PMIC provides ADC, GPIO,
470 thermal, charger and related power management functions
473 config MFD_INTEL_LPSS
478 config MFD_INTEL_LPSS_ACPI
479 tristate "Intel Low Power Subsystem support in ACPI mode"
480 select MFD_INTEL_LPSS
481 depends on X86 && ACPI
483 This driver supports Intel Low Power Subsystem (LPSS) devices such as
484 I2C, SPI and HS-UART starting from Intel Sunrisepoint (Intel Skylake
487 config MFD_INTEL_LPSS_PCI
488 tristate "Intel Low Power Subsystem support in PCI mode"
489 select MFD_INTEL_LPSS
490 depends on X86 && PCI
492 This driver supports Intel Low Power Subsystem (LPSS) devices such as
493 I2C, SPI and HS-UART starting from Intel Sunrisepoint (Intel Skylake
496 config MFD_INTEL_MSIC
498 depends on INTEL_SCU_IPC
501 Select this option to enable access to Intel MSIC (Avatele
502 Passage) chip. This chip embeds audio, battery, GPIO, etc.
503 devices used in Intel Medfield platforms.
505 config MFD_IPAQ_MICRO
506 bool "Atmel Micro ASIC (iPAQ h3100/h3600/h3700) Support"
507 depends on SA1100_H3100 || SA1100_H3600
510 Select this to get support for the Microcontroller found in
511 the Compaq iPAQ handheld computers. This is an Atmel
512 AT90LS8535 microcontroller flashed with a special iPAQ
513 firmware using the custom protocol implemented in this driver.
515 config MFD_JANZ_CMODIO
516 tristate "Janz CMOD-IO PCI MODULbus Carrier Board"
520 This is the core driver for the Janz CMOD-IO PCI MODULbus
521 carrier board. This device is a PCI to MODULbus bridge which may
522 host many different types of MODULbus daughterboards, including
523 CAN and GPIO controllers.
525 config MFD_JZ4740_ADC
526 bool "Janz JZ4740 ADC core"
528 select GENERIC_IRQ_CHIP
529 depends on MACH_JZ4740
531 Say yes here if you want support for the ADC unit in the JZ4740 SoC.
532 This driver is necessary for jz4740-battery and jz4740-hwmon driver.
535 tristate "Kontron module PLD device"
538 This is the core driver for the PLD (Programmable Logic Device) found
539 on some Kontron ETX and COMexpress (ETXexpress) modules. The PLD
540 device may provide functions like watchdog, GPIO, UART and I2C bus.
542 The following modules are supported:
549 * COMe-bPC2 (ETXexpress-PC)
550 * COMe-bSC# (ETXexpress-SC T#)
556 * COMe-cDC2 (microETXexpress-DC)
559 * COMe-cPC2 (microETXexpress-PC)
564 * COMe-mTT10 (nanoETXexpress-TT)
567 This driver can also be built as a module. If so, the module
568 will be called kempld-core.
571 tristate "Marvell 88PM800"
577 This supports for Marvell 88PM800 Power Management IC.
578 This includes the I2C driver and the core APIs _only_, you have to
579 select individual components like voltage regulators, RTC and
580 battery-charger under the corresponding menus.
583 tristate "Marvell 88PM805"
589 This supports for Marvell 88PM805 Power Management IC. This includes
590 the I2C driver and the core APIs _only_, you have to select individual
591 components like codec device, headset/Mic device under the
595 bool "Marvell 88PM8606/88PM8607"
600 This supports for Marvell 88PM8606/88PM8607 Power Management IC.
601 This includes the I2C driver and the core APIs _only_, you have to
602 select individual components like voltage regulators, RTC and
603 battery-charger under the corresponding menus.
606 tristate "Maxim Semiconductor MAX14577/77836 MUIC + Charger Support"
613 Say yes here to add support for Maxim Semiconductor MAX14577 and
614 MAX77836 Micro-USB ICs with battery charger.
615 This driver provides common support for accessing the device;
616 additional drivers must be enabled in order to use the functionality
620 bool "Maxim Semiconductor MAX77620 and MAX20024 PMIC Support"
622 depends on OF || COMPILE_TEST
628 Say yes here to add support for Maxim Semiconductor MAX77620 and
629 MAX20024 which are Power Management IC with General purpose pins,
630 RTC, regulators, clock generator, watchdog etc. This driver
631 provides common support for accessing the device; additional drivers
632 must be enabled in order to use the functionality of the device.
635 tristate "Maxim Semiconductor MAX77686/802 PMIC Support"
637 depends on OF || COMPILE_TEST
643 Say yes here to add support for Maxim Semiconductor MAX77686 and
644 MAX77802 which are Power Management IC with an RTC on chip.
645 This driver provides common support for accessing the device;
646 additional drivers must be enabled in order to use the functionality
650 tristate "Maxim Semiconductor MAX77693 PMIC Support"
656 Say yes here to add support for Maxim Semiconductor MAX77693.
657 This is a companion Power Management IC with Flash, Haptic, Charger,
658 and MUIC(Micro USB Interface Controller) controls on chip.
659 This driver provides common support for accessing the device;
660 additional drivers must be enabled in order to use the functionality
664 bool "Maxim Semiconductor MAX77843 PMIC Support"
670 Say yes here to add support for Maxim Semiconductor MAX77843.
671 This is companion Power Management IC with LEDs, Haptic, Charger,
672 Fuel Gauge, MUIC(Micro USB Interface Controller) controls on chip.
673 This driver provides common support for accessing the device;
674 additional drivers must be enabled in order to use the functionality
678 tristate "Maxim Semiconductor MAX8907 PMIC Support"
684 Say yes here to add support for Maxim Semiconductor MAX8907. This is
685 a Power Management IC. This driver provides common support for
686 accessing the device; additional drivers must be enabled in order
687 to use the functionality of the device.
690 bool "Maxim Semiconductor MAX8925 PMIC Support"
694 Say yes here to add support for Maxim Semiconductor MAX8925. This is
695 a Power Management IC. This driver provides common support for
696 accessing the device, additional drivers must be enabled in order
697 to use the functionality of the device.
700 bool "Maxim Semiconductor MAX8997/8966 PMIC Support"
705 Say yes here to add support for Maxim Semiconductor MAX8997/8966.
706 This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic,
707 MUIC controls on chip.
708 This driver provides common support for accessing the device;
709 additional drivers must be enabled in order to use the functionality
713 bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support"
718 Say yes here to add support for Maxim Semiconductor MAX8998 and
719 National Semiconductor LP3974. This is a Power Management IC.
720 This driver provides common support for accessing the device,
721 additional drivers must be enabled in order to use the functionality
725 tristate "MediaTek MT6397 PMIC Support"
729 Say yes here to add support for MediaTek MT6397 PMIC. This is
730 a Power Management IC. This driver provides common support for
731 accessing the device; additional drivers must be enabled in order
732 to use the functionality of the device.
735 tristate "MEN 14F021P00 Board Management Controller Support"
739 Say yes here to add support for the MEN 14F021P00 BMC
740 which is a Board Management Controller connected to the I2C bus.
741 The device supports multiple sub-devices like LED, HWMON and WDT.
742 This driver provides common support for accessing the devices;
743 additional drivers must be enabled in order to use the
744 functionality of the BMC device.
746 This driver can also be built as a module. If so the module
747 will be called menf21bmc.
750 bool "Motorola EZXPCAP Support"
751 depends on SPI_MASTER
753 This enables the PCAP ASIC present on EZX Phones. This is
754 needed for MMC, TouchScreen, Sound, USB, etc..
757 tristate "Support for Motorola CPCAP"
759 depends on OF || COMPILE_TEST
763 Say yes here if you want to include driver for CPCAP.
764 It is used on many Motorola phones and tablets as a PMIC.
765 At least Motorola Droid 4 is known to use CPCAP.
767 config MFD_VIPERBOARD
768 tristate "Nano River Technologies Viperboard"
773 Say yes here if you want support for Nano River Technologies
775 There are mfd cell drivers available for i2c master, adc and
776 both gpios found on the board. The spi part does not yet
778 You need to select the mfd cell drivers separately.
779 The drivers do not support all features the board exposes.
782 tristate "Nokia Retu and Tahvo multi-function device"
787 Retu and Tahvo are a multi-function devices found on Nokia
788 Internet Tablets (770, N800 and N810).
791 tristate "NXP PCF50633"
795 Say yes here if you have NXP PCF50633 chip on your board.
796 This core driver provides register access and IRQ handling
797 facilities, and registers devices for the various functions
798 so that function-specific drivers can bind to them.
801 tristate "NXP PCF50633 ADC"
802 depends on MFD_PCF50633
804 Say yes here if you want to include support for ADC in the
808 tristate "NXP PCF50633 GPIO"
809 depends on MFD_PCF50633
811 Say yes here if you want to include support GPIO for pins on
815 tristate "Philips UCB1400 Core driver"
819 This enables support for the Philips UCB1400 core functions.
820 The UCB1400 is an AC97 audio codec.
822 To compile this driver as a module, choose M here: the
823 module will be called ucb1400_core.
826 tristate "Qualcomm PM8xxx PMIC chips driver"
827 depends on (ARM || HEXAGON)
832 If you say yes to this option, support will be included for the
833 built-in PM8xxx PMIC chips.
835 This is required if your board has a PM8xxx and uses its features,
836 such as: MPPs, GPIOs, regulators, interrupts, and PWM.
838 Say M here if you want to include support for PM8xxx chips as a
839 module. This will build a module called "pm8xxx-core".
842 tristate "Qualcomm Resource Power Manager (RPM)"
843 depends on ARCH_QCOM && OF
845 If you say yes to this option, support will be included for the
846 Resource Power Manager system found in the Qualcomm 8660, 8960 and
849 This is required to access many regulators, clocks and bus
850 frequencies controlled by the RPM on these devices.
852 Say M here if you want to include support for the Qualcomm RPM as a
853 module. This will build a module called "qcom_rpm".
856 tristate "Qualcomm SPMI PMICs"
857 depends on ARCH_QCOM || COMPILE_TEST
862 This enables support for the Qualcomm SPMI PMICs.
863 These PMICs are currently used with the Snapdragon 800 series of
864 SoCs. Note, that this will only be useful paired with descriptions
865 of the independent functions as children nodes in the device tree.
867 Say M here if you want to include support for the SPMI PMIC
868 series as a module. The module will be called "qcom-spmi-pmic".
871 tristate "RDC R-321x southbridge"
875 Say yes here if you want to have support for the RDC R-321x SoC
876 southbridge which provides access to GPIOs and Watchdog using the
877 southbridge PCI device configuration space.
880 tristate "Realtek PCI-E card reader"
884 This supports for Realtek PCI-Express card reader including rts5209,
885 rts5227, rts522A, rts5229, rts5249, rts524A, rts525A, rtl8411, etc.
886 Realtek card reader supports access to many types of memory cards,
887 such as Memory Stick, Memory Stick Pro, Secure Digital and
891 tristate "Richtek RT5033 Power Management IC"
897 This driver provides for the Richtek RT5033 Power Management IC,
898 which includes the I2C driver and the Core APIs. This driver provides
899 common support for accessing the device. The device supports multiple
900 sub-devices like charger, fuel gauge, flash LED, current source,
904 tristate "Realtek USB card reader"
908 Select this option to get support for Realtek USB 2.0 card readers
909 including RTS5129, RTS5139, RTS5179 and RTS5170.
910 Realtek card reader supports access to many types of memory cards,
911 such as Memory Stick Pro, Secure Digital and MultiMediaCard.
914 bool "Ricoh RC5T583 Power Management system device"
919 Select this option to get support for the RICOH583 Power
920 Management system device.
921 This driver provides common support for accessing the device
922 through i2c interface. The device supports multiple sub-devices
923 like GPIO, interrupts, RTC, LDO and DCDC regulators, onkey.
924 Additional drivers must be enabled in order to use the
925 different functionality of the device.
928 tristate "Rockchip RK808/RK818 Power Management Chip"
934 If you say yes here you get support for the RK808 and RK818
935 Power Management chips.
936 This driver provides common support for accessing the device
937 through I2C interface. The device supports multiple sub-devices
938 including interrupts, RTC, LDO & DCDC regulators, and onkey.
941 tristate "Ricoh RN5T567/618 PMIC"
947 Say yes here to add support for the Ricoh RN5T567,
948 RN5T618, RC5T619 PMIC.
949 This driver provides common support for accessing the device,
950 additional drivers must be enabled in order to use the
951 functionality of the device.
954 bool "SAMSUNG Electronics PMIC Series Support"
960 Support for the Samsung Electronics MFD series.
961 This driver provides common support for accessing the device,
962 additional drivers must be enabled in order to use the functionality
965 config MFD_SI476X_CORE
966 tristate "Silicon Laboratories 4761/64/68 AM/FM radio."
971 This is the core driver for the SI476x series of AM/FM
972 radio. This MFD driver connects the radio-si476x V4L2 module
973 and the si476x audio codec.
975 To compile this driver as a module, choose M here: the
976 module will be called si476x-core.
979 tristate "Silicon Motion SM501"
981 This is the core driver for the Silicon Motion SM501 multimedia
982 companion chip. This device is a multifunction device which may
983 provide numerous interfaces including USB host controller, USB gadget,
984 asynchronous serial ports, audio functions, and a dual display video
985 interface. The device may be connected by PCI or local bus with
986 varying functions enabled.
988 config MFD_SM501_GPIO
989 bool "Export GPIO via GPIO layer"
990 depends on MFD_SM501 && GPIOLIB
992 This option uses the gpio library layer to export the 64 GPIO
993 lines on the SM501. The platform data is used to supply the
994 base number for the first GPIO line to register.
997 tristate "Skyworks Solutions SKY81452"
1002 This is the core driver for the Skyworks SKY81452 backlight and
1003 voltage regulator device.
1005 This driver can also be built as a module. If so, the module
1006 will be called sky81452.
1009 bool "SMSC ECE1099 series chips"
1014 If you say yes here you get support for the
1015 ece1099 chips from SMSC.
1017 To compile this driver as a module, choose M here: the
1018 module will be called smsc.
1021 bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions"
1022 default y if ARCH_U300 || ARCH_U8500 || COMPILE_TEST
1024 Say yes here if you have the ABX500 Mixed Signal IC family
1025 chips. This core driver expose register access functions.
1026 Functionality specific drivers using these functions can
1027 remain unchanged when IC changes. Binding of the functions to
1028 actual register access is done by the IC core driver.
1031 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
1032 depends on I2C=y && ABX500_CORE
1034 default y if ARCH_U300
1036 Select this to enable the AB3100 Mixed Signal IC core
1037 functionality. This connects to a AB3100 on the I2C bus
1038 and expose a number of symbols needed for dependent devices
1039 to read and write registers and subscribe to events from
1040 this multi-functional IC. This is needed to use other features
1041 of the AB3100 such as battery-backed RTC, charging control,
1042 LEDs, vibrator, system power and temperature, power management
1046 tristate "ST-Ericsson AB3100 OTP functions"
1047 depends on AB3100_CORE
1048 default y if AB3100_CORE
1050 Select this to enable the AB3100 Mixed Signal IC OTP (one-time
1051 programmable memory) support. This exposes a sysfs file to read
1055 bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
1056 depends on ABX500_CORE && MFD_DB8500_PRCMU
1061 Select this option to enable access to AB8500 power management
1062 chip. This connects to U8500 either on the SSP/SPI bus (deprecated
1063 since hardware version v1.0) or the I2C bus via PRCMU. It also adds
1064 the irq_chip parts for handling the Mixed Signal chip events.
1065 This chip embeds various other multimedia funtionalities as well.
1068 bool "Enable debug info via debugfs"
1069 depends on AB8500_GPADC && DEBUG_FS
1070 default y if DEBUG_FS
1072 Select this option if you want debug information using the debug
1073 filesystem, debugfs.
1076 bool "ST-Ericsson AB8500 GPADC driver"
1077 depends on AB8500_CORE && REGULATOR_AB8500
1080 AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage
1082 config MFD_DB8500_PRCMU
1083 bool "ST-Ericsson DB8500 Power Reset Control Management Unit"
1084 depends on UX500_SOC_DB8500
1087 Select this option to enable support for the DB8500 Power Reset
1088 and Control Management Unit. This is basically an autonomous
1089 system controller running an XP70 microprocessor, which is accessed
1090 through a register map.
1093 bool "STMicroelectronics STMPE"
1094 depends on (I2C=y || SPI_MASTER=y)
1098 Support for the STMPE family of I/O Expanders from
1101 Currently supported devices are:
1103 STMPE811: GPIO, Touchscreen
1104 STMPE1601: GPIO, Keypad
1105 STMPE1801: GPIO, Keypad
1106 STMPE2401: GPIO, Keypad
1107 STMPE2403: GPIO, Keypad
1109 This driver provides common support for accessing the device,
1110 additional drivers must be enabled in order to use the functionality
1111 of the device. Currently available sub drivers are:
1114 Keypad: stmpe-keypad
1115 Touchscreen: stmpe-ts
1117 menu "STMicroelectronics STMPE Interface Drivers"
1118 depends on MFD_STMPE
1121 bool "STMicroelectronics STMPE I2C Interface"
1125 This is used to enable I2C interface of STMPE
1128 bool "STMicroelectronics STMPE SPI Interface"
1129 depends on SPI_MASTER
1131 This is used to enable SPI interface of STMPE
1135 bool "STMicroelectronics STA2X11"
1140 config MFD_SUN6I_PRCM
1141 bool "Allwinner A31 PRCM controller"
1142 depends on ARCH_SUNXI
1145 Support for the PRCM (Power/Reset/Clock Management) unit available
1149 bool "System Controller Register R/W Based on Regmap"
1152 Select this option to enable accessing system control registers
1155 config MFD_DAVINCI_VOICECODEC
1160 config MFD_TI_AM335X_TSCADC
1161 tristate "TI ADC / Touch Screen chip support"
1166 If you say yes here you get support for Texas Instruments series
1167 of Touch Screen /ADC chips.
1168 To compile this driver as a module, choose M here: the
1169 module will be called ti_am335x_tscadc.
1171 config MFD_DM355EVM_MSP
1172 bool "TI DaVinci DM355 EVM microcontroller"
1173 depends on I2C=y && MACH_DAVINCI_DM355_EVM
1175 This driver supports the MSP430 microcontroller used on these
1176 boards. MSP430 firmware manages resets and power sequencing,
1177 inputs from buttons and the IR remote, LEDs, an RTC, and more.
1180 tristate "TI/National Semiconductor LP3943 MFD Driver"
1185 Support for the TI/National Semiconductor LP3943.
1186 This driver consists of GPIO and PWM drivers.
1187 With these functionalities, it can be used for LED string control or
1188 general usage such like a GPIO controller and a PWM controller.
1191 bool "TI LP8788 Power Management Unit Driver"
1197 TI LP8788 PMU supports regulators, battery charger, RTC,
1198 ADC, backlight driver and current sinks.
1201 tristate "TI Lighting Management Unit driver"
1206 Say yes here to enable support for TI LMU chips.
1208 TI LMU MFD supports LM3532, LM3631, LM3632, LM3633, LM3695 and LM3697.
1209 It consists of backlight, LED and regulator driver.
1210 It provides consistent device controls for lighting functions.
1212 config MFD_OMAP_USB_HOST
1213 bool "TI OMAP USBHS core and TLL driver"
1214 depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3
1217 This is the core driver for the OAMP EHCI and OHCI drivers.
1218 This MFD driver does the required setup functionalities for
1219 OMAP USB Host drivers.
1222 bool "TI Palmas series chips"
1228 If you say yes here you get support for the Palmas
1229 series of PMIC chips from Texas Instruments.
1232 tristate "TI TPS61050/61052 Boost Converters"
1237 select REGULATOR_FIXED_VOLTAGE
1239 This option enables a driver for the TP61050/TPS61052
1240 high-power "white LED driver". This boost converter is
1241 sometimes used for other things than white LEDs, and
1242 also contains a GPIO pin.
1245 tristate "TI TPS6501x Power Management chips"
1246 depends on I2C && GPIOLIB
1247 default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
1249 If you say yes here you get support for the TPS6501x series of
1250 Power Management chips. These include voltage regulators,
1251 lithium ion/polymer battery charging, and other features that
1252 are often used in portable devices like cell phones and cameras.
1254 This driver can also be built as a module. If so, the module
1255 will be called tps65010.
1258 tristate "TI TPS6507x Power Management / Touch Screen chips"
1262 If you say yes here you get support for the TPS6507x series of
1263 Power Management / Touch Screen chips. These include voltage
1264 regulators, lithium ion/polymer battery charging, touch screen
1265 and other features that are often used in portable devices.
1266 This driver can also be built as a module. If so, the module
1267 will be called tps6507x.
1270 tristate "TI TPS65086 Power Management Integrated Chips (PMICs)"
1276 If you say yes here you get support for the TPS65086 series of
1277 Power Management chips.
1278 This driver provides common support for accessing the device,
1279 additional drivers must be enabled in order to use the
1280 functionality of the device.
1282 config TPS65911_COMPARATOR
1286 bool "TI TPS65090 Power Management chips"
1292 If you say yes here you get support for the TPS65090 series of
1293 Power Management chips.
1294 This driver provides common support for accessing the device,
1295 additional drivers must be enabled in order to use the
1296 functionality of the device.
1299 tristate "TI TPS65217 Power Management / White LED chips"
1305 If you say yes here you get support for the TPS65217 series of
1306 Power Management / White LED chips.
1307 These include voltage regulators, lithium ion/polymer battery
1308 charger, wled and other features that are often used in portable
1311 This driver can also be built as a module. If so, the module
1312 will be called tps65217.
1314 config MFD_TI_LP873X
1315 tristate "TI LP873X Power Management IC"
1320 If you say yes here then you get support for the LP873X series of
1321 Power Management Integrated Circuits (PMIC).
1322 These include voltage regulators, thermal protection, configurable
1323 General Purpose Outputs (GPO) that are used in portable devices.
1325 This driver can also be built as a module. If so, the module
1326 will be called lp873x.
1329 tristate "TI TPS65218 Power Management chips"
1335 If you say yes here you get support for the TPS65218 series of
1336 Power Management chips.
1337 These include voltage regulators, gpio and other features
1338 that are often used in portable devices. Only regulator
1339 component is currently supported.
1341 This driver can also be built as a module. If so, the module
1342 will be called tps65218.
1345 bool "TI TPS6586x Power Management chips"
1350 If you say yes here you get support for the TPS6586X series of
1351 Power Management chips.
1352 This driver provides common support for accessing the device,
1353 additional drivers must be enabled in order to use the
1354 functionality of the device.
1356 This driver can also be built as a module. If so, the module
1357 will be called tps6586x.
1360 bool "TI TPS65910 Power Management chip"
1362 depends on GPIOLIB || COMPILE_TEST
1368 if you say yes here you get support for the TPS65910 series of
1369 Power Management chips.
1377 config MFD_TPS65912_I2C
1378 tristate "TI TPS65912 Power Management chip with I2C"
1383 If you say yes here you get support for the TPS65912 series of
1384 PM chips with I2C interface.
1386 config MFD_TPS65912_SPI
1387 tristate "TI TPS65912 Power Management chip with SPI"
1390 depends on SPI_MASTER
1392 If you say yes here you get support for the TPS65912 series of
1393 PM chips with SPI interface.
1396 bool "TI TPS80031/TPS80032 Power Management chips"
1402 If you say yes here you get support for the Texas Instruments
1403 TPS80031/ TPS80032 Fully Integrated Power Management with Power
1404 Path and Battery Charger. The device provides five configurable
1405 step-down converters, 11 general purpose LDOs, USB OTG Module,
1406 ADC, RTC, 2 PWM, System Voltage Regulator/Battery Charger with
1407 Power Path from USB, 32K clock generator.
1410 bool "TI TWL4030/TWL5030/TWL6030/TPS659x0 Support"
1415 Say yes here if you have TWL4030 / TWL6030 family chip on your board.
1416 This core driver provides register access and IRQ handling
1417 facilities, and registers devices for the various functions
1418 so that function-specific drivers can bind to them.
1420 These multi-function chips are found on many OMAP2 and OMAP3
1421 boards, providing power management, RTC, GPIO, keypad, a
1422 high speed USB OTG transceiver, an audio codec (on most
1423 versions) and many other features.
1425 config TWL4030_POWER
1426 bool "TI TWL4030 power resources"
1427 depends on TWL4030_CORE && ARM
1429 Say yes here if you want to use the power resources on the
1430 TWL4030 family chips. Most of these resources are regulators,
1431 which have a separate driver; some are control signals, such
1432 as clock request handshaking.
1434 This driver uses board-specific data to initialize the resources
1435 and load scripts controlling which resources are switched off/on
1436 or reset when a sleep, wakeup or warm reset event occurs.
1438 config MFD_TWL4030_AUDIO
1439 bool "TI TWL4030 Audio"
1440 depends on TWL4030_CORE
1445 bool "TI TWL6040 audio codec"
1452 Say yes here if you want support for Texas Instruments TWL6040 audio
1454 This driver provides common support for accessing the device,
1455 additional drivers must be enabled in order to use the
1456 functionality of the device (audio, vibra).
1459 bool "TI TWL92330/Menelaus PM chip"
1460 depends on I2C=y && ARCH_OMAP2
1462 If you say yes here you get support for the Texas Instruments
1463 TWL92330/Menelaus Power Management chip. This include voltage
1464 regulators, Dual slot memory card transceivers, real-time clock
1465 and other features that are often used in portable devices like
1466 cell phones and PDAs.
1468 config MFD_WL1273_CORE
1469 tristate "TI WL1273 FM radio"
1474 This is the core driver for the TI WL1273 FM radio. This MFD
1475 driver connects the radio-wl1273 V4L2 module and the wl1273
1479 tristate "TI/National Semiconductor LM3533 Lighting Power chip"
1484 Say yes here to enable support for National Semiconductor / TI
1485 LM3533 Lighting Power chips.
1487 This driver provides common support for accessing the device;
1488 additional drivers must be enabled in order to use the LED,
1489 backlight or ambient-light-sensor functionality of the device.
1491 config MFD_TIMBERDALE
1492 tristate "Timberdale FPGA"
1494 depends on PCI && GPIOLIB && (X86_32 || COMPILE_TEST)
1496 This is the core driver for the timberdale FPGA. This device is a
1497 multifunction device which exposes numerous platform devices.
1499 The timberdale FPGA can be found on the Intel Atom development board
1500 for in-vehicle infontainment, called Russellville.
1503 bool "Toshiba TC35892 and variants"
1508 Support for the Toshiba TC35892 and variants I/O Expander.
1510 This driver provides common support for accessing the device,
1511 additional drivers must be enabled in order to use the
1512 functionality of the device.
1519 bool "Toshiba T7L66XB"
1520 depends on ARM && HAVE_CLK
1524 Support for Toshiba Mobile IO Controller T7L66XB
1527 bool "Toshiba TC6387XB"
1528 depends on ARM && HAVE_CLK
1532 Support for Toshiba Mobile IO Controller TC6387XB
1535 bool "Toshiba TC6393XB"
1536 depends on ARM && HAVE_CLK
1541 Support for Toshiba Mobile IO Controller TC6393XB
1544 tristate "VIA VX855/VX875 integrated south bridge"
1548 Say yes here to enable support for various functions of the
1549 VIA VX855/VX875 south bridge. You will need to enable the vx855_spi
1550 and/or vx855_gpio drivers for this to do anything useful.
1558 config MFD_ARIZONA_I2C
1559 tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with I2C"
1564 Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform
1565 audio SoC core functionality controlled via I2C.
1567 config MFD_ARIZONA_SPI
1568 tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with SPI"
1571 depends on SPI_MASTER
1573 Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform
1574 audio SoC core functionality controlled via SPI.
1577 bool "Cirrus Logic CS47L24 and WM1831"
1578 depends on MFD_ARIZONA
1580 Support for Cirrus Logic CS47L24 and WM1831 low power audio SoC
1583 bool "Wolfson Microelectronics WM5102"
1584 depends on MFD_ARIZONA
1586 Support for Wolfson Microelectronics WM5102 low power audio SoC
1589 bool "Wolfson Microelectronics WM5110 and WM8280/WM8281"
1590 depends on MFD_ARIZONA
1592 Support for Wolfson Microelectronics WM5110 and WM8280/WM8281
1596 bool "Wolfson Microelectronics WM8997"
1597 depends on MFD_ARIZONA
1599 Support for Wolfson Microelectronics WM8997 low power audio SoC
1602 bool "Wolfson Microelectronics WM8998"
1603 depends on MFD_ARIZONA
1605 Support for Wolfson Microelectronics WM8998 low power audio SoC
1608 bool "Wolfson Microelectronics WM8400"
1613 Support for the Wolfson Microelecronics WM8400 PMIC and audio
1614 CODEC. This driver provides common support for accessing
1615 the device, additional drivers must be enabled in order to use
1616 the functionality of the device.
1621 config MFD_WM831X_I2C
1622 bool "Wolfson Microelectronics WM831x/2x PMICs with I2C"
1629 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
1630 when controlled using I2C. This driver provides common support
1631 for accessing the device, additional drivers must be enabled in
1632 order to use the functionality of the device.
1634 config MFD_WM831X_SPI
1635 bool "Wolfson Microelectronics WM831x/2x PMICs with SPI"
1640 depends on SPI_MASTER
1642 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
1643 when controlled using SPI. This driver provides common support
1644 for accessing the device, additional drivers must be enabled in
1645 order to use the functionality of the device.
1650 config MFD_WM8350_I2C
1651 bool "Wolfson Microelectronics WM8350 with I2C"
1656 The WM8350 is an integrated audio and power management
1657 subsystem with watchdog and RTC functionality for embedded
1658 systems. This option enables core support for the WM8350 with
1659 I2C as the control interface. Additional options must be
1660 selected to enable support for the functionality of the chip.
1663 tristate "Wolfson Microelectronics WM8994"
1669 The WM8994 is a highly integrated hi-fi CODEC designed for
1670 smartphone applications. As well as audio functionality it
1671 has on board GPIO and regulator functionality which is
1672 supported via the relevant subsystems. This driver provides
1673 core support for the WM8994, in order to use the actual
1674 functionaltiy of the device other drivers must be enabled.
1677 tristate "Support for ST Microelectronics STw481x"
1678 depends on I2C && (ARCH_NOMADIK || COMPILE_TEST)
1682 Select this option to enable the STw481x chip driver used
1683 in various ST Microelectronics and ST-Ericsson embedded
1686 config MFD_STM32_TIMERS
1687 tristate "Support for STM32 Timers"
1688 depends on (ARCH_STM32 && OF) || COMPILE_TEST
1693 Select this option to enable STM32 timers driver used
1694 for PWM and IIO Timer. This driver allow to share the
1695 registers between the others drivers.
1697 menu "Multimedia Capabilities Port drivers"
1698 depends on ARCH_SA1100
1705 tristate "Support SA11x0 MCP interface"
1706 depends on ARCH_SA1100
1711 tristate "Support for UCB1200 / UCB1300"
1712 depends on MCP_SA11X0
1715 config MCP_UCB1200_TS
1716 tristate "Touchscreen interface support"
1717 depends on MCP_UCB1200 && INPUT
1721 config MFD_VEXPRESS_SYSREG
1722 bool "Versatile Express System Registers"
1723 depends on VEXPRESS_CONFIG && GPIOLIB && !ARCH_USES_GETTIMEOFFSET
1726 select GPIO_GENERIC_PLATFORM
1730 System Registers are the platform configuration block
1731 on the ARM Ltd. Versatile Express board.