1# SPDX-License-Identifier: GPL-2.0-only 2# 3# Multifunction miscellaneous devices 4# 5 6if HAS_IOMEM 7menu "Multifunction device drivers" 8 9config MFD_CORE 10 tristate 11 select IRQ_DOMAIN 12 default n 13 14config MFD_CS5535 15 tristate "AMD CS5535 and CS5536 southbridge core functions" 16 select MFD_CORE 17 depends on PCI && (X86_32 || (X86 && COMPILE_TEST)) 18 ---help--- 19 This is the core driver for CS5535/CS5536 MFD functions. This is 20 necessary for using the board's GPIO and MFGPT functionality. 21 22config MFD_ALTERA_A10SR 23 bool "Altera Arria10 DevKit System Resource chip" 24 depends on ARCH_SOCFPGA && SPI_MASTER=y && OF 25 select REGMAP_SPI 26 select MFD_CORE 27 help 28 Support for the Altera Arria10 DevKit MAX5 System Resource chip 29 using the SPI interface. This driver provides common support for 30 accessing the external gpio extender (LEDs & buttons) and 31 power supply alarms (hwmon). 32 33config MFD_ALTERA_SYSMGR 34 bool "Altera SOCFPGA System Manager" 35 depends on (ARCH_SOCFPGA || ARCH_STRATIX10) && OF 36 select MFD_SYSCON 37 help 38 Select this to get System Manager support for all Altera branded 39 SOCFPGAs. The SOCFPGA System Manager handles all SOCFPGAs by 40 using regmap_mmio accesses for ARM32 parts and SMC calls to 41 EL3 for ARM64 parts. 42 43config MFD_ACT8945A 44 tristate "Active-semi ACT8945A" 45 select MFD_CORE 46 select REGMAP_I2C 47 depends on I2C && OF 48 help 49 Support for the ACT8945A PMIC from Active-semi. This device 50 features three step-down DC/DC converters and four low-dropout 51 linear regulators, along with a complete ActivePath battery 52 charger. 53 54config MFD_SUN4I_GPADC 55 tristate "Allwinner sunxi platforms' GPADC MFD driver" 56 select MFD_CORE 57 select REGMAP_MMIO 58 select REGMAP_IRQ 59 depends on ARCH_SUNXI || COMPILE_TEST 60 depends on !TOUCHSCREEN_SUN4I 61 help 62 Select this to get support for Allwinner SoCs (A10, A13 and A31) ADC. 63 This driver will only map the hardware interrupt and registers, you 64 have to select individual drivers based on this MFD to be able to use 65 the ADC or the thermal sensor. This will try to probe the ADC driver 66 sun4i-gpadc-iio and the hwmon driver iio_hwmon. 67 68 To compile this driver as a module, choose M here: the module will be 69 called sun4i-gpadc. 70 71config MFD_AS3711 72 bool "AMS AS3711" 73 select MFD_CORE 74 select REGMAP_I2C 75 select REGMAP_IRQ 76 depends on I2C=y 77 help 78 Support for the AS3711 PMIC from AMS 79 80config MFD_AS3722 81 tristate "ams AS3722 Power Management IC" 82 select MFD_CORE 83 select REGMAP_I2C 84 select REGMAP_IRQ 85 depends on I2C=y && OF 86 help 87 The ams AS3722 is a compact system PMU suitable for mobile phones, 88 tablets etc. It has 4 DC/DC step-down regulators, 3 DC/DC step-down 89 controllers, 11 LDOs, RTC, automatic battery, temperature and 90 over current monitoring, GPIOs, ADC and a watchdog. 91 92config PMIC_ADP5520 93 bool "Analog Devices ADP5520/01 MFD PMIC Core Support" 94 depends on I2C=y 95 help 96 Say yes here to add support for Analog Devices AD5520 and ADP5501, 97 Multifunction Power Management IC. This includes 98 the I2C driver and the core APIs _only_, you have to select 99 individual components like LCD backlight, LEDs, GPIOs and Kepad 100 under the corresponding menus. 101 102config MFD_AAT2870_CORE 103 bool "AnalogicTech AAT2870" 104 select MFD_CORE 105 depends on I2C=y 106 depends on GPIOLIB || COMPILE_TEST 107 help 108 If you say yes here you get support for the AAT2870. 109 This driver provides common support for accessing the device, 110 additional drivers must be enabled in order to use the 111 functionality of the device. 112 113config MFD_AT91_USART 114 tristate "AT91 USART Driver" 115 select MFD_CORE 116 depends on ARCH_AT91 || COMPILE_TEST 117 help 118 Select this to get support for AT91 USART IP. This is a wrapper 119 over at91-usart-serial driver and usart-spi-driver. Only one function 120 can be used at a time. The choice is done at boot time by the probe 121 function of this MFD driver according to a device tree property. 122 123config MFD_ATMEL_FLEXCOM 124 tristate "Atmel Flexcom (Flexible Serial Communication Unit)" 125 select MFD_CORE 126 depends on OF 127 help 128 Select this to get support for Atmel Flexcom. This is a wrapper 129 which embeds a SPI controller, a I2C controller and a USART. Only 130 one function can be used at a time. The choice is done at boot time 131 by the probe function of this MFD driver according to a device tree 132 property. 133 134config MFD_ATMEL_HLCDC 135 tristate "Atmel HLCDC (High-end LCD Controller)" 136 select MFD_CORE 137 select REGMAP_MMIO 138 depends on OF 139 help 140 If you say yes here you get support for the HLCDC block. 141 This driver provides common support for accessing the device, 142 additional drivers must be enabled in order to use the 143 functionality of the device. 144 145config MFD_ATMEL_SMC 146 bool 147 select MFD_SYSCON 148 149config MFD_BCM590XX 150 tristate "Broadcom BCM590xx PMUs" 151 select MFD_CORE 152 select REGMAP_I2C 153 depends on I2C 154 help 155 Support for the BCM590xx PMUs from Broadcom 156 157config MFD_BD9571MWV 158 tristate "ROHM BD9571MWV PMIC" 159 select MFD_CORE 160 select REGMAP_I2C 161 select REGMAP_IRQ 162 depends on I2C 163 help 164 Support for the ROHM BD9571MWV PMIC, which contains single 165 voltage regulator, voltage sampling units, GPIO block and 166 watchdog block. 167 168 This driver can also be built as a module. If so, the module 169 will be called bd9571mwv. 170 171config MFD_AC100 172 tristate "X-Powers AC100" 173 select MFD_CORE 174 depends on SUNXI_RSB 175 help 176 If you say Y here you get support for the X-Powers AC100 audio codec 177 IC. 178 This driver include only the core APIs. You have to select individual 179 components like codecs or RTC under the corresponding menus. 180 181config MFD_AXP20X 182 tristate 183 select MFD_CORE 184 select REGMAP_IRQ 185 186config MFD_AXP20X_I2C 187 tristate "X-Powers AXP series PMICs with I2C" 188 select MFD_AXP20X 189 select REGMAP_I2C 190 depends on I2C 191 help 192 If you say Y here you get support for the X-Powers AXP series power 193 management ICs (PMICs) controlled with I2C. 194 This driver include only the core APIs. You have to select individual 195 components like regulators or the PEK (Power Enable Key) under the 196 corresponding menus. 197 198 Note on x86 this provides an ACPI OpRegion, so this must be 'y' 199 (builtin) and not a module, as the OpRegion must be available as 200 soon as possible. For the same reason the I2C bus driver options 201 I2C_DESIGNWARE_PLATFORM and I2C_DESIGNWARE_BAYTRAIL must be 'y' too. 202 203config MFD_AXP20X_RSB 204 tristate "X-Powers AXP series PMICs with RSB" 205 select MFD_AXP20X 206 depends on SUNXI_RSB 207 help 208 If you say Y here you get support for the X-Powers AXP series power 209 management ICs (PMICs) controlled with RSB. 210 This driver include only the core APIs. You have to select individual 211 components like regulators or the PEK (Power Enable Key) under the 212 corresponding menus. 213 214config MFD_CROS_EC 215 tristate "ChromeOS Embedded Controller" 216 select MFD_CORE 217 select CHROME_PLATFORMS 218 select CROS_EC_PROTO 219 depends on X86 || ARM || ARM64 || COMPILE_TEST 220 help 221 If you say Y here you get support for the ChromeOS Embedded 222 Controller (EC) providing keyboard, battery and power services. 223 You also need to enable the driver for the bus you are using. The 224 protocol for talking to the EC is defined by the bus driver. 225 226config MFD_CROS_EC_CHARDEV 227 tristate "Chrome OS Embedded Controller userspace device interface" 228 depends on MFD_CROS_EC 229 ---help--- 230 This driver adds support to talk with the ChromeOS EC from userspace. 231 232 If you have a supported Chromebook, choose Y or M here. 233 The module will be called cros_ec_dev. 234 235config MFD_MADERA 236 tristate "Cirrus Logic Madera codecs" 237 select MFD_CORE 238 select REGMAP 239 select REGMAP_IRQ 240 select MADERA_IRQ 241 select PINCTRL 242 select PINCTRL_MADERA 243 help 244 Support for the Cirrus Logic Madera platform audio codecs 245 246config MFD_MADERA_I2C 247 tristate "Cirrus Logic Madera codecs with I2C" 248 depends on MFD_MADERA 249 depends on I2C 250 select REGMAP_I2C 251 help 252 Support for the Cirrus Logic Madera platform audio SoC 253 core functionality controlled via I2C. 254 255config MFD_MADERA_SPI 256 tristate "Cirrus Logic Madera codecs with SPI" 257 depends on MFD_MADERA 258 depends on SPI_MASTER 259 select REGMAP_SPI 260 help 261 Support for the Cirrus Logic Madera platform audio SoC 262 core functionality controlled via SPI. 263 264config MFD_CS47L35 265 bool "Cirrus Logic CS47L35" 266 select PINCTRL_CS47L35 267 depends on MFD_MADERA 268 help 269 Support for Cirrus Logic CS47L35 Smart Codec 270 271config MFD_CS47L85 272 bool "Cirrus Logic CS47L85" 273 select PINCTRL_CS47L85 274 depends on MFD_MADERA 275 help 276 Support for Cirrus Logic CS47L85 Smart Codec 277 278config MFD_CS47L90 279 bool "Cirrus Logic CS47L90/91" 280 select PINCTRL_CS47L90 281 depends on MFD_MADERA 282 help 283 Support for Cirrus Logic CS47L90 and CS47L91 Smart Codecs 284 285config MFD_ASIC3 286 bool "Compaq ASIC3" 287 depends on GPIOLIB && ARM 288 select MFD_CORE 289 ---help--- 290 This driver supports the ASIC3 multifunction chip found on many 291 PDAs (mainly iPAQ and HTC based ones) 292 293config PMIC_DA903X 294 bool "Dialog Semiconductor DA9030/DA9034 PMIC Support" 295 depends on I2C=y 296 help 297 Say yes here to add support for Dialog Semiconductor DA9030 (a.k.a 298 ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC 299 usually found on PXA processors-based platforms. This includes 300 the I2C driver and the core APIs _only_, you have to select 301 individual components like LCD backlight, voltage regulators, 302 LEDs and battery-charger under the corresponding menus. 303 304config PMIC_DA9052 305 bool 306 select MFD_CORE 307 308config MFD_DA9052_SPI 309 bool "Dialog Semiconductor DA9052/53 PMIC variants with SPI" 310 select REGMAP_SPI 311 select REGMAP_IRQ 312 select PMIC_DA9052 313 depends on SPI_MASTER=y 314 help 315 Support for the Dialog Semiconductor DA9052 PMIC 316 when controlled using SPI. This driver provides common support 317 for accessing the device, additional drivers must be enabled in 318 order to use the functionality of the device. 319 320config MFD_DA9052_I2C 321 bool "Dialog Semiconductor DA9052/53 PMIC variants with I2C" 322 select REGMAP_I2C 323 select REGMAP_IRQ 324 select PMIC_DA9052 325 depends on I2C=y 326 help 327 Support for the Dialog Semiconductor DA9052 PMIC 328 when controlled using I2C. This driver provides common support 329 for accessing the device, additional drivers must be enabled in 330 order to use the functionality of the device. 331 332config MFD_DA9055 333 bool "Dialog Semiconductor DA9055 PMIC Support" 334 select REGMAP_I2C 335 select REGMAP_IRQ 336 select MFD_CORE 337 depends on I2C=y 338 help 339 Say yes here for support of Dialog Semiconductor DA9055. This is 340 a Power Management IC. This driver provides common support for 341 accessing the device as well as the I2C interface to the chip itself. 342 Additional drivers must be enabled in order to use the functionality 343 of the device. 344 345 This driver can be built as a module. If built as a module it will be 346 called "da9055" 347 348config MFD_DA9062 349 tristate "Dialog Semiconductor DA9062/61 PMIC Support" 350 select MFD_CORE 351 select REGMAP_I2C 352 select REGMAP_IRQ 353 depends on I2C 354 help 355 Say yes here for support for the Dialog Semiconductor DA9061 and 356 DA9062 PMICs. 357 This includes the I2C driver and core APIs. 358 Additional drivers must be enabled in order to use the functionality 359 of the device. 360 361config MFD_DA9063 362 tristate "Dialog Semiconductor DA9063 PMIC Support" 363 select MFD_CORE 364 select REGMAP_I2C 365 select REGMAP_IRQ 366 depends on I2C 367 help 368 Say yes here for support for the Dialog Semiconductor DA9063 PMIC. 369 This includes the I2C driver and core APIs. 370 Additional drivers must be enabled in order to use the functionality 371 of the device. 372 373config MFD_DA9150 374 tristate "Dialog Semiconductor DA9150 Charger Fuel-Gauge chip" 375 depends on I2C 376 select MFD_CORE 377 select REGMAP_I2C 378 select REGMAP_IRQ 379 help 380 This adds support for the DA9150 integrated charger and fuel-gauge 381 chip. This driver provides common support for accessing the device. 382 Additional drivers must be enabled in order to use the specific 383 features of the device. 384 385config MFD_DLN2 386 tristate "Diolan DLN2 support" 387 select MFD_CORE 388 depends on USB 389 help 390 This adds support for Diolan USB-I2C/SPI/GPIO Master Adapter 391 DLN-2. Additional drivers such as I2C_DLN2, GPIO_DLN2, 392 etc. must be enabled in order to use the functionality of 393 the device. 394 395config MFD_EXYNOS_LPASS 396 tristate "Samsung Exynos SoC Low Power Audio Subsystem" 397 depends on ARCH_EXYNOS || COMPILE_TEST 398 select MFD_CORE 399 select REGMAP_MMIO 400 help 401 Select this option to enable support for Samsung Exynos Low Power 402 Audio Subsystem. 403 404config MFD_MC13XXX 405 tristate 406 depends on (SPI_MASTER || I2C) 407 select MFD_CORE 408 select REGMAP_IRQ 409 help 410 Enable support for the Freescale MC13783 and MC13892 PMICs. 411 This driver provides common support for accessing the device, 412 additional drivers must be enabled in order to use the 413 functionality of the device. 414 415config MFD_MC13XXX_SPI 416 tristate "Freescale MC13783 and MC13892 SPI interface" 417 depends on SPI_MASTER 418 select REGMAP_SPI 419 select MFD_MC13XXX 420 help 421 Select this if your MC13xxx is connected via an SPI bus. 422 423config MFD_MC13XXX_I2C 424 tristate "Freescale MC13892 I2C interface" 425 depends on I2C 426 select REGMAP_I2C 427 select MFD_MC13XXX 428 help 429 Select this if your MC13xxx is connected via an I2C bus. 430 431config MFD_MXS_LRADC 432 tristate "Freescale i.MX23/i.MX28 LRADC" 433 depends on ARCH_MXS || COMPILE_TEST 434 select MFD_CORE 435 select STMP_DEVICE 436 help 437 Say yes here to build support for the Low Resolution 438 Analog-to-Digital Converter (LRADC) found on the i.MX23 and i.MX28 439 processors. This driver provides common support for accessing the 440 device, additional drivers must be enabled in order to use the 441 functionality of the device: 442 mxs-lradc-adc for ADC readings 443 mxs-lradc-ts for touchscreen support 444 445 This driver can also be built as a module. If so, the module will be 446 called mxs-lradc. 447 448config MFD_MX25_TSADC 449 tristate "Freescale i.MX25 integrated Touchscreen and ADC unit" 450 select REGMAP_MMIO 451 depends on (SOC_IMX25 && OF) || COMPILE_TEST 452 help 453 Enable support for the integrated Touchscreen and ADC unit of the 454 i.MX25 processors. They consist of a conversion queue for general 455 purpose ADC and a queue for Touchscreens. 456 457config MFD_HI6421_PMIC 458 tristate "HiSilicon Hi6421 PMU/Codec IC" 459 depends on OF 460 select MFD_CORE 461 select REGMAP_MMIO 462 help 463 Add support for HiSilicon Hi6421 PMIC. Hi6421 includes multi- 464 functions, such as regulators, RTC, codec, Coulomb counter, etc. 465 This driver includes core APIs _only_. You have to select 466 individul components like voltage regulators under corresponding 467 menus in order to enable them. 468 We communicate with the Hi6421 via memory-mapped I/O. 469 470config MFD_HI655X_PMIC 471 tristate "HiSilicon Hi655X series PMU/Codec IC" 472 depends on ARCH_HISI || COMPILE_TEST 473 depends on OF 474 select MFD_CORE 475 select REGMAP_MMIO 476 select REGMAP_IRQ 477 help 478 Select this option to enable Hisilicon hi655x series pmic driver. 479 480config HTC_PASIC3 481 tristate "HTC PASIC3 LED/DS1WM chip support" 482 select MFD_CORE 483 help 484 This core driver provides register access for the LED/DS1WM 485 chips labeled "AIC2" and "AIC3", found on HTC Blueangel and 486 HTC Magician devices, respectively. Actual functionality is 487 handled by the leds-pasic3 and ds1wm drivers. 488 489config HTC_I2CPLD 490 bool "HTC I2C PLD chip support" 491 depends on I2C=y && GPIOLIB 492 help 493 If you say yes here you get support for the supposed CPLD 494 found on omap850 HTC devices like the HTC Wizard and HTC Herald. 495 This device provides input and output GPIOs through an I2C 496 interface to one or more sub-chips. 497 498config MFD_INTEL_QUARK_I2C_GPIO 499 tristate "Intel Quark MFD I2C GPIO" 500 depends on PCI 501 depends on X86 502 depends on COMMON_CLK 503 select MFD_CORE 504 help 505 This MFD provides support for I2C and GPIO that exist only 506 in a single PCI device. It splits the 2 IO devices to 507 their respective IO driver. 508 The GPIO exports a total amount of 8 interrupt-capable GPIOs. 509 510config LPC_ICH 511 tristate "Intel ICH LPC" 512 depends on PCI 513 select MFD_CORE 514 help 515 The LPC bridge function of the Intel ICH provides support for 516 many functional units. This driver provides needed support for 517 other drivers to control these functions, currently GPIO and 518 watchdog. 519 520config LPC_SCH 521 tristate "Intel SCH LPC" 522 depends on PCI 523 select MFD_CORE 524 help 525 LPC bridge function of the Intel SCH provides support for 526 System Management Bus and General Purpose I/O. 527 528config INTEL_SOC_PMIC 529 bool "Support for Crystal Cove PMIC" 530 depends on ACPI && HAS_IOMEM && I2C=y && GPIOLIB && COMMON_CLK 531 depends on X86 || COMPILE_TEST 532 depends on I2C_DESIGNWARE_PLATFORM=y 533 select MFD_CORE 534 select REGMAP_I2C 535 select REGMAP_IRQ 536 help 537 Select this option to enable support for Crystal Cove PMIC 538 on some Intel SoC systems. The PMIC provides ADC, GPIO, 539 thermal, charger and related power management functions 540 on these systems. 541 542 This option is a bool as it provides an ACPI OpRegion which must be 543 available before any devices using it are probed. This option also 544 causes the designware-i2c driver to be builtin for the same reason. 545 546config INTEL_SOC_PMIC_BXTWC 547 tristate "Support for Intel Broxton Whiskey Cove PMIC" 548 depends on INTEL_PMC_IPC 549 select MFD_CORE 550 select REGMAP_IRQ 551 help 552 Select this option to enable support for Whiskey Cove PMIC 553 on Intel Broxton systems. The PMIC provides ADC, GPIO, 554 thermal, charger and related power management functions 555 on these systems. 556 557config INTEL_SOC_PMIC_CHTWC 558 bool "Support for Intel Cherry Trail Whiskey Cove PMIC" 559 depends on ACPI && HAS_IOMEM && I2C=y && COMMON_CLK 560 depends on X86 || COMPILE_TEST 561 depends on I2C_DESIGNWARE_PLATFORM=y 562 select MFD_CORE 563 select REGMAP_I2C 564 select REGMAP_IRQ 565 help 566 Select this option to enable support for the Intel Cherry Trail 567 Whiskey Cove PMIC found on some Intel Cherry Trail systems. 568 569 This option is a bool as it provides an ACPI OpRegion which must be 570 available before any devices using it are probed. This option also 571 causes the designware-i2c driver to be builtin for the same reason. 572 573config INTEL_SOC_PMIC_CHTDC_TI 574 tristate "Support for Intel Cherry Trail Dollar Cove TI PMIC" 575 depends on GPIOLIB 576 depends on I2C 577 depends on ACPI 578 depends on X86 579 select MFD_CORE 580 select REGMAP_I2C 581 select REGMAP_IRQ 582 help 583 Select this option for supporting Dollar Cove (TI version) PMIC 584 device that is found on some Intel Cherry Trail systems. 585 586config MFD_INTEL_LPSS 587 tristate 588 select COMMON_CLK 589 select MFD_CORE 590 591config MFD_INTEL_LPSS_ACPI 592 tristate "Intel Low Power Subsystem support in ACPI mode" 593 select MFD_INTEL_LPSS 594 depends on X86 && ACPI 595 help 596 This driver supports Intel Low Power Subsystem (LPSS) devices such as 597 I2C, SPI and HS-UART starting from Intel Sunrisepoint (Intel Skylake 598 PCH) in ACPI mode. 599 600config MFD_INTEL_LPSS_PCI 601 tristate "Intel Low Power Subsystem support in PCI mode" 602 select MFD_INTEL_LPSS 603 depends on X86 && PCI 604 help 605 This driver supports Intel Low Power Subsystem (LPSS) devices such as 606 I2C, SPI and HS-UART starting from Intel Sunrisepoint (Intel Skylake 607 PCH) in PCI mode. 608 609config MFD_INTEL_MSIC 610 bool "Intel MSIC" 611 depends on INTEL_SCU_IPC 612 select MFD_CORE 613 help 614 Select this option to enable access to Intel MSIC (Avatele 615 Passage) chip. This chip embeds audio, battery, GPIO, etc. 616 devices used in Intel Medfield platforms. 617 618config MFD_IPAQ_MICRO 619 bool "Atmel Micro ASIC (iPAQ h3100/h3600/h3700) Support" 620 depends on SA1100_H3100 || SA1100_H3600 621 select MFD_CORE 622 help 623 Select this to get support for the Microcontroller found in 624 the Compaq iPAQ handheld computers. This is an Atmel 625 AT90LS8535 microcontroller flashed with a special iPAQ 626 firmware using the custom protocol implemented in this driver. 627 628config MFD_JANZ_CMODIO 629 tristate "Janz CMOD-IO PCI MODULbus Carrier Board" 630 select MFD_CORE 631 depends on PCI 632 help 633 This is the core driver for the Janz CMOD-IO PCI MODULbus 634 carrier board. This device is a PCI to MODULbus bridge which may 635 host many different types of MODULbus daughterboards, including 636 CAN and GPIO controllers. 637 638config MFD_JZ4740_ADC 639 bool "Janz JZ4740 ADC core" 640 select MFD_CORE 641 select GENERIC_IRQ_CHIP 642 depends on MACH_JZ4740 643 help 644 Say yes here if you want support for the ADC unit in the JZ4740 SoC. 645 This driver is necessary for jz4740-battery and jz4740-hwmon driver. 646 647config MFD_KEMPLD 648 tristate "Kontron module PLD device" 649 select MFD_CORE 650 help 651 This is the core driver for the PLD (Programmable Logic Device) found 652 on some Kontron ETX and COMexpress (ETXexpress) modules. The PLD 653 device may provide functions like watchdog, GPIO, UART and I2C bus. 654 655 The following modules are supported: 656 * COMe-bBD# 657 * COMe-bBL6 658 * COMe-bHL6 659 * COMe-bSL6 660 * COMe-bIP# 661 * COMe-bKL6 662 * COMe-bPC2 (ETXexpress-PC) 663 * COMe-bSC# (ETXexpress-SC T#) 664 * COMe-cAL6 665 * COMe-cBL6 666 * COMe-cBT6 667 * COMe-cBW6 668 * COMe-cCT6 669 * COMe-cDC2 (microETXexpress-DC) 670 * COMe-cHL6 671 * COMe-cKL6 672 * COMe-cPC2 (microETXexpress-PC) 673 * COMe-cSL6 674 * COMe-mAL10 675 * COMe-mBT10 676 * COMe-mCT10 677 * COMe-mTT10 (nanoETXexpress-TT) 678 * ETX-OH 679 680 This driver can also be built as a module. If so, the module 681 will be called kempld-core. 682 683config MFD_88PM800 684 tristate "Marvell 88PM800" 685 depends on I2C 686 select REGMAP_I2C 687 select REGMAP_IRQ 688 select MFD_CORE 689 help 690 This supports for Marvell 88PM800 Power Management IC. 691 This includes the I2C driver and the core APIs _only_, you have to 692 select individual components like voltage regulators, RTC and 693 battery-charger under the corresponding menus. 694 695config MFD_88PM805 696 tristate "Marvell 88PM805" 697 depends on I2C 698 select REGMAP_I2C 699 select REGMAP_IRQ 700 select MFD_CORE 701 help 702 This supports for Marvell 88PM805 Power Management IC. This includes 703 the I2C driver and the core APIs _only_, you have to select individual 704 components like codec device, headset/Mic device under the 705 corresponding menus. 706 707config MFD_88PM860X 708 bool "Marvell 88PM8606/88PM8607" 709 depends on I2C=y 710 select REGMAP_I2C 711 select MFD_CORE 712 help 713 This supports for Marvell 88PM8606/88PM8607 Power Management IC. 714 This includes the I2C driver and the core APIs _only_, you have to 715 select individual components like voltage regulators, RTC and 716 battery-charger under the corresponding menus. 717 718config MFD_MAX14577 719 tristate "Maxim Semiconductor MAX14577/77836 MUIC + Charger Support" 720 depends on I2C 721 select MFD_CORE 722 select REGMAP_I2C 723 select REGMAP_IRQ 724 select IRQ_DOMAIN 725 help 726 Say yes here to add support for Maxim Semiconductor MAX14577 and 727 MAX77836 Micro-USB ICs with battery charger. 728 This driver provides common support for accessing the device; 729 additional drivers must be enabled in order to use the functionality 730 of the device. 731 732config MFD_MAX77620 733 bool "Maxim Semiconductor MAX77620 and MAX20024 PMIC Support" 734 depends on I2C=y 735 depends on OF || COMPILE_TEST 736 select MFD_CORE 737 select REGMAP_I2C 738 select REGMAP_IRQ 739 select IRQ_DOMAIN 740 help 741 Say yes here to add support for Maxim Semiconductor MAX77620 and 742 MAX20024 which are Power Management IC with General purpose pins, 743 RTC, regulators, clock generator, watchdog etc. This driver 744 provides common support for accessing the device; additional drivers 745 must be enabled in order to use the functionality of the device. 746 747config MFD_MAX77650 748 tristate "Maxim MAX77650/77651 PMIC Support" 749 depends on I2C 750 depends on OF || COMPILE_TEST 751 select MFD_CORE 752 select REGMAP_I2C 753 help 754 Say Y here to add support for Maxim Semiconductor MAX77650 and 755 MAX77651 Power Management ICs. This is the core multifunction 756 driver for interacting with the device. The module name is 757 'max77650'. Additional drivers can be enabled in order to use 758 the following functionalities of the device: GPIO, regulator, 759 charger, LED, onkey. 760 761config MFD_MAX77686 762 tristate "Maxim Semiconductor MAX77686/802 PMIC Support" 763 depends on I2C 764 depends on OF || COMPILE_TEST 765 select MFD_CORE 766 select REGMAP_I2C 767 select REGMAP_IRQ 768 select IRQ_DOMAIN 769 help 770 Say yes here to add support for Maxim Semiconductor MAX77686 and 771 MAX77802 which are Power Management IC with an RTC on chip. 772 This driver provides common support for accessing the device; 773 additional drivers must be enabled in order to use the functionality 774 of the device. 775 776config MFD_MAX77693 777 tristate "Maxim Semiconductor MAX77693 PMIC Support" 778 depends on I2C 779 select MFD_CORE 780 select REGMAP_I2C 781 select REGMAP_IRQ 782 help 783 Say yes here to add support for Maxim Semiconductor MAX77693. 784 This is a companion Power Management IC with Flash, Haptic, Charger, 785 and MUIC(Micro USB Interface Controller) controls on chip. 786 This driver provides common support for accessing the device; 787 additional drivers must be enabled in order to use the functionality 788 of the device. 789 790config MFD_MAX77843 791 bool "Maxim Semiconductor MAX77843 PMIC Support" 792 depends on I2C=y 793 select MFD_CORE 794 select REGMAP_I2C 795 select REGMAP_IRQ 796 help 797 Say yes here to add support for Maxim Semiconductor MAX77843. 798 This is companion Power Management IC with LEDs, Haptic, Charger, 799 Fuel Gauge, MUIC(Micro USB Interface Controller) controls on chip. 800 This driver provides common support for accessing the device; 801 additional drivers must be enabled in order to use the functionality 802 of the device. 803 804config MFD_MAX8907 805 tristate "Maxim Semiconductor MAX8907 PMIC Support" 806 select MFD_CORE 807 depends on I2C 808 select REGMAP_I2C 809 select REGMAP_IRQ 810 help 811 Say yes here to add support for Maxim Semiconductor MAX8907. This is 812 a Power Management IC. This driver provides common support for 813 accessing the device; additional drivers must be enabled in order 814 to use the functionality of the device. 815 816config MFD_MAX8925 817 bool "Maxim Semiconductor MAX8925 PMIC Support" 818 depends on I2C=y 819 select MFD_CORE 820 help 821 Say yes here to add support for Maxim Semiconductor MAX8925. This is 822 a Power Management IC. This driver provides common support for 823 accessing the device, additional drivers must be enabled in order 824 to use the functionality of the device. 825 826config MFD_MAX8997 827 bool "Maxim Semiconductor MAX8997/8966 PMIC Support" 828 depends on I2C=y 829 select MFD_CORE 830 select IRQ_DOMAIN 831 help 832 Say yes here to add support for Maxim Semiconductor MAX8997/8966. 833 This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic, 834 MUIC controls on chip. 835 This driver provides common support for accessing the device; 836 additional drivers must be enabled in order to use the functionality 837 of the device. 838 839config MFD_MAX8998 840 bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support" 841 depends on I2C=y 842 select MFD_CORE 843 select IRQ_DOMAIN 844 help 845 Say yes here to add support for Maxim Semiconductor MAX8998 and 846 National Semiconductor LP3974. This is a Power Management IC. 847 This driver provides common support for accessing the device, 848 additional drivers must be enabled in order to use the functionality 849 of the device. 850 851config MFD_MT6397 852 tristate "MediaTek MT6397 PMIC Support" 853 select MFD_CORE 854 select IRQ_DOMAIN 855 help 856 Say yes here to add support for MediaTek MT6397 PMIC. This is 857 a Power Management IC. This driver provides common support for 858 accessing the device; additional drivers must be enabled in order 859 to use the functionality of the device. 860 861config MFD_MENF21BMC 862 tristate "MEN 14F021P00 Board Management Controller Support" 863 depends on I2C 864 select MFD_CORE 865 help 866 Say yes here to add support for the MEN 14F021P00 BMC 867 which is a Board Management Controller connected to the I2C bus. 868 The device supports multiple sub-devices like LED, HWMON and WDT. 869 This driver provides common support for accessing the devices; 870 additional drivers must be enabled in order to use the 871 functionality of the BMC device. 872 873 This driver can also be built as a module. If so the module 874 will be called menf21bmc. 875 876config EZX_PCAP 877 bool "Motorola EZXPCAP Support" 878 depends on SPI_MASTER 879 help 880 This enables the PCAP ASIC present on EZX Phones. This is 881 needed for MMC, TouchScreen, Sound, USB, etc.. 882 883config MFD_CPCAP 884 tristate "Support for Motorola CPCAP" 885 depends on SPI 886 depends on OF || COMPILE_TEST 887 select REGMAP_SPI 888 select REGMAP_IRQ 889 help 890 Say yes here if you want to include driver for CPCAP. 891 It is used on many Motorola phones and tablets as a PMIC. 892 At least Motorola Droid 4 is known to use CPCAP. 893 894config MFD_VIPERBOARD 895 tristate "Nano River Technologies Viperboard" 896 select MFD_CORE 897 depends on USB 898 default n 899 help 900 Say yes here if you want support for Nano River Technologies 901 Viperboard. 902 There are mfd cell drivers available for i2c master, adc and 903 both gpios found on the board. The spi part does not yet 904 have a driver. 905 You need to select the mfd cell drivers separately. 906 The drivers do not support all features the board exposes. 907 908config MFD_RETU 909 tristate "Nokia Retu and Tahvo multi-function device" 910 select MFD_CORE 911 depends on I2C 912 select REGMAP_IRQ 913 help 914 Retu and Tahvo are a multi-function devices found on Nokia 915 Internet Tablets (770, N800 and N810). 916 917config MFD_PCF50633 918 tristate "NXP PCF50633" 919 depends on I2C 920 select REGMAP_I2C 921 help 922 Say yes here if you have NXP PCF50633 chip on your board. 923 This core driver provides register access and IRQ handling 924 facilities, and registers devices for the various functions 925 so that function-specific drivers can bind to them. 926 927config PCF50633_ADC 928 tristate "NXP PCF50633 ADC" 929 depends on MFD_PCF50633 930 help 931 Say yes here if you want to include support for ADC in the 932 NXP PCF50633 chip. 933 934config PCF50633_GPIO 935 tristate "NXP PCF50633 GPIO" 936 depends on MFD_PCF50633 937 help 938 Say yes here if you want to include support GPIO for pins on 939 the PCF50633 chip. 940 941config UCB1400_CORE 942 tristate "Philips UCB1400 Core driver" 943 depends on AC97_BUS 944 depends on GPIOLIB 945 help 946 This enables support for the Philips UCB1400 core functions. 947 The UCB1400 is an AC97 audio codec. 948 949 To compile this driver as a module, choose M here: the 950 module will be called ucb1400_core. 951 952config MFD_PM8XXX 953 tristate "Qualcomm PM8xxx PMIC chips driver" 954 depends on (ARM || HEXAGON || COMPILE_TEST) 955 select IRQ_DOMAIN_HIERARCHY 956 select MFD_CORE 957 select REGMAP 958 help 959 If you say yes to this option, support will be included for the 960 built-in PM8xxx PMIC chips. 961 962 This is required if your board has a PM8xxx and uses its features, 963 such as: MPPs, GPIOs, regulators, interrupts, and PWM. 964 965 Say M here if you want to include support for PM8xxx chips as a 966 module. This will build a module called "pm8xxx-core". 967 968config MFD_QCOM_RPM 969 tristate "Qualcomm Resource Power Manager (RPM)" 970 depends on ARCH_QCOM && OF 971 help 972 If you say yes to this option, support will be included for the 973 Resource Power Manager system found in the Qualcomm 8660, 8960 and 974 8064 based devices. 975 976 This is required to access many regulators, clocks and bus 977 frequencies controlled by the RPM on these devices. 978 979 Say M here if you want to include support for the Qualcomm RPM as a 980 module. This will build a module called "qcom_rpm". 981 982config MFD_SPMI_PMIC 983 tristate "Qualcomm SPMI PMICs" 984 depends on ARCH_QCOM || COMPILE_TEST 985 depends on OF 986 depends on SPMI 987 select REGMAP_SPMI 988 help 989 This enables support for the Qualcomm SPMI PMICs. 990 These PMICs are currently used with the Snapdragon 800 series of 991 SoCs. Note, that this will only be useful paired with descriptions 992 of the independent functions as children nodes in the device tree. 993 994 Say M here if you want to include support for the SPMI PMIC 995 series as a module. The module will be called "qcom-spmi-pmic". 996 997config MFD_RDC321X 998 tristate "RDC R-321x southbridge" 999 select MFD_CORE 1000 depends on PCI 1001 help 1002 Say yes here if you want to have support for the RDC R-321x SoC 1003 southbridge which provides access to GPIOs and Watchdog using the 1004 southbridge PCI device configuration space. 1005 1006config MFD_RT5033 1007 tristate "Richtek RT5033 Power Management IC" 1008 depends on I2C 1009 select MFD_CORE 1010 select REGMAP_I2C 1011 select REGMAP_IRQ 1012 help 1013 This driver provides for the Richtek RT5033 Power Management IC, 1014 which includes the I2C driver and the Core APIs. This driver provides 1015 common support for accessing the device. The device supports multiple 1016 sub-devices like charger, fuel gauge, flash LED, current source, 1017 LDO and Buck. 1018 1019config MFD_RC5T583 1020 bool "Ricoh RC5T583 Power Management system device" 1021 depends on I2C=y 1022 select MFD_CORE 1023 select REGMAP_I2C 1024 help 1025 Select this option to get support for the RICOH583 Power 1026 Management system device. 1027 This driver provides common support for accessing the device 1028 through i2c interface. The device supports multiple sub-devices 1029 like GPIO, interrupts, RTC, LDO and DCDC regulators, onkey. 1030 Additional drivers must be enabled in order to use the 1031 different functionality of the device. 1032 1033config MFD_RK808 1034 tristate "Rockchip RK805/RK808/RK818 Power Management Chip" 1035 depends on I2C && OF 1036 select MFD_CORE 1037 select REGMAP_I2C 1038 select REGMAP_IRQ 1039 help 1040 If you say yes here you get support for the RK805, RK808 and RK818 1041 Power Management chips. 1042 This driver provides common support for accessing the device 1043 through I2C interface. The device supports multiple sub-devices 1044 including interrupts, RTC, LDO & DCDC regulators, and onkey. 1045 1046config MFD_RN5T618 1047 tristate "Ricoh RN5T567/618 PMIC" 1048 depends on I2C 1049 depends on OF 1050 select MFD_CORE 1051 select REGMAP_I2C 1052 help 1053 Say yes here to add support for the Ricoh RN5T567, 1054 RN5T618, RC5T619 PMIC. 1055 This driver provides common support for accessing the device, 1056 additional drivers must be enabled in order to use the 1057 functionality of the device. 1058 1059config MFD_SEC_CORE 1060 tristate "SAMSUNG Electronics PMIC Series Support" 1061 depends on I2C=y 1062 select MFD_CORE 1063 select REGMAP_I2C 1064 select REGMAP_IRQ 1065 help 1066 Support for the Samsung Electronics PMIC devices coming 1067 usually along with Samsung Exynos SoC chipset. 1068 This driver provides common support for accessing the device, 1069 additional drivers must be enabled in order to use the functionality 1070 of the device 1071 1072 To compile this driver as a module, choose M here: the 1073 module will be called sec-core. 1074 Have in mind that important core drivers (like regulators) depend 1075 on this driver so building this as a module might require proper 1076 initial ramdisk or might not boot up as well in certain scenarios. 1077 1078config MFD_SI476X_CORE 1079 tristate "Silicon Laboratories 4761/64/68 AM/FM radio." 1080 depends on I2C 1081 select MFD_CORE 1082 select REGMAP_I2C 1083 help 1084 This is the core driver for the SI476x series of AM/FM 1085 radio. This MFD driver connects the radio-si476x V4L2 module 1086 and the si476x audio codec. 1087 1088 To compile this driver as a module, choose M here: the 1089 module will be called si476x-core. 1090 1091config MFD_SM501 1092 tristate "Silicon Motion SM501" 1093 depends on HAS_DMA 1094 select DMA_DECLARE_COHERENT 1095 ---help--- 1096 This is the core driver for the Silicon Motion SM501 multimedia 1097 companion chip. This device is a multifunction device which may 1098 provide numerous interfaces including USB host controller, USB gadget, 1099 asynchronous serial ports, audio functions, and a dual display video 1100 interface. The device may be connected by PCI or local bus with 1101 varying functions enabled. 1102 1103config MFD_SM501_GPIO 1104 bool "Export GPIO via GPIO layer" 1105 depends on MFD_SM501 && GPIOLIB 1106 ---help--- 1107 This option uses the gpio library layer to export the 64 GPIO 1108 lines on the SM501. The platform data is used to supply the 1109 base number for the first GPIO line to register. 1110 1111config MFD_SKY81452 1112 tristate "Skyworks Solutions SKY81452" 1113 select MFD_CORE 1114 select REGMAP_I2C 1115 depends on I2C 1116 help 1117 This is the core driver for the Skyworks SKY81452 backlight and 1118 voltage regulator device. 1119 1120 This driver can also be built as a module. If so, the module 1121 will be called sky81452. 1122 1123config MFD_SMSC 1124 bool "SMSC ECE1099 series chips" 1125 depends on I2C=y 1126 select MFD_CORE 1127 select REGMAP_I2C 1128 help 1129 If you say yes here you get support for the 1130 ece1099 chips from SMSC. 1131 1132 To compile this driver as a module, choose M here: the 1133 module will be called smsc. 1134 1135config MFD_SC27XX_PMIC 1136 tristate "Spreadtrum SC27xx PMICs" 1137 depends on ARCH_SPRD || COMPILE_TEST 1138 depends on SPI_MASTER 1139 select MFD_CORE 1140 select REGMAP_SPI 1141 select REGMAP_IRQ 1142 help 1143 This enables support for the Spreadtrum SC27xx PMICs with SPI 1144 interface. The SC27xx series PMICs integrate power management, 1145 audio codec, battery management and user interface support 1146 function (such as RTC, Typec, indicator and so on) in a single chip. 1147 1148 This driver provides common support for accessing the SC27xx PMICs, 1149 and it also adds the irq_chip parts for handling the PMIC chip events. 1150 1151config ABX500_CORE 1152 bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions" 1153 default y if ARCH_U300 || ARCH_U8500 || COMPILE_TEST 1154 help 1155 Say yes here if you have the ABX500 Mixed Signal IC family 1156 chips. This core driver expose register access functions. 1157 Functionality specific drivers using these functions can 1158 remain unchanged when IC changes. Binding of the functions to 1159 actual register access is done by the IC core driver. 1160 1161config AB3100_CORE 1162 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions" 1163 depends on I2C=y && ABX500_CORE 1164 select MFD_CORE 1165 default y if ARCH_U300 1166 help 1167 Select this to enable the AB3100 Mixed Signal IC core 1168 functionality. This connects to a AB3100 on the I2C bus 1169 and expose a number of symbols needed for dependent devices 1170 to read and write registers and subscribe to events from 1171 this multi-functional IC. This is needed to use other features 1172 of the AB3100 such as battery-backed RTC, charging control, 1173 LEDs, vibrator, system power and temperature, power management 1174 and ALSA sound. 1175 1176config AB3100_OTP 1177 tristate "ST-Ericsson AB3100 OTP functions" 1178 depends on AB3100_CORE 1179 default y if AB3100_CORE 1180 help 1181 Select this to enable the AB3100 Mixed Signal IC OTP (one-time 1182 programmable memory) support. This exposes a sysfs file to read 1183 out OTP values. 1184 1185config AB8500_CORE 1186 bool "ST-Ericsson AB8500 Mixed Signal Power Management chip" 1187 depends on ABX500_CORE && MFD_DB8500_PRCMU 1188 select POWER_SUPPLY 1189 select MFD_CORE 1190 select IRQ_DOMAIN 1191 help 1192 Select this option to enable access to AB8500 power management 1193 chip. This connects to U8500 either on the SSP/SPI bus (deprecated 1194 since hardware version v1.0) or the I2C bus via PRCMU. It also adds 1195 the irq_chip parts for handling the Mixed Signal chip events. 1196 This chip embeds various other multimedia funtionalities as well. 1197 1198config AB8500_DEBUG 1199 bool "Enable debug info via debugfs" 1200 depends on AB8500_GPADC && DEBUG_FS 1201 default y if DEBUG_FS 1202 help 1203 Select this option if you want debug information using the debug 1204 filesystem, debugfs. 1205 1206config AB8500_GPADC 1207 bool "ST-Ericsson AB8500 GPADC driver" 1208 depends on AB8500_CORE && REGULATOR_AB8500 1209 default y 1210 help 1211 AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage 1212 1213config MFD_DB8500_PRCMU 1214 bool "ST-Ericsson DB8500 Power Reset Control Management Unit" 1215 depends on UX500_SOC_DB8500 1216 select MFD_CORE 1217 help 1218 Select this option to enable support for the DB8500 Power Reset 1219 and Control Management Unit. This is basically an autonomous 1220 system controller running an XP70 microprocessor, which is accessed 1221 through a register map. 1222 1223config MFD_STMPE 1224 bool "STMicroelectronics STMPE" 1225 depends on (I2C=y || SPI_MASTER=y) 1226 depends on OF 1227 select MFD_CORE 1228 help 1229 Support for the STMPE family of I/O Expanders from 1230 STMicroelectronics. 1231 1232 Currently supported devices are: 1233 1234 STMPE811: GPIO, Touchscreen, ADC 1235 STMPE1601: GPIO, Keypad 1236 STMPE1801: GPIO, Keypad 1237 STMPE2401: GPIO, Keypad 1238 STMPE2403: GPIO, Keypad 1239 1240 This driver provides common support for accessing the device, 1241 additional drivers must be enabled in order to use the functionality 1242 of the device. Currently available sub drivers are: 1243 1244 GPIO: stmpe-gpio 1245 Keypad: stmpe-keypad 1246 Touchscreen: stmpe-ts 1247 ADC: stmpe-adc 1248 1249menu "STMicroelectronics STMPE Interface Drivers" 1250depends on MFD_STMPE 1251 1252config STMPE_I2C 1253 bool "STMicroelectronics STMPE I2C Interface" 1254 depends on I2C=y 1255 default y 1256 help 1257 This is used to enable I2C interface of STMPE 1258 1259config STMPE_SPI 1260 bool "STMicroelectronics STMPE SPI Interface" 1261 depends on SPI_MASTER 1262 help 1263 This is used to enable SPI interface of STMPE 1264endmenu 1265 1266config MFD_STA2X11 1267 bool "STMicroelectronics STA2X11" 1268 depends on STA2X11 1269 select MFD_CORE 1270 select REGMAP_MMIO 1271 1272config MFD_SUN6I_PRCM 1273 bool "Allwinner A31 PRCM controller" 1274 depends on ARCH_SUNXI || COMPILE_TEST 1275 select MFD_CORE 1276 help 1277 Support for the PRCM (Power/Reset/Clock Management) unit available 1278 in A31 SoC. 1279 1280config MFD_SYSCON 1281 bool "System Controller Register R/W Based on Regmap" 1282 select REGMAP_MMIO 1283 help 1284 Select this option to enable accessing system control registers 1285 via regmap. 1286 1287config MFD_DAVINCI_VOICECODEC 1288 tristate 1289 select MFD_CORE 1290 select REGMAP_MMIO 1291 1292config MFD_TI_AM335X_TSCADC 1293 tristate "TI ADC / Touch Screen chip support" 1294 select MFD_CORE 1295 select REGMAP 1296 select REGMAP_MMIO 1297 help 1298 If you say yes here you get support for Texas Instruments series 1299 of Touch Screen /ADC chips. 1300 To compile this driver as a module, choose M here: the 1301 module will be called ti_am335x_tscadc. 1302 1303config MFD_DM355EVM_MSP 1304 bool "TI DaVinci DM355 EVM microcontroller" 1305 depends on I2C=y && MACH_DAVINCI_DM355_EVM 1306 help 1307 This driver supports the MSP430 microcontroller used on these 1308 boards. MSP430 firmware manages resets and power sequencing, 1309 inputs from buttons and the IR remote, LEDs, an RTC, and more. 1310 1311config MFD_LP3943 1312 tristate "TI/National Semiconductor LP3943 MFD Driver" 1313 depends on I2C 1314 select MFD_CORE 1315 select REGMAP_I2C 1316 help 1317 Support for the TI/National Semiconductor LP3943. 1318 This driver consists of GPIO and PWM drivers. 1319 With these functionalities, it can be used for LED string control or 1320 general usage such like a GPIO controller and a PWM controller. 1321 1322config MFD_LP8788 1323 bool "TI LP8788 Power Management Unit Driver" 1324 depends on I2C=y 1325 select MFD_CORE 1326 select REGMAP_I2C 1327 select IRQ_DOMAIN 1328 help 1329 TI LP8788 PMU supports regulators, battery charger, RTC, 1330 ADC, backlight driver and current sinks. 1331 1332config MFD_TI_LMU 1333 tristate "TI Lighting Management Unit driver" 1334 depends on I2C 1335 select MFD_CORE 1336 select REGMAP_I2C 1337 help 1338 Say yes here to enable support for TI LMU chips. 1339 1340 TI LMU MFD supports LM3532, LM3631, LM3632, LM3633, LM3695 and LM3697. 1341 It consists of backlight, LED and regulator driver. 1342 It provides consistent device controls for lighting functions. 1343 1344config MFD_OMAP_USB_HOST 1345 bool "TI OMAP USBHS core and TLL driver" 1346 depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3 1347 default y 1348 help 1349 This is the core driver for the OAMP EHCI and OHCI drivers. 1350 This MFD driver does the required setup functionalities for 1351 OMAP USB Host drivers. 1352 1353config MFD_PALMAS 1354 bool "TI Palmas series chips" 1355 select MFD_CORE 1356 select REGMAP_I2C 1357 select REGMAP_IRQ 1358 depends on I2C=y 1359 help 1360 If you say yes here you get support for the Palmas 1361 series of PMIC chips from Texas Instruments. 1362 1363config TPS6105X 1364 tristate "TI TPS61050/61052 Boost Converters" 1365 depends on I2C 1366 select REGMAP_I2C 1367 select REGULATOR 1368 select MFD_CORE 1369 select REGULATOR_FIXED_VOLTAGE 1370 help 1371 This option enables a driver for the TP61050/TPS61052 1372 high-power "white LED driver". This boost converter is 1373 sometimes used for other things than white LEDs, and 1374 also contains a GPIO pin. 1375 1376config TPS65010 1377 tristate "TI TPS6501x Power Management chips" 1378 depends on I2C && GPIOLIB 1379 default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK 1380 help 1381 If you say yes here you get support for the TPS6501x series of 1382 Power Management chips. These include voltage regulators, 1383 lithium ion/polymer battery charging, and other features that 1384 are often used in portable devices like cell phones and cameras. 1385 1386 This driver can also be built as a module. If so, the module 1387 will be called tps65010. 1388 1389config TPS6507X 1390 tristate "TI TPS6507x Power Management / Touch Screen chips" 1391 select MFD_CORE 1392 depends on I2C 1393 help 1394 If you say yes here you get support for the TPS6507x series of 1395 Power Management / Touch Screen chips. These include voltage 1396 regulators, lithium ion/polymer battery charging, touch screen 1397 and other features that are often used in portable devices. 1398 This driver can also be built as a module. If so, the module 1399 will be called tps6507x. 1400 1401config MFD_TPS65086 1402 tristate "TI TPS65086 Power Management Integrated Chips (PMICs)" 1403 select MFD_CORE 1404 select REGMAP 1405 select REGMAP_IRQ 1406 select REGMAP_I2C 1407 depends on I2C 1408 help 1409 If you say yes here you get support for the TPS65086 series of 1410 Power Management chips. 1411 This driver provides common support for accessing the device, 1412 additional drivers must be enabled in order to use the 1413 functionality of the device. 1414 1415config TPS65911_COMPARATOR 1416 tristate 1417 1418config MFD_TPS65090 1419 bool "TI TPS65090 Power Management chips" 1420 depends on I2C=y 1421 select MFD_CORE 1422 select REGMAP_I2C 1423 select REGMAP_IRQ 1424 help 1425 If you say yes here you get support for the TPS65090 series of 1426 Power Management chips. 1427 This driver provides common support for accessing the device, 1428 additional drivers must be enabled in order to use the 1429 functionality of the device. 1430 1431config MFD_TPS65217 1432 tristate "TI TPS65217 Power Management / White LED chips" 1433 depends on I2C && OF 1434 select MFD_CORE 1435 select REGMAP_I2C 1436 select IRQ_DOMAIN 1437 help 1438 If you say yes here you get support for the TPS65217 series of 1439 Power Management / White LED chips. 1440 These include voltage regulators, lithium ion/polymer battery 1441 charger, wled and other features that are often used in portable 1442 devices. 1443 1444 This driver can also be built as a module. If so, the module 1445 will be called tps65217. 1446 1447config MFD_TPS68470 1448 bool "TI TPS68470 Power Management / LED chips" 1449 depends on ACPI && PCI && I2C=y 1450 depends on I2C_DESIGNWARE_PLATFORM=y 1451 select MFD_CORE 1452 select REGMAP_I2C 1453 help 1454 If you say yes here you get support for the TPS68470 series of 1455 Power Management / LED chips. 1456 1457 These include voltage regulators, LEDs and other features 1458 that are often used in portable devices. 1459 1460 This option is a bool as it provides an ACPI operation 1461 region, which must be available before any of the devices 1462 using this are probed. This option also configures the 1463 designware-i2c driver to be built-in, for the same reason. 1464 1465config MFD_TI_LP873X 1466 tristate "TI LP873X Power Management IC" 1467 depends on I2C 1468 select MFD_CORE 1469 select REGMAP_I2C 1470 help 1471 If you say yes here then you get support for the LP873X series of 1472 Power Management Integrated Circuits (PMIC). 1473 These include voltage regulators, thermal protection, configurable 1474 General Purpose Outputs (GPO) that are used in portable devices. 1475 1476 This driver can also be built as a module. If so, the module 1477 will be called lp873x. 1478 1479config MFD_TI_LP87565 1480 tristate "TI LP87565 Power Management IC" 1481 depends on I2C && OF 1482 select MFD_CORE 1483 select REGMAP_I2C 1484 help 1485 If you say yes here then you get support for the LP87565 series of 1486 Power Management Integrated Circuits (PMIC). 1487 These include voltage regulators, thermal protection, configurable 1488 General Purpose Outputs (GPO) that are used in portable devices. 1489 1490 This driver can also be built as a module. If so, the module 1491 will be called lp87565. 1492 1493config MFD_TPS65218 1494 tristate "TI TPS65218 Power Management chips" 1495 depends on I2C && OF 1496 select MFD_CORE 1497 select REGMAP_I2C 1498 select REGMAP_IRQ 1499 help 1500 If you say yes here you get support for the TPS65218 series of 1501 Power Management chips. 1502 These include voltage regulators, gpio and other features 1503 that are often used in portable devices. 1504 1505 This driver can also be built as a module. If so, the module 1506 will be called tps65218. 1507 1508config MFD_TPS6586X 1509 bool "TI TPS6586x Power Management chips" 1510 depends on I2C=y 1511 select MFD_CORE 1512 select REGMAP_I2C 1513 help 1514 If you say yes here you get support for the TPS6586X series of 1515 Power Management chips. 1516 This driver provides common support for accessing the device, 1517 additional drivers must be enabled in order to use the 1518 functionality of the device. 1519 1520 This driver can also be built as a module. If so, the module 1521 will be called tps6586x. 1522 1523config MFD_TPS65910 1524 bool "TI TPS65910 Power Management chip" 1525 depends on I2C=y 1526 depends on GPIOLIB || COMPILE_TEST 1527 select MFD_CORE 1528 select REGMAP_I2C 1529 select REGMAP_IRQ 1530 select IRQ_DOMAIN 1531 help 1532 if you say yes here you get support for the TPS65910 series of 1533 Power Management chips. 1534 1535config MFD_TPS65912 1536 tristate 1537 select MFD_CORE 1538 select REGMAP 1539 select REGMAP_IRQ 1540 1541config MFD_TPS65912_I2C 1542 tristate "TI TPS65912 Power Management chip with I2C" 1543 select MFD_TPS65912 1544 select REGMAP_I2C 1545 depends on I2C 1546 help 1547 If you say yes here you get support for the TPS65912 series of 1548 PM chips with I2C interface. 1549 1550config MFD_TPS65912_SPI 1551 tristate "TI TPS65912 Power Management chip with SPI" 1552 select MFD_TPS65912 1553 select REGMAP_SPI 1554 depends on SPI_MASTER 1555 help 1556 If you say yes here you get support for the TPS65912 series of 1557 PM chips with SPI interface. 1558 1559config MFD_TPS80031 1560 bool "TI TPS80031/TPS80032 Power Management chips" 1561 depends on I2C=y 1562 select MFD_CORE 1563 select REGMAP_I2C 1564 select REGMAP_IRQ 1565 help 1566 If you say yes here you get support for the Texas Instruments 1567 TPS80031/ TPS80032 Fully Integrated Power Management with Power 1568 Path and Battery Charger. The device provides five configurable 1569 step-down converters, 11 general purpose LDOs, USB OTG Module, 1570 ADC, RTC, 2 PWM, System Voltage Regulator/Battery Charger with 1571 Power Path from USB, 32K clock generator. 1572 1573config TWL4030_CORE 1574 bool "TI TWL4030/TWL5030/TWL6030/TPS659x0 Support" 1575 depends on I2C=y 1576 select IRQ_DOMAIN 1577 select REGMAP_I2C 1578 help 1579 Say yes here if you have TWL4030 / TWL6030 family chip on your board. 1580 This core driver provides register access and IRQ handling 1581 facilities, and registers devices for the various functions 1582 so that function-specific drivers can bind to them. 1583 1584 These multi-function chips are found on many OMAP2 and OMAP3 1585 boards, providing power management, RTC, GPIO, keypad, a 1586 high speed USB OTG transceiver, an audio codec (on most 1587 versions) and many other features. 1588 1589config TWL4030_POWER 1590 bool "TI TWL4030 power resources" 1591 depends on TWL4030_CORE && ARM 1592 help 1593 Say yes here if you want to use the power resources on the 1594 TWL4030 family chips. Most of these resources are regulators, 1595 which have a separate driver; some are control signals, such 1596 as clock request handshaking. 1597 1598 This driver uses board-specific data to initialize the resources 1599 and load scripts controlling which resources are switched off/on 1600 or reset when a sleep, wakeup or warm reset event occurs. 1601 1602config MFD_TWL4030_AUDIO 1603 bool "TI TWL4030 Audio" 1604 depends on TWL4030_CORE 1605 select MFD_CORE 1606 default n 1607 1608config TWL6040_CORE 1609 bool "TI TWL6040 audio codec" 1610 depends on I2C=y 1611 select MFD_CORE 1612 select REGMAP_I2C 1613 select REGMAP_IRQ 1614 default n 1615 help 1616 Say yes here if you want support for Texas Instruments TWL6040 audio 1617 codec. 1618 This driver provides common support for accessing the device, 1619 additional drivers must be enabled in order to use the 1620 functionality of the device (audio, vibra). 1621 1622config MENELAUS 1623 bool "TI TWL92330/Menelaus PM chip" 1624 depends on I2C=y && ARCH_OMAP2 1625 help 1626 If you say yes here you get support for the Texas Instruments 1627 TWL92330/Menelaus Power Management chip. This include voltage 1628 regulators, Dual slot memory card transceivers, real-time clock 1629 and other features that are often used in portable devices like 1630 cell phones and PDAs. 1631 1632config MFD_WL1273_CORE 1633 tristate "TI WL1273 FM radio" 1634 depends on I2C 1635 select MFD_CORE 1636 default n 1637 help 1638 This is the core driver for the TI WL1273 FM radio. This MFD 1639 driver connects the radio-wl1273 V4L2 module and the wl1273 1640 audio codec. 1641 1642config MFD_LM3533 1643 tristate "TI/National Semiconductor LM3533 Lighting Power chip" 1644 depends on I2C 1645 select MFD_CORE 1646 select REGMAP_I2C 1647 help 1648 Say yes here to enable support for National Semiconductor / TI 1649 LM3533 Lighting Power chips. 1650 1651 This driver provides common support for accessing the device; 1652 additional drivers must be enabled in order to use the LED, 1653 backlight or ambient-light-sensor functionality of the device. 1654 1655config MFD_TIMBERDALE 1656 tristate "Timberdale FPGA" 1657 select MFD_CORE 1658 depends on PCI && GPIOLIB && (X86_32 || COMPILE_TEST) 1659 ---help--- 1660 This is the core driver for the timberdale FPGA. This device is a 1661 multifunction device which exposes numerous platform devices. 1662 1663 The timberdale FPGA can be found on the Intel Atom development board 1664 for in-vehicle infontainment, called Russellville. 1665 1666config MFD_TC3589X 1667 bool "Toshiba TC35892 and variants" 1668 depends on I2C=y 1669 depends on OF 1670 select MFD_CORE 1671 help 1672 Support for the Toshiba TC35892 and variants I/O Expander. 1673 1674 This driver provides common support for accessing the device, 1675 additional drivers must be enabled in order to use the 1676 functionality of the device. 1677 1678config MFD_TMIO 1679 bool 1680 default n 1681 1682config MFD_T7L66XB 1683 bool "Toshiba T7L66XB" 1684 depends on ARM && HAVE_CLK 1685 select MFD_CORE 1686 select MFD_TMIO 1687 help 1688 Support for Toshiba Mobile IO Controller T7L66XB 1689 1690config MFD_TC6387XB 1691 bool "Toshiba TC6387XB" 1692 depends on ARM && HAVE_CLK 1693 select MFD_CORE 1694 select MFD_TMIO 1695 help 1696 Support for Toshiba Mobile IO Controller TC6387XB 1697 1698config MFD_TC6393XB 1699 bool "Toshiba TC6393XB" 1700 depends on ARM && HAVE_CLK 1701 select GPIOLIB 1702 select MFD_CORE 1703 select MFD_TMIO 1704 select DMA_DECLARE_COHERENT 1705 help 1706 Support for Toshiba Mobile IO Controller TC6393XB 1707 1708config MFD_TQMX86 1709 tristate "TQ-Systems IO controller TQMX86" 1710 select MFD_CORE 1711 help 1712 Say yes here to enable support for various functions of the 1713 TQ-Systems IO controller and watchdog device, found on their 1714 ComExpress CPU modules. 1715 1716config MFD_VX855 1717 tristate "VIA VX855/VX875 integrated south bridge" 1718 depends on PCI 1719 select MFD_CORE 1720 help 1721 Say yes here to enable support for various functions of the 1722 VIA VX855/VX875 south bridge. You will need to enable the vx855_spi 1723 and/or vx855_gpio drivers for this to do anything useful. 1724 1725config MFD_LOCHNAGAR 1726 bool "Cirrus Logic Lochnagar Audio Development Board" 1727 select MFD_CORE 1728 select REGMAP_I2C 1729 depends on I2C=y && OF 1730 help 1731 Support for Cirrus Logic Lochnagar audio development board. 1732 1733config MFD_ARIZONA 1734 select REGMAP 1735 select REGMAP_IRQ 1736 select MFD_CORE 1737 bool 1738 1739config MFD_ARIZONA_I2C 1740 tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with I2C" 1741 select MFD_ARIZONA 1742 select REGMAP_I2C 1743 depends on I2C 1744 help 1745 Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform 1746 audio SoC core functionality controlled via I2C. 1747 1748config MFD_ARIZONA_SPI 1749 tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with SPI" 1750 select MFD_ARIZONA 1751 select REGMAP_SPI 1752 depends on SPI_MASTER 1753 help 1754 Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform 1755 audio SoC core functionality controlled via SPI. 1756 1757config MFD_CS47L24 1758 bool "Cirrus Logic CS47L24 and WM1831" 1759 depends on MFD_ARIZONA 1760 help 1761 Support for Cirrus Logic CS47L24 and WM1831 low power audio SoC 1762 1763config MFD_WM5102 1764 bool "Wolfson Microelectronics WM5102" 1765 depends on MFD_ARIZONA 1766 help 1767 Support for Wolfson Microelectronics WM5102 low power audio SoC 1768 1769config MFD_WM5110 1770 bool "Wolfson Microelectronics WM5110 and WM8280/WM8281" 1771 depends on MFD_ARIZONA 1772 help 1773 Support for Wolfson Microelectronics WM5110 and WM8280/WM8281 1774 low power audio SoC 1775 1776config MFD_WM8997 1777 bool "Wolfson Microelectronics WM8997" 1778 depends on MFD_ARIZONA 1779 help 1780 Support for Wolfson Microelectronics WM8997 low power audio SoC 1781 1782config MFD_WM8998 1783 bool "Wolfson Microelectronics WM8998" 1784 depends on MFD_ARIZONA 1785 help 1786 Support for Wolfson Microelectronics WM8998 low power audio SoC 1787 1788config MFD_WM8400 1789 bool "Wolfson Microelectronics WM8400" 1790 select MFD_CORE 1791 depends on I2C=y 1792 select REGMAP_I2C 1793 help 1794 Support for the Wolfson Microelecronics WM8400 PMIC and audio 1795 CODEC. This driver provides common support for accessing 1796 the device, additional drivers must be enabled in order to use 1797 the functionality of the device. 1798 1799config MFD_WM831X 1800 bool 1801 1802config MFD_WM831X_I2C 1803 bool "Wolfson Microelectronics WM831x/2x PMICs with I2C" 1804 select MFD_CORE 1805 select MFD_WM831X 1806 select REGMAP_I2C 1807 select IRQ_DOMAIN 1808 depends on I2C=y 1809 help 1810 Support for the Wolfson Microelecronics WM831x and WM832x PMICs 1811 when controlled using I2C. This driver provides common support 1812 for accessing the device, additional drivers must be enabled in 1813 order to use the functionality of the device. 1814 1815config MFD_WM831X_SPI 1816 bool "Wolfson Microelectronics WM831x/2x PMICs with SPI" 1817 select MFD_CORE 1818 select MFD_WM831X 1819 select REGMAP_SPI 1820 select IRQ_DOMAIN 1821 depends on SPI_MASTER 1822 help 1823 Support for the Wolfson Microelecronics WM831x and WM832x PMICs 1824 when controlled using SPI. This driver provides common support 1825 for accessing the device, additional drivers must be enabled in 1826 order to use the functionality of the device. 1827 1828config MFD_WM8350 1829 bool 1830 1831config MFD_WM8350_I2C 1832 bool "Wolfson Microelectronics WM8350 with I2C" 1833 select MFD_WM8350 1834 select REGMAP_I2C 1835 depends on I2C=y 1836 help 1837 The WM8350 is an integrated audio and power management 1838 subsystem with watchdog and RTC functionality for embedded 1839 systems. This option enables core support for the WM8350 with 1840 I2C as the control interface. Additional options must be 1841 selected to enable support for the functionality of the chip. 1842 1843config MFD_WM8994 1844 tristate "Wolfson Microelectronics WM8994" 1845 select MFD_CORE 1846 select REGMAP_I2C 1847 select REGMAP_IRQ 1848 depends on I2C 1849 help 1850 The WM8994 is a highly integrated hi-fi CODEC designed for 1851 smartphone applications. As well as audio functionality it 1852 has on board GPIO and regulator functionality which is 1853 supported via the relevant subsystems. This driver provides 1854 core support for the WM8994, in order to use the actual 1855 functionaltiy of the device other drivers must be enabled. 1856 1857config MFD_WM97xx 1858 tristate "Wolfson Microelectronics WM97xx" 1859 select MFD_CORE 1860 select REGMAP_AC97 1861 select AC97_BUS_COMPAT 1862 depends on AC97_BUS_NEW 1863 help 1864 The WM9705, WM9712 and WM9713 is a highly integrated hi-fi CODEC 1865 designed for smartphone applications. As well as audio functionality 1866 it has on board GPIO and a touchscreen functionality which is 1867 supported via the relevant subsystems. This driver provides core 1868 support for the WM97xx, in order to use the actual functionaltiy of 1869 the device other drivers must be enabled. 1870 1871config MFD_STW481X 1872 tristate "Support for ST Microelectronics STw481x" 1873 depends on I2C && (ARCH_NOMADIK || COMPILE_TEST) 1874 select REGMAP_I2C 1875 select MFD_CORE 1876 help 1877 Select this option to enable the STw481x chip driver used 1878 in various ST Microelectronics and ST-Ericsson embedded 1879 Nomadik series. 1880 1881config MFD_ROHM_BD718XX 1882 tristate "ROHM BD71837 Power Management IC" 1883 depends on I2C=y 1884 depends on OF 1885 select REGMAP_I2C 1886 select REGMAP_IRQ 1887 select MFD_CORE 1888 help 1889 Select this option to get support for the ROHM BD71837 1890 Power Management ICs. BD71837 is designed to power processors like 1891 NXP i.MX8. It contains 8 BUCK outputs and 7 LDOs, voltage monitoring 1892 and emergency shut down as well as 32,768KHz clock output. 1893 1894config MFD_STM32_LPTIMER 1895 tristate "Support for STM32 Low-Power Timer" 1896 depends on (ARCH_STM32 && OF) || COMPILE_TEST 1897 select MFD_CORE 1898 select REGMAP 1899 select REGMAP_MMIO 1900 help 1901 Select this option to enable STM32 Low-Power Timer driver 1902 used for PWM, IIO Trigger, IIO Encoder and Counter. Shared 1903 resources are also dealt with here. 1904 1905 To compile this driver as a module, choose M here: the 1906 module will be called stm32-lptimer. 1907 1908config MFD_STM32_TIMERS 1909 tristate "Support for STM32 Timers" 1910 depends on (ARCH_STM32 && OF) || COMPILE_TEST 1911 select MFD_CORE 1912 select REGMAP 1913 select REGMAP_MMIO 1914 help 1915 Select this option to enable STM32 timers driver used 1916 for PWM and IIO Timer. This driver allow to share the 1917 registers between the others drivers. 1918 1919config MFD_STPMIC1 1920 tristate "Support for STPMIC1 PMIC" 1921 depends on (I2C=y && OF) 1922 select REGMAP_I2C 1923 select REGMAP_IRQ 1924 select MFD_CORE 1925 help 1926 Support for ST Microelectronics STPMIC1 PMIC. STPMIC1 has power on 1927 key, watchdog and regulator functionalities which are supported via 1928 the relevant subsystems. This driver provides core support for the 1929 STPMIC1. In order to use the actual functionaltiy of the device other 1930 drivers must be enabled. 1931 1932 To compile this driver as a module, choose M here: the 1933 module will be called stpmic1. 1934 1935config MFD_STMFX 1936 tristate "Support for STMicroelectronics Multi-Function eXpander (STMFX)" 1937 depends on I2C 1938 depends on OF || COMPILE_TEST 1939 select MFD_CORE 1940 select REGMAP_I2C 1941 help 1942 Support for the STMicroelectronics Multi-Function eXpander. 1943 1944 This driver provides common support for accessing the device, 1945 additional drivers must be enabled in order to use the functionality 1946 of the device. 1947 1948menu "Multimedia Capabilities Port drivers" 1949 depends on ARCH_SA1100 1950 1951config MCP 1952 tristate 1953 1954# Interface drivers 1955config MCP_SA11X0 1956 tristate "Support SA11x0 MCP interface" 1957 depends on ARCH_SA1100 1958 select MCP 1959 1960# Chip drivers 1961config MCP_UCB1200 1962 tristate "Support for UCB1200 / UCB1300" 1963 depends on MCP_SA11X0 1964 select MCP 1965 1966config MCP_UCB1200_TS 1967 tristate "Touchscreen interface support" 1968 depends on MCP_UCB1200 && INPUT 1969 1970endmenu 1971 1972config MFD_VEXPRESS_SYSREG 1973 bool "Versatile Express System Registers" 1974 depends on VEXPRESS_CONFIG && GPIOLIB && !ARCH_USES_GETTIMEOFFSET 1975 default y 1976 select CLKSRC_MMIO 1977 select GPIO_GENERIC_PLATFORM 1978 select MFD_CORE 1979 select MFD_SYSCON 1980 help 1981 System Registers are the platform configuration block 1982 on the ARM Ltd. Versatile Express board. 1983 1984config RAVE_SP_CORE 1985 tristate "RAVE SP MCU core driver" 1986 depends on SERIAL_DEV_BUS 1987 select CRC_CCITT 1988 help 1989 Select this to get support for the Supervisory Processor 1990 device found on several devices in RAVE line of hardware. 1991 1992endmenu 1993endif 1994