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