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 depends on !UML 19 help 20 This is the core driver for CS5535/CS5536 MFD functions. This is 21 necessary for using the board's GPIO and MFGPT functionality. 22 23config MFD_ALTERA_A10SR 24 bool "Altera Arria10 DevKit System Resource chip" 25 depends on ARCH_INTEL_SOCFPGA && SPI_MASTER=y && OF 26 select REGMAP_SPI 27 select MFD_CORE 28 help 29 Support for the Altera Arria10 DevKit MAX5 System Resource chip 30 using the SPI interface. This driver provides common support for 31 accessing the external gpio extender (LEDs & buttons) and 32 power supply alarms (hwmon). 33 34config MFD_ALTERA_SYSMGR 35 bool "Altera SOCFPGA System Manager" 36 depends on ARCH_INTEL_SOCFPGA && OF 37 select MFD_SYSCON 38 help 39 Select this to get System Manager support for all Altera branded 40 SOCFPGAs. The SOCFPGA System Manager handles all SOCFPGAs by 41 using regmap_mmio accesses for ARM32 parts and SMC calls to 42 EL3 for ARM64 parts. 43 44config MFD_ACT8945A 45 tristate "Active-semi ACT8945A" 46 select MFD_CORE 47 select REGMAP_I2C 48 depends on I2C && OF 49 help 50 Support for the ACT8945A PMIC from Active-semi. This device 51 features three step-down DC/DC converters and four low-dropout 52 linear regulators, along with a complete ActivePath battery 53 charger. 54 55config MFD_SUN4I_GPADC 56 tristate "Allwinner sunxi platforms' GPADC MFD driver" 57 select MFD_CORE 58 select REGMAP_MMIO 59 select REGMAP_IRQ 60 depends on ARCH_SUNXI || COMPILE_TEST 61 depends on !TOUCHSCREEN_SUN4I 62 help 63 Select this to get support for Allwinner SoCs (A10, A13 and A31) ADC. 64 This driver will only map the hardware interrupt and registers, you 65 have to select individual drivers based on this MFD to be able to use 66 the ADC or the thermal sensor. This will try to probe the ADC driver 67 sun4i-gpadc-iio and the hwmon driver iio_hwmon. 68 69 To compile this driver as a module, choose M here: the module will be 70 called sun4i-gpadc. 71 72config MFD_AS3711 73 bool "AMS AS3711" 74 select MFD_CORE 75 select REGMAP_I2C 76 select REGMAP_IRQ 77 depends on I2C=y 78 help 79 Support for the AS3711 PMIC from AMS 80 81config MFD_SMPRO 82 tristate "Ampere Computing SMpro core driver" 83 depends on I2C 84 select MFD_CORE 85 select REGMAP_I2C 86 help 87 Say yes here to enable SMpro driver support for Ampere's Altra 88 processor family. 89 90 Ampere's Altra SMpro exposes an I2C regmap interface that can 91 be accessed by child devices. 92 93config MFD_AS3722 94 tristate "ams AS3722 Power Management IC" 95 select MFD_CORE 96 select REGMAP_I2C 97 select REGMAP_IRQ 98 depends on I2C=y && OF 99 help 100 The ams AS3722 is a compact system PMU suitable for mobile phones, 101 tablets etc. It has 4 DC/DC step-down regulators, 3 DC/DC step-down 102 controllers, 11 LDOs, RTC, automatic battery, temperature and 103 over current monitoring, GPIOs, ADC and a watchdog. 104 105config PMIC_ADP5520 106 bool "Analog Devices ADP5520/01 MFD PMIC Core Support" 107 depends on I2C=y 108 help 109 Say yes here to add support for Analog Devices ADP5520 and ADP5501, 110 Multifunction Power Management IC. This includes 111 the I2C driver and the core APIs _only_, you have to select 112 individual components like LCD backlight, LEDs, GPIOs and Kepad 113 under the corresponding menus. 114 115config MFD_AAT2870_CORE 116 bool "AnalogicTech AAT2870" 117 select MFD_CORE 118 depends on I2C=y 119 depends on GPIOLIB || COMPILE_TEST 120 help 121 If you say yes here you get support for the AAT2870. 122 This driver provides common support for accessing the device, 123 additional drivers must be enabled in order to use the 124 functionality of the device. 125 126config MFD_AT91_USART 127 tristate "AT91 USART Driver" 128 select MFD_CORE 129 depends on ARCH_AT91 || COMPILE_TEST 130 help 131 Select this to get support for AT91 USART IP. This is a wrapper 132 over at91-usart-serial driver and usart-spi-driver. Only one function 133 can be used at a time. The choice is done at boot time by the probe 134 function of this MFD driver according to a device tree property. 135 136config MFD_ATMEL_FLEXCOM 137 tristate "Atmel Flexcom (Flexible Serial Communication Unit)" 138 select MFD_CORE 139 depends on OF 140 help 141 Select this to get support for Atmel Flexcom. This is a wrapper 142 which embeds a SPI controller, a I2C controller and a USART. Only 143 one function can be used at a time. The choice is done at boot time 144 by the probe function of this MFD driver according to a device tree 145 property. 146 147config MFD_ATMEL_HLCDC 148 tristate "Atmel HLCDC (High-end LCD Controller)" 149 select MFD_CORE 150 select REGMAP_MMIO 151 depends on OF 152 help 153 If you say yes here you get support for the HLCDC block. 154 This driver provides common support for accessing the device, 155 additional drivers must be enabled in order to use the 156 functionality of the device. 157 158config MFD_ATMEL_SMC 159 bool 160 select MFD_SYSCON 161 162config MFD_BCM590XX 163 tristate "Broadcom BCM590xx PMUs" 164 select MFD_CORE 165 select REGMAP_I2C 166 depends on I2C 167 help 168 Support for the BCM590xx PMUs from Broadcom 169 170config MFD_BD9571MWV 171 tristate "ROHM BD9571MWV PMIC" 172 select MFD_CORE 173 select REGMAP_I2C 174 select REGMAP_IRQ 175 depends on I2C 176 help 177 Support for the ROHM BD9571MWV PMIC, which contains single 178 voltage regulator, voltage sampling units, GPIO block and 179 watchdog block. 180 181 This driver can also be built as a module. If so, the module 182 will be called bd9571mwv. 183 184config MFD_AC100 185 tristate "X-Powers AC100" 186 select MFD_CORE 187 depends on SUNXI_RSB 188 help 189 If you say Y here you get support for the X-Powers AC100 audio codec 190 IC. 191 This driver include only the core APIs. You have to select individual 192 components like codecs or RTC under the corresponding menus. 193 194config MFD_AXP20X 195 tristate 196 select MFD_CORE 197 select REGMAP_IRQ 198 199config MFD_AXP20X_I2C 200 tristate "X-Powers AXP series PMICs with I2C" 201 select MFD_AXP20X 202 select REGMAP_I2C 203 depends on I2C 204 help 205 If you say Y here you get support for the X-Powers AXP series power 206 management ICs (PMICs) controlled with I2C. 207 This driver include only the core APIs. You have to select individual 208 components like regulators or the PEK (Power Enable Key) under the 209 corresponding menus. 210 211 Note on x86 this provides an ACPI OpRegion, so this must be 'y' 212 (builtin) and not a module, as the OpRegion must be available as 213 soon as possible. For the same reason the I2C bus driver options 214 I2C_DESIGNWARE_PLATFORM and I2C_DESIGNWARE_BAYTRAIL must be 'y' too. 215 216config MFD_AXP20X_RSB 217 tristate "X-Powers AXP series PMICs with RSB" 218 select MFD_AXP20X 219 depends on SUNXI_RSB 220 help 221 If you say Y here you get support for the X-Powers AXP series power 222 management ICs (PMICs) controlled with RSB. 223 This driver include only the core APIs. You have to select individual 224 components like regulators or the PEK (Power Enable Key) under the 225 corresponding menus. 226 227config MFD_CROS_EC_DEV 228 tristate "ChromeOS Embedded Controller multifunction device" 229 select MFD_CORE 230 depends on CROS_EC 231 default CROS_EC 232 help 233 Select this to get support for ChromeOS Embedded Controller 234 sub-devices. This driver will instantiate additional drivers such 235 as RTC, USBPD, etc. but you have to select the individual drivers. 236 237 To compile this driver as a module, choose M here: the module will be 238 called cros-ec-dev. 239 240config MFD_CS42L43 241 tristate 242 select MFD_CORE 243 select REGMAP 244 245config MFD_CS42L43_I2C 246 tristate "Cirrus Logic CS42L43 (I2C)" 247 depends on I2C 248 select REGMAP_I2C 249 select MFD_CS42L43 250 help 251 Select this to support the Cirrus Logic CS42L43 PC CODEC with 252 headphone and class D speaker drivers over I2C. 253 254config MFD_CS42L43_SDW 255 tristate "Cirrus Logic CS42L43 (SoundWire)" 256 depends on SOUNDWIRE 257 select REGMAP_SOUNDWIRE 258 select MFD_CS42L43 259 help 260 Select this to support the Cirrus Logic CS42L43 PC CODEC with 261 headphone and class D speaker drivers over SoundWire. 262 263config MFD_MADERA 264 tristate "Cirrus Logic Madera codecs" 265 select MFD_CORE 266 select REGMAP 267 select REGMAP_IRQ 268 select MADERA_IRQ 269 select PINCTRL 270 select PINCTRL_MADERA 271 help 272 Support for the Cirrus Logic Madera platform audio codecs 273 274config MFD_MADERA_I2C 275 tristate "Cirrus Logic Madera codecs with I2C" 276 depends on MFD_MADERA 277 depends on I2C 278 select REGMAP_I2C 279 help 280 Support for the Cirrus Logic Madera platform audio SoC 281 core functionality controlled via I2C. 282 283config MFD_MADERA_SPI 284 tristate "Cirrus Logic Madera codecs with SPI" 285 depends on MFD_MADERA 286 depends on SPI_MASTER 287 select REGMAP_SPI 288 help 289 Support for the Cirrus Logic Madera platform audio SoC 290 core functionality controlled via SPI. 291 292config MFD_MAX5970 293 tristate "Maxim 5970/5978 power switch and monitor" 294 depends on (I2C && OF) 295 select MFD_SIMPLE_MFD_I2C 296 help 297 This driver controls a Maxim 5970/5978 switch via I2C bus. 298 The MAX5970/5978 is a smart switch with no output regulation, but 299 fault protection and voltage and current monitoring capabilities. 300 Also it supports upto 4 indication leds. 301 302config MFD_CS47L15 303 bool "Cirrus Logic CS47L15" 304 select PINCTRL_CS47L15 305 depends on MFD_MADERA 306 help 307 Support for Cirrus Logic CS47L15 Smart Codec 308 309config MFD_CS47L35 310 bool "Cirrus Logic CS47L35" 311 select PINCTRL_CS47L35 312 depends on MFD_MADERA 313 help 314 Support for Cirrus Logic CS47L35 Smart Codec 315 316config MFD_CS47L85 317 bool "Cirrus Logic CS47L85" 318 select PINCTRL_CS47L85 319 depends on MFD_MADERA 320 help 321 Support for Cirrus Logic CS47L85 Smart Codec 322 323config MFD_CS47L90 324 bool "Cirrus Logic CS47L90/91" 325 select PINCTRL_CS47L90 326 depends on MFD_MADERA 327 help 328 Support for Cirrus Logic CS47L90 and CS47L91 Smart Codecs 329 330config MFD_CS47L92 331 bool "Cirrus Logic CS47L92/93" 332 select PINCTRL_CS47L92 333 depends on MFD_MADERA 334 help 335 Support for Cirrus Logic CS42L92, CS47L92 and CS47L93 Smart Codecs 336 337config PMIC_DA903X 338 bool "Dialog Semiconductor DA9030/DA9034 PMIC Support" 339 depends on I2C=y 340 help 341 Say yes here to add support for Dialog Semiconductor DA9030 (a.k.a 342 ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC 343 usually found on PXA processors-based platforms. This includes 344 the I2C driver and the core APIs _only_, you have to select 345 individual components like LCD backlight, voltage regulators, 346 LEDs and battery-charger under the corresponding menus. 347 348config PMIC_DA9052 349 bool 350 select MFD_CORE 351 352config MFD_DA9052_SPI 353 bool "Dialog Semiconductor DA9052/53 PMIC variants with SPI" 354 select REGMAP_SPI 355 select REGMAP_IRQ 356 select PMIC_DA9052 357 depends on SPI_MASTER=y 358 help 359 Support for the Dialog Semiconductor DA9052 PMIC 360 when controlled using SPI. This driver provides common support 361 for accessing the device, additional drivers must be enabled in 362 order to use the functionality of the device. 363 364config MFD_DA9052_I2C 365 bool "Dialog Semiconductor DA9052/53 PMIC variants with I2C" 366 select REGMAP_I2C 367 select REGMAP_IRQ 368 select PMIC_DA9052 369 depends on I2C=y 370 help 371 Support for the Dialog Semiconductor DA9052 PMIC 372 when controlled using I2C. This driver provides common support 373 for accessing the device, additional drivers must be enabled in 374 order to use the functionality of the device. 375 376config MFD_DA9055 377 bool "Dialog Semiconductor DA9055 PMIC Support" 378 select REGMAP_I2C 379 select REGMAP_IRQ 380 select MFD_CORE 381 depends on I2C=y 382 help 383 Say yes here for support of Dialog Semiconductor DA9055. This is 384 a Power Management IC. This driver provides common support for 385 accessing the device as well as the I2C interface to the chip itself. 386 Additional drivers must be enabled in order to use the functionality 387 of the device. 388 389config MFD_DA9062 390 tristate "Dialog Semiconductor DA9062/61 PMIC Support" 391 select MFD_CORE 392 select REGMAP_I2C 393 select REGMAP_IRQ 394 depends on I2C 395 help 396 Say yes here for support for the Dialog Semiconductor DA9061 and 397 DA9062 PMICs. 398 This includes the I2C driver and core APIs. 399 Additional drivers must be enabled in order to use the functionality 400 of the device. 401 402config MFD_DA9063 403 tristate "Dialog Semiconductor DA9063 PMIC Support" 404 select MFD_CORE 405 select REGMAP_I2C 406 select REGMAP_IRQ 407 depends on I2C 408 help 409 Say yes here for support for the Dialog Semiconductor DA9063 PMIC. 410 This includes the I2C driver and core APIs. 411 Additional drivers must be enabled in order to use the functionality 412 of the device. 413 414config MFD_DA9150 415 tristate "Dialog Semiconductor DA9150 Charger Fuel-Gauge chip" 416 depends on I2C 417 select MFD_CORE 418 select REGMAP_I2C 419 select REGMAP_IRQ 420 help 421 This adds support for the DA9150 integrated charger and fuel-gauge 422 chip. This driver provides common support for accessing the device. 423 Additional drivers must be enabled in order to use the specific 424 features of the device. 425 426config MFD_DLN2 427 tristate "Diolan DLN2 support" 428 select MFD_CORE 429 depends on USB 430 help 431 This adds support for Diolan USB-I2C/SPI/GPIO Master Adapter 432 DLN-2. Additional drivers such as I2C_DLN2, GPIO_DLN2, 433 etc. must be enabled in order to use the functionality of 434 the device. 435 436config MFD_ENE_KB3930 437 tristate "ENE KB3930 Embedded Controller support" 438 depends on I2C 439 depends on MACH_MMP3_DT || COMPILE_TEST 440 select MFD_CORE 441 help 442 This adds support for the power-off functionality and access to 443 the registers that control LEDS and USB port power on ENE KB3930 444 Embedded Controller. To use the LED functionality LEDS_ARIEL must 445 be enabled. 446 447config MFD_EXYNOS_LPASS 448 tristate "Samsung Exynos SoC Low Power Audio Subsystem" 449 depends on ARCH_EXYNOS || COMPILE_TEST 450 select MFD_CORE 451 select REGMAP_MMIO 452 help 453 Select this option to enable support for Samsung Exynos Low Power 454 Audio Subsystem present on some of Samsung Exynos 455 SoCs (e.g. Exynos5433). 456 Choose Y here only if you build for such Samsung SoC. 457 458config MFD_GATEWORKS_GSC 459 tristate "Gateworks System Controller" 460 depends on (I2C && OF) 461 select MFD_CORE 462 select REGMAP_I2C 463 select REGMAP_IRQ 464 help 465 Enable support for the Gateworks System Controller (GSC) found 466 on Gateworks Single Board Computers supporting system functions 467 such as push-button monitor, multiple ADC's for voltage and 468 temperature monitoring, fan controller and watchdog monitor. 469 This driver provides common support for accessing the device. 470 Additional drivers must be enabled in order to use the 471 functionality of the device. 472 473config MFD_MC13XXX 474 tristate 475 depends on (SPI_MASTER || I2C) 476 select MFD_CORE 477 select REGMAP_IRQ 478 help 479 Enable support for the Freescale MC13783 and MC13892 PMICs. 480 This driver provides common support for accessing the device, 481 additional drivers must be enabled in order to use the 482 functionality of the device. 483 484config MFD_MC13XXX_SPI 485 tristate "Freescale MC13783 and MC13892 SPI interface" 486 depends on SPI_MASTER 487 select REGMAP_SPI 488 select MFD_MC13XXX 489 help 490 Select this if your MC13xxx is connected via an SPI bus. 491 492config MFD_MC13XXX_I2C 493 tristate "Freescale MC13892 I2C interface" 494 depends on I2C 495 select REGMAP_I2C 496 select MFD_MC13XXX 497 help 498 Select this if your MC13xxx is connected via an I2C bus. 499 500config MFD_MP2629 501 tristate "Monolithic Power Systems MP2629 ADC and Battery charger" 502 depends on I2C 503 select REGMAP_I2C 504 select MFD_CORE 505 help 506 Select this option to enable support for Monolithic Power Systems 507 battery charger. This provides ADC, thermal and battery charger power 508 management functions. 509 510config MFD_MXS_LRADC 511 tristate "Freescale i.MX23/i.MX28 LRADC" 512 depends on ARCH_MXS || COMPILE_TEST 513 select MFD_CORE 514 select STMP_DEVICE 515 help 516 Say yes here to build support for the Low Resolution 517 Analog-to-Digital Converter (LRADC) found on the i.MX23 and i.MX28 518 processors. This driver provides common support for accessing the 519 device, additional drivers must be enabled in order to use the 520 functionality of the device: 521 mxs-lradc-adc for ADC readings 522 mxs-lradc-ts for touchscreen support 523 524 This driver can also be built as a module. If so, the module will be 525 called mxs-lradc. 526 527config MFD_MX25_TSADC 528 tristate "Freescale i.MX25 integrated Touchscreen and ADC unit" 529 select REGMAP_MMIO 530 depends on (SOC_IMX25 && OF) || COMPILE_TEST 531 help 532 Enable support for the integrated Touchscreen and ADC unit of the 533 i.MX25 processors. They consist of a conversion queue for general 534 purpose ADC and a queue for Touchscreens. 535 536config MFD_HI6421_PMIC 537 tristate "HiSilicon Hi6421 PMU/Codec IC" 538 depends on OF 539 select MFD_CORE 540 select REGMAP_MMIO 541 help 542 Add support for HiSilicon Hi6421 PMIC. Hi6421 includes multi- 543 functions, such as regulators, RTC, codec, Coulomb counter, etc. 544 This driver includes core APIs _only_. You have to select 545 individual components like voltage regulators under corresponding 546 menus in order to enable them. 547 We communicate with the Hi6421 via memory-mapped I/O. 548 549config MFD_HI6421_SPMI 550 tristate "HiSilicon Hi6421v600 SPMI PMU/Codec IC" 551 depends on OF 552 depends on SPMI 553 select MFD_CORE 554 select REGMAP_SPMI 555 help 556 Add support for HiSilicon Hi6421v600 SPMI PMIC. Hi6421 includes 557 multi-functions, such as regulators, RTC, codec, Coulomb counter, 558 etc. 559 560 This driver includes core APIs _only_. You have to select 561 individual components like voltage regulators under corresponding 562 menus in order to enable them. 563 We communicate with the Hi6421v600 via a SPMI bus. 564 565config MFD_HI655X_PMIC 566 tristate "HiSilicon Hi655X series PMU/Codec IC" 567 depends on ARCH_HISI || COMPILE_TEST 568 depends on OF 569 select MFD_CORE 570 select REGMAP_MMIO 571 select REGMAP_IRQ 572 help 573 Select this option to enable Hisilicon hi655x series pmic driver. 574 575config MFD_INTEL_QUARK_I2C_GPIO 576 tristate "Intel Quark MFD I2C GPIO" 577 depends on PCI 578 depends on X86 579 depends on COMMON_CLK 580 select MFD_CORE 581 help 582 This MFD provides support for I2C and GPIO that exist only 583 in a single PCI device. It splits the 2 IO devices to 584 their respective IO driver. 585 The GPIO exports a total amount of 8 interrupt-capable GPIOs. 586 587config LPC_ICH 588 tristate "Intel ICH LPC" 589 depends on PCI 590 select MFD_CORE 591 select P2SB if X86 592 help 593 The LPC bridge function of the Intel ICH provides support for 594 many functional units. This driver provides needed support for 595 other drivers to control these functions, currently GPIO and 596 watchdog. 597 598config LPC_SCH 599 tristate "Intel SCH LPC" 600 depends on PCI 601 select MFD_CORE 602 help 603 LPC bridge function of the Intel SCH provides support for 604 System Management Bus and General Purpose I/O. 605 606config INTEL_SOC_PMIC 607 bool "Support for Crystal Cove PMIC" 608 depends on HAS_IOMEM && I2C=y && GPIOLIB && COMMON_CLK 609 depends on (X86 && ACPI) || COMPILE_TEST 610 depends on I2C_DESIGNWARE_PLATFORM=y || COMPILE_TEST 611 select MFD_CORE 612 select REGMAP_I2C 613 select REGMAP_IRQ 614 help 615 Select this option to enable support for Crystal Cove PMIC 616 on some Intel SoC systems. The PMIC provides ADC, GPIO, 617 thermal, charger and related power management functions 618 on these systems. 619 620 This option is a bool as it provides an ACPI OpRegion which must be 621 available before any devices using it are probed. This option also 622 causes the designware-i2c driver to be builtin for the same reason. 623 624config INTEL_SOC_PMIC_BXTWC 625 tristate "Support for Intel Broxton Whiskey Cove PMIC" 626 depends on MFD_INTEL_PMC_BXT 627 select MFD_CORE 628 select REGMAP_IRQ 629 help 630 Select this option to enable support for Whiskey Cove PMIC 631 on Intel Broxton systems. The PMIC provides ADC, GPIO, 632 thermal, charger and related power management functions 633 on these systems. 634 635config INTEL_SOC_PMIC_CHTWC 636 bool "Support for Intel Cherry Trail Whiskey Cove PMIC" 637 depends on ACPI && HAS_IOMEM && I2C=y && COMMON_CLK 638 depends on X86 || COMPILE_TEST 639 depends on I2C_DESIGNWARE_PLATFORM=y 640 select MFD_CORE 641 select REGMAP_I2C 642 select REGMAP_IRQ 643 help 644 Select this option to enable support for the Intel Cherry Trail 645 Whiskey Cove PMIC found on some Intel Cherry Trail systems. 646 647 This option is a bool as it provides an ACPI OpRegion which must be 648 available before any devices using it are probed. This option also 649 causes the designware-i2c driver to be builtin for the same reason. 650 651config INTEL_SOC_PMIC_CHTDC_TI 652 tristate "Support for Intel Cherry Trail Dollar Cove TI PMIC" 653 depends on GPIOLIB 654 depends on I2C=y && I2C_DESIGNWARE_PLATFORM=y 655 depends on ACPI 656 depends on X86 657 select MFD_CORE 658 select REGMAP_I2C 659 select REGMAP_IRQ 660 help 661 Select this option for supporting Dollar Cove (TI version) PMIC 662 device that is found on some Intel Cherry Trail systems. 663 664 This option is a bool as it provides an ACPI OpRegion which must be 665 available before any devices using it are probed. This option also 666 needs the designware-i2c driver to be builtin for the same reason. 667 668config INTEL_SOC_PMIC_MRFLD 669 tristate "Support for Intel Merrifield Basin Cove PMIC" 670 depends on GPIOLIB 671 depends on ACPI 672 depends on INTEL_SCU 673 select MFD_CORE 674 select REGMAP_IRQ 675 help 676 Select this option for supporting Basin Cove PMIC device 677 that is found on Intel Merrifield systems. 678 679config MFD_INTEL_LPSS 680 tristate 681 select COMMON_CLK 682 select MFD_CORE 683 684config MFD_INTEL_LPSS_ACPI 685 tristate "Intel Low Power Subsystem support in ACPI mode" 686 select MFD_INTEL_LPSS 687 depends on X86 && ACPI 688 help 689 This driver supports Intel Low Power Subsystem (LPSS) devices such as 690 I2C, SPI and HS-UART starting from Intel Sunrisepoint (Intel Skylake 691 PCH) in ACPI mode. 692 693config MFD_INTEL_LPSS_PCI 694 tristate "Intel Low Power Subsystem support in PCI mode" 695 select MFD_INTEL_LPSS 696 depends on X86 && PCI 697 help 698 This driver supports Intel Low Power Subsystem (LPSS) devices such as 699 I2C, SPI and HS-UART starting from Intel Sunrisepoint (Intel Skylake 700 PCH) in PCI mode. 701 702config MFD_INTEL_PMC_BXT 703 tristate "Intel PMC Driver for Broxton" 704 depends on X86 705 depends on X86_PLATFORM_DEVICES 706 depends on ACPI 707 select INTEL_SCU_IPC 708 select MFD_CORE 709 help 710 This driver provides support for the PMC (Power Management 711 Controller) on Intel Broxton and Apollo Lake. The PMC is a 712 multi-function device that exposes IPC, General Control 713 Register and P-unit access. In addition this creates devices 714 for iTCO watchdog and telemetry that are part of the PMC. 715 716config MFD_IPAQ_MICRO 717 bool "Atmel Micro ASIC (iPAQ h3100/h3600/h3700) Support" 718 depends on SA1100_H3600 719 select MFD_CORE 720 help 721 Select this to get support for the Microcontroller found in 722 the Compaq iPAQ handheld computers. This is an Atmel 723 AT90LS8535 microcontroller flashed with a special iPAQ 724 firmware using the custom protocol implemented in this driver. 725 726config MFD_IQS62X 727 tristate "Azoteq IQS620A/621/622/624/625 core support" 728 depends on I2C 729 select MFD_CORE 730 select REGMAP_I2C 731 help 732 Say Y here if you want to build core support for the Azoteq IQS620A, 733 IQS621, IQS622, IQS624 and IQS625 multi-function sensors. Additional 734 options must be selected to enable device-specific functions. 735 736 To compile this driver as a module, choose M here: the module will 737 be called iqs62x. 738 739config MFD_JANZ_CMODIO 740 tristate "Janz CMOD-IO PCI MODULbus Carrier Board" 741 select MFD_CORE 742 depends on PCI 743 help 744 This is the core driver for the Janz CMOD-IO PCI MODULbus 745 carrier board. This device is a PCI to MODULbus bridge which may 746 host many different types of MODULbus daughterboards, including 747 CAN and GPIO controllers. 748 749config MFD_KEMPLD 750 tristate "Kontron module PLD device" 751 select MFD_CORE 752 help 753 This is the core driver for the PLD (Programmable Logic Device) found 754 on some Kontron ETX and nearly all COMexpress (ETXexpress) modules as 755 well as on some other Kontron products. The PLD device may provide 756 functions like watchdog, GPIO, UART and I2C bus. 757 758 This driver can also be built as a module. If so, the module 759 will be called kempld-core. 760 761config MFD_88PM800 762 tristate "Marvell 88PM800" 763 depends on I2C 764 select REGMAP_I2C 765 select REGMAP_IRQ 766 select MFD_CORE 767 help 768 This supports for Marvell 88PM800 Power Management IC. 769 This includes the I2C driver and the core APIs _only_, you have to 770 select individual components like voltage regulators, RTC and 771 battery-charger under the corresponding menus. 772 773config MFD_88PM805 774 tristate "Marvell 88PM805" 775 depends on I2C 776 select REGMAP_I2C 777 select REGMAP_IRQ 778 select MFD_CORE 779 help 780 This supports for Marvell 88PM805 Power Management IC. This includes 781 the I2C driver and the core APIs _only_, you have to select individual 782 components like codec device, headset/Mic device under the 783 corresponding menus. 784 785config MFD_88PM860X 786 bool "Marvell 88PM8606/88PM8607" 787 depends on I2C=y 788 select REGMAP_I2C 789 select MFD_CORE 790 help 791 This supports for Marvell 88PM8606/88PM8607 Power Management IC. 792 This includes the I2C driver and the core APIs _only_, you have to 793 select individual components like voltage regulators, RTC and 794 battery-charger under the corresponding menus. 795 796config MFD_MAX14577 797 tristate "Maxim Semiconductor MAX14577/77836 MUIC + Charger Support" 798 depends on I2C 799 select MFD_CORE 800 select REGMAP_I2C 801 select REGMAP_IRQ 802 select IRQ_DOMAIN 803 help 804 Say yes here to add support for Maxim Semiconductor MAX14577 and 805 MAX77836 Micro-USB ICs with battery charger. 806 This driver provides common support for accessing the device; 807 additional drivers must be enabled in order to use the functionality 808 of the device. 809 810config MFD_MAX77541 811 tristate "Analog Devices MAX77541/77540 PMIC Support" 812 depends on I2C=y 813 select MFD_CORE 814 select REGMAP_I2C 815 select REGMAP_IRQ 816 help 817 Say yes here to add support for Analog Devices MAX77541 and 818 MAX77540 Power Management ICs. This driver provides 819 common support for accessing the device; additional drivers 820 must be enabled in order to use the functionality of the device. 821 There are regulators and adc. 822 823config MFD_MAX77620 824 bool "Maxim Semiconductor MAX77620 and MAX20024 PMIC Support" 825 depends on I2C=y 826 depends on OF 827 select MFD_CORE 828 select REGMAP_I2C 829 select REGMAP_IRQ 830 select IRQ_DOMAIN 831 help 832 Say yes here to add support for Maxim Semiconductor MAX77620 and 833 MAX20024 which are Power Management IC with General purpose pins, 834 RTC, regulators, clock generator, watchdog etc. This driver 835 provides common support for accessing the device; additional drivers 836 must be enabled in order to use the functionality of the device. 837 838config MFD_MAX77650 839 tristate "Maxim MAX77650/77651 PMIC Support" 840 depends on I2C 841 depends on OF 842 select MFD_CORE 843 select REGMAP_I2C 844 select REGMAP_IRQ 845 help 846 Say Y here to add support for Maxim Semiconductor MAX77650 and 847 MAX77651 Power Management ICs. This is the core multifunction 848 driver for interacting with the device. The module name is 849 'max77650'. Additional drivers can be enabled in order to use 850 the following functionalities of the device: GPIO, regulator, 851 charger, LED, onkey. 852 853config MFD_MAX77686 854 tristate "Maxim Semiconductor MAX77686/802 PMIC Support" 855 depends on I2C 856 depends on OF 857 select MFD_CORE 858 select REGMAP_I2C 859 select REGMAP_IRQ 860 select IRQ_DOMAIN 861 help 862 Say yes here to add support for Maxim Semiconductor MAX77686 and 863 MAX77802 which are Power Management IC with an RTC on chip. 864 This driver provides common support for accessing the device; 865 additional drivers must be enabled in order to use the functionality 866 of the device. 867 868config MFD_MAX77693 869 tristate "Maxim Semiconductor MAX77693 PMIC Support" 870 depends on I2C 871 select MFD_CORE 872 select REGMAP_I2C 873 select REGMAP_IRQ 874 help 875 Say yes here to add support for Maxim Semiconductor MAX77693. 876 This is a companion Power Management IC with Flash, Haptic, Charger, 877 and MUIC(Micro USB Interface Controller) controls on chip. 878 This driver provides common support for accessing the device; 879 additional drivers must be enabled in order to use the functionality 880 of the device. 881 882config MFD_MAX77714 883 tristate "Maxim Semiconductor MAX77714 PMIC Support" 884 depends on I2C 885 depends on OF 886 select MFD_CORE 887 select REGMAP_I2C 888 help 889 Say yes here to add support for Maxim Semiconductor MAX77714. 890 This is a Power Management IC with 4 buck regulators, 9 891 low-dropout regulators, 8 GPIOs, RTC, watchdog etc. This driver 892 provides common support for accessing the device; additional 893 drivers must be enabled in order to use each functionality of the 894 device. 895 896config MFD_MAX77843 897 bool "Maxim Semiconductor MAX77843 PMIC Support" 898 depends on I2C=y 899 select MFD_CORE 900 select REGMAP_I2C 901 select REGMAP_IRQ 902 help 903 Say yes here to add support for Maxim Semiconductor MAX77843. 904 This is companion Power Management IC with LEDs, Haptic, Charger, 905 Fuel Gauge, MUIC(Micro USB Interface Controller) controls on chip. 906 This driver provides common support for accessing the device; 907 additional drivers must be enabled in order to use the functionality 908 of the device. 909 910config MFD_MAX8907 911 tristate "Maxim Semiconductor MAX8907 PMIC Support" 912 select MFD_CORE 913 depends on I2C 914 select REGMAP_I2C 915 select REGMAP_IRQ 916 help 917 Say yes here to add support for Maxim Semiconductor MAX8907. This is 918 a Power Management IC. This driver provides common support for 919 accessing the device; additional drivers must be enabled in order 920 to use the functionality of the device. 921 922config MFD_MAX8925 923 bool "Maxim Semiconductor MAX8925 PMIC Support" 924 depends on I2C=y 925 select MFD_CORE 926 help 927 Say yes here to add support for Maxim Semiconductor MAX8925. This is 928 a Power Management IC. This driver provides common support for 929 accessing the device, additional drivers must be enabled in order 930 to use the functionality of the device. 931 932config MFD_MAX8997 933 bool "Maxim Semiconductor MAX8997/8966 PMIC Support" 934 depends on I2C=y 935 select MFD_CORE 936 select IRQ_DOMAIN 937 help 938 Say yes here to add support for Maxim Semiconductor MAX8997/8966. 939 This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic, 940 MUIC controls on chip. 941 This driver provides common support for accessing the device; 942 additional drivers must be enabled in order to use the functionality 943 of the device. 944 945config MFD_MAX8998 946 bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support" 947 depends on I2C=y 948 select MFD_CORE 949 select IRQ_DOMAIN 950 help 951 Say yes here to add support for Maxim Semiconductor MAX8998 and 952 National Semiconductor LP3974. This is a Power Management IC. 953 This driver provides common support for accessing the device, 954 additional drivers must be enabled in order to use the functionality 955 of the device. 956 957config MFD_MT6360 958 tristate "Mediatek MT6360 SubPMIC" 959 select MFD_CORE 960 select REGMAP_I2C 961 select REGMAP_IRQ 962 select CRC8 963 depends on I2C 964 help 965 Say Y here to enable MT6360 PMU/PMIC/LDO functional support. 966 PMU part includes Charger, Flashlight, RGB LED 967 PMIC part includes 2-channel BUCKs and 2-channel LDOs 968 LDO part includes 4-channel LDOs 969 970config MFD_MT6370 971 tristate "MediaTek MT6370 SubPMIC" 972 select MFD_CORE 973 select REGMAP_I2C 974 select REGMAP_IRQ 975 depends on I2C 976 help 977 Say Y here to enable MT6370 SubPMIC functional support. 978 It consists of a single cell battery charger with ADC monitoring, RGB 979 LEDs, dual channel flashlight, WLED backlight driver, display bias 980 voltage supply, one general purpose LDO, and the USB Type-C & PD 981 controller complies with the latest USB Type-C and PD standards. 982 983 This driver can also be built as a module. If so, the module 984 will be called "mt6370". 985 986config MFD_MT6397 987 tristate "MediaTek MT6397 PMIC Support" 988 select MFD_CORE 989 select IRQ_DOMAIN 990 help 991 Say yes here to add support for MediaTek MT6397 PMIC. This is 992 a Power Management IC. This driver provides common support for 993 accessing the device; additional drivers must be enabled in order 994 to use the functionality of the device. 995 996config MFD_MENF21BMC 997 tristate "MEN 14F021P00 Board Management Controller Support" 998 depends on I2C 999 select MFD_CORE 1000 help 1001 Say yes here to add support for the MEN 14F021P00 BMC 1002 which is a Board Management Controller connected to the I2C bus. 1003 The device supports multiple sub-devices like LED, HWMON and WDT. 1004 This driver provides common support for accessing the devices; 1005 additional drivers must be enabled in order to use the 1006 functionality of the BMC device. 1007 1008 This driver can also be built as a module. If so the module 1009 will be called menf21bmc. 1010 1011config MFD_OCELOT 1012 tristate "Microsemi Ocelot External Control Support" 1013 depends on SPI_MASTER 1014 select MFD_CORE 1015 select REGMAP_SPI 1016 help 1017 Ocelot is a family of networking chips that support multiple ethernet 1018 and fibre interfaces. In addition to networking, they contain several 1019 other functions, including pinctrl, MDIO, and communication with 1020 external chips. While some chips have an internal processor capable of 1021 running an OS, others don't. All chips can be controlled externally 1022 through different interfaces, including SPI, I2C, and PCIe. 1023 1024 Say yes here to add support for Ocelot chips (VSC7511, VSC7512, 1025 VSC7513, VSC7514) controlled externally. 1026 1027 To compile this driver as a module, choose M here: the module will be 1028 called ocelot-soc. 1029 1030 If unsure, say N. 1031 1032config EZX_PCAP 1033 bool "Motorola EZXPCAP Support" 1034 depends on SPI_MASTER 1035 help 1036 This enables the PCAP ASIC present on EZX Phones. This is 1037 needed for MMC, TouchScreen, Sound, USB, etc.. 1038 1039config MFD_CPCAP 1040 tristate "Support for Motorola CPCAP" 1041 depends on SPI 1042 depends on OF 1043 select MFD_CORE 1044 select REGMAP_SPI 1045 select REGMAP_IRQ 1046 help 1047 Say yes here if you want to include driver for CPCAP. 1048 It is used on many Motorola phones and tablets as a PMIC. 1049 At least Motorola Droid 4 is known to use CPCAP. 1050 1051config MFD_VIPERBOARD 1052 tristate "Nano River Technologies Viperboard" 1053 select MFD_CORE 1054 depends on USB 1055 default n 1056 help 1057 Say yes here if you want support for Nano River Technologies 1058 Viperboard. 1059 There are mfd cell drivers available for i2c master, adc and 1060 both gpios found on the board. The spi part does not yet 1061 have a driver. 1062 You need to select the mfd cell drivers separately. 1063 The drivers do not support all features the board exposes. 1064 1065config MFD_NTXEC 1066 tristate "Netronix embedded controller (EC)" 1067 depends on OF 1068 depends on I2C 1069 select REGMAP_I2C 1070 select MFD_CORE 1071 help 1072 Say yes here if you want to support the embedded controller found in 1073 certain e-book readers designed by the original design manufacturer 1074 Netronix. 1075 1076config MFD_RETU 1077 tristate "Nokia Retu and Tahvo multi-function device" 1078 select MFD_CORE 1079 depends on I2C 1080 select REGMAP_IRQ 1081 help 1082 Retu and Tahvo are a multi-function devices found on Nokia 1083 Internet Tablets (770, N800 and N810). 1084 1085config MFD_PCF50633 1086 tristate "NXP PCF50633" 1087 depends on I2C 1088 select REGMAP_I2C 1089 help 1090 Say yes here if you have NXP PCF50633 chip on your board. 1091 This core driver provides register access and IRQ handling 1092 facilities, and registers devices for the various functions 1093 so that function-specific drivers can bind to them. 1094 1095config PCF50633_ADC 1096 tristate "NXP PCF50633 ADC" 1097 depends on MFD_PCF50633 1098 help 1099 Say yes here if you want to include support for ADC in the 1100 NXP PCF50633 chip. 1101 1102config PCF50633_GPIO 1103 tristate "NXP PCF50633 GPIO" 1104 depends on MFD_PCF50633 1105 help 1106 Say yes here if you want to include support GPIO for pins on 1107 the PCF50633 chip. 1108 1109config MFD_PM8XXX 1110 tristate "Qualcomm PM8xxx PMIC chips driver" 1111 depends on (ARM || HEXAGON || COMPILE_TEST) 1112 select IRQ_DOMAIN_HIERARCHY 1113 select MFD_CORE 1114 select REGMAP 1115 help 1116 If you say yes to this option, support will be included for the 1117 built-in PM8xxx PMIC chips. 1118 1119 This is required if your board has a PM8xxx and uses its features, 1120 such as: MPPs, GPIOs, regulators, interrupts, and PWM. 1121 1122 Say M here if you want to include support for PM8xxx chips as a 1123 module. This will build a module called "pm8xxx-core". 1124 1125config MFD_QCOM_RPM 1126 tristate "Qualcomm Resource Power Manager (RPM)" 1127 depends on ARCH_QCOM && OF 1128 help 1129 If you say yes to this option, support will be included for the 1130 Resource Power Manager system found in the Qualcomm 8660, 8960 and 1131 8064 based devices. 1132 1133 This is required to access many regulators, clocks and bus 1134 frequencies controlled by the RPM on these devices. 1135 1136 Say M here if you want to include support for the Qualcomm RPM as a 1137 module. This will build a module called "qcom_rpm". 1138 1139config MFD_SPMI_PMIC 1140 tristate "Qualcomm SPMI PMICs" 1141 depends on ARCH_QCOM || COMPILE_TEST 1142 depends on OF 1143 depends on SPMI 1144 select REGMAP_SPMI 1145 help 1146 This enables support for the Qualcomm SPMI PMICs. 1147 These PMICs are currently used with the Snapdragon 800 series of 1148 SoCs. Note, that this will only be useful paired with descriptions 1149 of the independent functions as children nodes in the device tree. 1150 1151 Say M here if you want to include support for the SPMI PMIC 1152 series as a module. The module will be called "qcom-spmi-pmic". 1153 1154config MFD_SY7636A 1155 tristate "Silergy SY7636A voltage regulator" 1156 depends on I2C 1157 select MFD_SIMPLE_MFD_I2C 1158 help 1159 Enable support for Silergy SY7636A voltage regulator. 1160 1161 To enable support for building sub-devices as modules, 1162 choose M here. 1163 1164config MFD_RDC321X 1165 tristate "RDC R-321x southbridge" 1166 select MFD_CORE 1167 depends on PCI 1168 help 1169 Say yes here if you want to have support for the RDC R-321x SoC 1170 southbridge which provides access to GPIOs and Watchdog using the 1171 southbridge PCI device configuration space. 1172 1173config MFD_RT4831 1174 tristate "Richtek RT4831 four channel WLED and Display Bias Voltage" 1175 depends on I2C 1176 select MFD_CORE 1177 select REGMAP_I2C 1178 help 1179 This enables support for the Richtek RT4831 that includes 4 channel 1180 WLED driving and Display Bias Voltage. It's commonly used to provide 1181 power to the LCD display and LCD backlight. 1182 1183config MFD_RT5033 1184 tristate "Richtek RT5033 Power Management IC" 1185 depends on I2C 1186 select MFD_CORE 1187 select REGMAP_I2C 1188 select REGMAP_IRQ 1189 help 1190 This driver provides for the Richtek RT5033 Power Management IC, 1191 which includes the I2C driver and the Core APIs. This driver provides 1192 common support for accessing the device. The device supports multiple 1193 sub-devices like charger, fuel gauge, flash LED, current source, 1194 LDO and Buck. 1195 1196config MFD_RT5120 1197 tristate "Richtek RT5120 Power Management IC" 1198 depends on I2C 1199 select MFD_CORE 1200 select REGMAP_I2C 1201 select REGMAP_IRQ 1202 help 1203 The enables support for Richtek RT5120 PMIC. It includes four high 1204 efficiency buck converters and one LDO voltage regulator. The device 1205 is targeted at providing the CPU voltage, memory, I/O and peripheral 1206 power rails in home entertainment devices. 1207 1208config MFD_RC5T583 1209 bool "Ricoh RC5T583 Power Management system device" 1210 depends on I2C=y 1211 select MFD_CORE 1212 select REGMAP_I2C 1213 help 1214 Select this option to get support for the RICOH583 Power 1215 Management system device. 1216 This driver provides common support for accessing the device 1217 through i2c interface. The device supports multiple sub-devices 1218 like GPIO, interrupts, RTC, LDO and DCDC regulators, onkey. 1219 Additional drivers must be enabled in order to use the 1220 different functionality of the device. 1221 1222config MFD_RK8XX 1223 bool 1224 select MFD_CORE 1225 1226config MFD_RK8XX_I2C 1227 tristate "Rockchip RK805/RK808/RK809/RK817/RK818 Power Management Chip" 1228 depends on I2C && OF 1229 select MFD_CORE 1230 select REGMAP_I2C 1231 select REGMAP_IRQ 1232 select MFD_RK8XX 1233 help 1234 If you say yes here you get support for the RK805, RK808, RK809, 1235 RK817 and RK818 Power Management chips. 1236 This driver provides common support for accessing the device 1237 through I2C interface. The device supports multiple sub-devices 1238 including interrupts, RTC, LDO & DCDC regulators, and onkey. 1239 1240config MFD_RK8XX_SPI 1241 tristate "Rockchip RK806 Power Management Chip" 1242 depends on SPI && OF 1243 select MFD_CORE 1244 select REGMAP_SPI 1245 select REGMAP_IRQ 1246 select MFD_RK8XX 1247 help 1248 If you say yes here you get support for the RK806 Power Management 1249 chip. 1250 This driver provides common support for accessing the device 1251 through an SPI interface. The device supports multiple sub-devices 1252 including interrupts, LDO & DCDC regulators, and power on-key. 1253 1254config MFD_RN5T618 1255 tristate "Ricoh RN5T567/618 PMIC" 1256 depends on I2C 1257 depends on OF 1258 select MFD_CORE 1259 select REGMAP_I2C 1260 select REGMAP_IRQ 1261 help 1262 Say yes here to add support for the Ricoh RN5T567, 1263 RN5T618, RC5T619 PMIC. 1264 This driver provides common support for accessing the device, 1265 additional drivers must be enabled in order to use the 1266 functionality of the device. 1267 1268config MFD_SEC_CORE 1269 tristate "Samsung Electronics PMIC Series Support" 1270 depends on I2C=y 1271 depends on OF 1272 select MFD_CORE 1273 select REGMAP_I2C 1274 select REGMAP_IRQ 1275 help 1276 Support for the Samsung Electronics PMIC devices coming 1277 usually along with Samsung Exynos SoC chipset. 1278 This driver provides common support for accessing the device, 1279 additional drivers must be enabled in order to use the functionality 1280 of the device 1281 1282 To compile this driver as a module, choose M here: the 1283 module will be called sec-core. 1284 Have in mind that important core drivers (like regulators) depend 1285 on this driver so building this as a module might require proper 1286 initial ramdisk or might not boot up as well in certain scenarios. 1287 1288config MFD_SI476X_CORE 1289 tristate "Silicon Laboratories 4761/64/68 AM/FM radio." 1290 depends on I2C 1291 select MFD_CORE 1292 select REGMAP_I2C 1293 help 1294 This is the core driver for the SI476x series of AM/FM 1295 radio. This MFD driver connects the radio-si476x V4L2 module 1296 and the si476x audio codec. 1297 1298 To compile this driver as a module, choose M here: the 1299 module will be called si476x-core. 1300 1301config MFD_SIMPLE_MFD_I2C 1302 tristate 1303 depends on I2C 1304 select MFD_CORE 1305 select REGMAP_I2C 1306 help 1307 This driver creates a single register map with the intention for it 1308 to be shared by all sub-devices. 1309 1310 Once the register map has been successfully initialised, any 1311 sub-devices represented by child nodes in Device Tree will be 1312 subsequently registered. 1313 1314config MFD_SL28CPLD 1315 tristate "Kontron sl28cpld Board Management Controller" 1316 depends on I2C 1317 depends on ARCH_LAYERSCAPE || COMPILE_TEST 1318 select MFD_SIMPLE_MFD_I2C 1319 help 1320 Say yes here to enable support for the Kontron sl28cpld board 1321 management controller. 1322 1323 It can be found on the following boards: 1324 * SMARC-sAL28 1325 1326config MFD_SM501 1327 tristate "Silicon Motion SM501" 1328 depends on HAS_DMA 1329 help 1330 This is the core driver for the Silicon Motion SM501 multimedia 1331 companion chip. This device is a multifunction device which may 1332 provide numerous interfaces including USB host controller, USB gadget, 1333 asynchronous serial ports, audio functions, and a dual display video 1334 interface. The device may be connected by PCI or local bus with 1335 varying functions enabled. 1336 1337config MFD_SM501_GPIO 1338 bool "Export GPIO via GPIO layer" 1339 depends on MFD_SM501 && GPIOLIB 1340 help 1341 This option uses the gpio library layer to export the 64 GPIO 1342 lines on the SM501. The platform data is used to supply the 1343 base number for the first GPIO line to register. 1344 1345config MFD_SKY81452 1346 tristate "Skyworks Solutions SKY81452" 1347 select MFD_CORE 1348 select REGMAP_I2C 1349 depends on I2C 1350 help 1351 This is the core driver for the Skyworks SKY81452 backlight and 1352 voltage regulator device. 1353 1354 This driver can also be built as a module. If so, the module 1355 will be called sky81452. 1356 1357config MFD_SC27XX_PMIC 1358 tristate "Spreadtrum SC27xx PMICs" 1359 depends on ARCH_SPRD || COMPILE_TEST 1360 depends on SPI_MASTER 1361 select MFD_CORE 1362 select REGMAP_SPI 1363 select REGMAP_IRQ 1364 help 1365 This enables support for the Spreadtrum SC27xx PMICs with SPI 1366 interface. The SC27xx series PMICs integrate power management, 1367 audio codec, battery management and user interface support 1368 function (such as RTC, Typec, indicator and so on) in a single chip. 1369 1370 This driver provides common support for accessing the SC27xx PMICs, 1371 and it also adds the irq_chip parts for handling the PMIC chip events. 1372 1373config RZ_MTU3 1374 bool "Renesas RZ/G2L MTU3a core driver" 1375 depends on (ARCH_RZG2L && OF) || COMPILE_TEST 1376 help 1377 Select this option to enable Renesas RZ/G2L MTU3a core driver for 1378 the Multi-Function Timer Pulse Unit 3 (MTU3a) hardware available 1379 on SoCs from Renesas. The core driver shares the clk and channel 1380 register access for the other child devices like Counter, PWM, 1381 Clock Source, and Clock event. 1382 1383config ABX500_CORE 1384 bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions" 1385 depends on ARCH_U8500 || COMPILE_TEST 1386 default y if ARCH_U8500 1387 help 1388 Say yes here if you have the ABX500 Mixed Signal IC family 1389 chips. This core driver expose register access functions. 1390 Functionality specific drivers using these functions can 1391 remain unchanged when IC changes. Binding of the functions to 1392 actual register access is done by the IC core driver. 1393 1394config AB8500_CORE 1395 bool "ST-Ericsson AB8500 Mixed Signal Power Management chip" 1396 depends on ABX500_CORE && MFD_DB8500_PRCMU 1397 select POWER_SUPPLY 1398 select MFD_CORE 1399 select IRQ_DOMAIN 1400 help 1401 Select this option to enable access to AB8500 power management 1402 chip. This connects to U8500 either on the SSP/SPI bus (deprecated 1403 since hardware version v1.0) or the I2C bus via PRCMU. It also adds 1404 the irq_chip parts for handling the Mixed Signal chip events. 1405 This chip embeds various other multimedia functionalities as well. 1406 1407config MFD_DB8500_PRCMU 1408 bool "ST-Ericsson DB8500 Power Reset Control Management Unit" 1409 depends on UX500_SOC_DB8500 1410 select MFD_CORE 1411 help 1412 Select this option to enable support for the DB8500 Power Reset 1413 and Control Management Unit. This is basically an autonomous 1414 system controller running an XP70 microprocessor, which is accessed 1415 through a register map. 1416 1417config MFD_STMPE 1418 bool "STMicroelectronics STMPE" 1419 depends on (I2C=y || SPI_MASTER=y) 1420 depends on OF 1421 select MFD_CORE 1422 help 1423 Support for the STMPE family of I/O Expanders from 1424 STMicroelectronics. 1425 1426 Currently supported devices are: 1427 1428 STMPE811: GPIO, Touchscreen, ADC 1429 STMPE1601: GPIO, Keypad 1430 STMPE1801: GPIO, Keypad 1431 STMPE2401: GPIO, Keypad 1432 STMPE2403: GPIO, Keypad 1433 1434 This driver provides common support for accessing the device, 1435 additional drivers must be enabled in order to use the functionality 1436 of the device. Currently available sub drivers are: 1437 1438 GPIO: stmpe-gpio 1439 Keypad: stmpe-keypad 1440 Touchscreen: stmpe-ts 1441 ADC: stmpe-adc 1442 1443menu "STMicroelectronics STMPE Interface Drivers" 1444depends on MFD_STMPE 1445 1446config STMPE_I2C 1447 bool "STMicroelectronics STMPE I2C Interface" 1448 depends on I2C=y 1449 default y 1450 help 1451 This is used to enable I2C interface of STMPE 1452 1453config STMPE_SPI 1454 bool "STMicroelectronics STMPE SPI Interface" 1455 depends on SPI_MASTER 1456 help 1457 This is used to enable SPI interface of STMPE 1458endmenu 1459 1460config MFD_STA2X11 1461 bool "STMicroelectronics STA2X11" 1462 depends on STA2X11 1463 select MFD_CORE 1464 select REGMAP_MMIO 1465 1466config MFD_SUN6I_PRCM 1467 bool "Allwinner A31/A23/A33 PRCM controller" 1468 depends on ARCH_SUNXI || COMPILE_TEST 1469 select MFD_CORE 1470 help 1471 Support for the PRCM (Power/Reset/Clock Management) unit available 1472 in the A31, A23, and A33 SoCs. Other Allwinner SoCs contain similar 1473 hardware, but they do not use this driver. 1474 1475config MFD_SYSCON 1476 bool "System Controller Register R/W Based on Regmap" 1477 select REGMAP_MMIO 1478 help 1479 Select this option to enable accessing system control registers 1480 via regmap. 1481 1482config MFD_TI_AM335X_TSCADC 1483 tristate "TI ADC / Touch Screen chip support" 1484 select MFD_CORE 1485 select REGMAP 1486 select REGMAP_MMIO 1487 help 1488 If you say yes here you get support for Texas Instruments series 1489 of Touch Screen /ADC chips. 1490 To compile this driver as a module, choose M here: the 1491 module will be called ti_am335x_tscadc. 1492 1493config MFD_LP3943 1494 tristate "TI/National Semiconductor LP3943 MFD Driver" 1495 depends on I2C 1496 select MFD_CORE 1497 select REGMAP_I2C 1498 help 1499 Support for the TI/National Semiconductor LP3943. 1500 This driver consists of GPIO and PWM drivers. 1501 With these functionalities, it can be used for LED string control or 1502 general usage such like a GPIO controller and a PWM controller. 1503 1504config MFD_LP8788 1505 bool "TI LP8788 Power Management Unit Driver" 1506 depends on I2C=y 1507 select MFD_CORE 1508 select REGMAP_I2C 1509 select IRQ_DOMAIN 1510 help 1511 TI LP8788 PMU supports regulators, battery charger, RTC, 1512 ADC, backlight driver and current sinks. 1513 1514config MFD_TI_LMU 1515 tristate "TI Lighting Management Unit driver" 1516 depends on I2C 1517 select MFD_CORE 1518 select REGMAP_I2C 1519 help 1520 Say yes here to enable support for TI LMU chips. 1521 TI LMU MFD supports LM3532, LM3631, LM3632, LM3633, LM3695 and 1522 LM36274. It consists of backlight, LED and regulator driver. 1523 It provides consistent device controls for lighting functions. 1524 1525config MFD_OMAP_USB_HOST 1526 bool "TI OMAP USBHS core and TLL driver" 1527 depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3 1528 depends on COMMON_CLK 1529 default y 1530 help 1531 This is the core driver for the OAMP EHCI and OHCI drivers. 1532 This MFD driver does the required setup functionalities for 1533 OMAP USB Host drivers. 1534 1535config MFD_PALMAS 1536 tristate "TI Palmas series chips" 1537 select MFD_CORE 1538 select REGMAP_I2C 1539 select REGMAP_IRQ 1540 depends on I2C=y 1541 help 1542 If you say yes here you get support for the Palmas 1543 series of PMIC chips from Texas Instruments. 1544 1545config TPS6105X 1546 tristate "TI TPS61050/61052 Boost Converters" 1547 depends on I2C 1548 select REGMAP_I2C 1549 select REGULATOR 1550 select MFD_CORE 1551 select REGULATOR_FIXED_VOLTAGE 1552 help 1553 This option enables a driver for the TP61050/TPS61052 1554 high-power "white LED driver". This boost converter is 1555 sometimes used for other things than white LEDs, and 1556 also contains a GPIO pin. 1557 1558config TPS65010 1559 tristate "TI TPS6501x Power Management chips" 1560 depends on I2C && GPIOLIB 1561 default MACH_OMAP_OSK 1562 help 1563 If you say yes here you get support for the TPS6501x series of 1564 Power Management chips. These include voltage regulators, 1565 lithium ion/polymer battery charging, and other features that 1566 are often used in portable devices like cell phones and cameras. 1567 1568 This driver can also be built as a module. If so, the module 1569 will be called tps65010. 1570 1571config TPS6507X 1572 tristate "TI TPS6507x Power Management / Touch Screen chips" 1573 select MFD_CORE 1574 depends on I2C 1575 help 1576 If you say yes here you get support for the TPS6507x series of 1577 Power Management / Touch Screen chips. These include voltage 1578 regulators, lithium ion/polymer battery charging, touch screen 1579 and other features that are often used in portable devices. 1580 This driver can also be built as a module. If so, the module 1581 will be called tps6507x. 1582 1583config MFD_TPS65086 1584 tristate "TI TPS65086 Power Management Integrated Chips (PMICs)" 1585 select MFD_CORE 1586 select REGMAP 1587 select REGMAP_IRQ 1588 select REGMAP_I2C 1589 depends on I2C 1590 help 1591 If you say yes here you get support for the TPS65086 series of 1592 Power Management chips. 1593 This driver provides common support for accessing the device, 1594 additional drivers must be enabled in order to use the 1595 functionality of the device. 1596 1597config TPS65911_COMPARATOR 1598 tristate 1599 1600config MFD_TPS65090 1601 bool "TI TPS65090 Power Management chips" 1602 depends on I2C=y 1603 select MFD_CORE 1604 select REGMAP_I2C 1605 select REGMAP_IRQ 1606 help 1607 If you say yes here you get support for the TPS65090 series of 1608 Power Management chips. 1609 This driver provides common support for accessing the device, 1610 additional drivers must be enabled in order to use the 1611 functionality of the device. 1612 1613config MFD_TPS65217 1614 tristate "TI TPS65217 Power Management / White LED chips" 1615 depends on I2C && OF 1616 select MFD_CORE 1617 select REGMAP_I2C 1618 select IRQ_DOMAIN 1619 help 1620 If you say yes here you get support for the TPS65217 series of 1621 Power Management / White LED chips. 1622 These include voltage regulators, lithium ion/polymer battery 1623 charger, wled and other features that are often used in portable 1624 devices. 1625 1626 This driver can also be built as a module. If so, the module 1627 will be called tps65217. 1628 1629config MFD_TI_LP873X 1630 tristate "TI LP873X Power Management IC" 1631 depends on I2C 1632 select MFD_CORE 1633 select REGMAP_I2C 1634 help 1635 If you say yes here then you get support for the LP873X series of 1636 Power Management Integrated Circuits (PMIC). 1637 These include voltage regulators, thermal protection, configurable 1638 General Purpose Outputs (GPO) that are used in portable devices. 1639 1640 This driver can also be built as a module. If so, the module 1641 will be called lp873x. 1642 1643config MFD_TI_LP87565 1644 tristate "TI LP87565 Power Management IC" 1645 depends on I2C && OF 1646 select MFD_CORE 1647 select REGMAP_I2C 1648 help 1649 If you say yes here then you get support for the LP87565 series of 1650 Power Management Integrated Circuits (PMIC). 1651 These include voltage regulators, thermal protection, configurable 1652 General Purpose Outputs (GPO) that are used in portable devices. 1653 1654 This driver can also be built as a module. If so, the module 1655 will be called lp87565. 1656 1657config MFD_TPS65218 1658 tristate "TI TPS65218 Power Management chips" 1659 depends on I2C && OF 1660 select MFD_CORE 1661 select REGMAP_I2C 1662 select REGMAP_IRQ 1663 help 1664 If you say yes here you get support for the TPS65218 series of 1665 Power Management chips. 1666 These include voltage regulators, gpio and other features 1667 that are often used in portable devices. 1668 1669 This driver can also be built as a module. If so, the module 1670 will be called tps65218. 1671 1672config MFD_TPS65219 1673 tristate "TI TPS65219 Power Management IC" 1674 depends on I2C && OF 1675 select MFD_CORE 1676 select REGMAP_I2C 1677 select REGMAP_IRQ 1678 help 1679 If you say yes here you get support for the TPS65219 series of Power 1680 Management ICs. These include voltage regulators, GPIOs and 1681 push/power button that is often used in portable devices. 1682 1683 This driver can also be built as a module. If so, the module 1684 will be called tps65219. 1685 1686config MFD_TPS6586X 1687 bool "TI TPS6586x Power Management chips" 1688 depends on I2C=y 1689 select MFD_CORE 1690 select REGMAP_I2C 1691 help 1692 If you say yes here you get support for the TPS6586X series of 1693 Power Management chips. 1694 This driver provides common support for accessing the device, 1695 additional drivers must be enabled in order to use the 1696 functionality of the device. 1697 1698 This driver can also be built as a module. If so, the module 1699 will be called tps6586x. 1700 1701config MFD_TPS65910 1702 bool "TI TPS65910 Power Management chip" 1703 depends on I2C=y 1704 depends on GPIOLIB || COMPILE_TEST 1705 select MFD_CORE 1706 select REGMAP_I2C 1707 select REGMAP_IRQ 1708 select IRQ_DOMAIN 1709 help 1710 if you say yes here you get support for the TPS65910 series of 1711 Power Management chips. 1712 1713config MFD_TPS65912 1714 tristate 1715 select MFD_CORE 1716 select REGMAP 1717 select REGMAP_IRQ 1718 1719config MFD_TPS65912_I2C 1720 tristate "TI TPS65912 Power Management chip with I2C" 1721 select MFD_TPS65912 1722 select REGMAP_I2C 1723 depends on I2C 1724 help 1725 If you say yes here you get support for the TPS65912 series of 1726 PM chips with I2C interface. 1727 1728config MFD_TPS65912_SPI 1729 tristate "TI TPS65912 Power Management chip with SPI" 1730 select MFD_TPS65912 1731 select REGMAP_SPI 1732 depends on SPI_MASTER 1733 help 1734 If you say yes here you get support for the TPS65912 series of 1735 PM chips with SPI interface. 1736 1737config MFD_TPS6594 1738 tristate 1739 select MFD_CORE 1740 select REGMAP 1741 select REGMAP_IRQ 1742 1743config MFD_TPS6594_I2C 1744 tristate "TI TPS6594 Power Management chip with I2C" 1745 select MFD_TPS6594 1746 select REGMAP_I2C 1747 select CRC8 1748 depends on I2C 1749 help 1750 If you say yes here you get support for the TPS6594 series of 1751 PM chips with I2C interface. 1752 1753 This driver can also be built as a module. If so, the module 1754 will be called tps6594-i2c. 1755 1756config MFD_TPS6594_SPI 1757 tristate "TI TPS6594 Power Management chip with SPI" 1758 select MFD_TPS6594 1759 select REGMAP_SPI 1760 select CRC8 1761 depends on SPI_MASTER 1762 help 1763 If you say yes here you get support for the TPS6594 series of 1764 PM chips with SPI interface. 1765 1766 This driver can also be built as a module. If so, the module 1767 will be called tps6594-spi. 1768 1769config TWL4030_CORE 1770 bool "TI TWL4030/TWL5030/TWL6030/TPS659x0 Support" 1771 depends on I2C=y 1772 select IRQ_DOMAIN 1773 select REGMAP_I2C 1774 help 1775 Say yes here if you have TWL4030 / TWL6030 family chip on your board. 1776 This core driver provides register access and IRQ handling 1777 facilities, and registers devices for the various functions 1778 so that function-specific drivers can bind to them. 1779 1780 These multi-function chips are found on many OMAP2 and OMAP3 1781 boards, providing power management, RTC, GPIO, keypad, a 1782 high speed USB OTG transceiver, an audio codec (on most 1783 versions) and many other features. 1784 1785config TWL4030_POWER 1786 bool "TI TWL4030 power resources" 1787 depends on TWL4030_CORE && ARM 1788 help 1789 Say yes here if you want to use the power resources on the 1790 TWL4030 family chips. Most of these resources are regulators, 1791 which have a separate driver; some are control signals, such 1792 as clock request handshaking. 1793 1794 This driver uses board-specific data to initialize the resources 1795 and load scripts controlling which resources are switched off/on 1796 or reset when a sleep, wakeup or warm reset event occurs. 1797 1798config MFD_TWL4030_AUDIO 1799 bool "TI TWL4030 Audio" 1800 depends on TWL4030_CORE 1801 select MFD_CORE 1802 default n 1803 1804config TWL6040_CORE 1805 bool "TI TWL6040 audio codec" 1806 depends on I2C=y 1807 select MFD_CORE 1808 select REGMAP_I2C 1809 select REGMAP_IRQ 1810 default n 1811 help 1812 Say yes here if you want support for Texas Instruments TWL6040 audio 1813 codec. 1814 This driver provides common support for accessing the device, 1815 additional drivers must be enabled in order to use the 1816 functionality of the device (audio, vibra). 1817 1818config MENELAUS 1819 bool "TI TWL92330/Menelaus PM chip" 1820 depends on I2C=y && ARCH_OMAP2 1821 help 1822 If you say yes here you get support for the Texas Instruments 1823 TWL92330/Menelaus Power Management chip. This include voltage 1824 regulators, Dual slot memory card transceivers, real-time clock 1825 and other features that are often used in portable devices like 1826 cell phones and PDAs. 1827 1828config MFD_WL1273_CORE 1829 tristate "TI WL1273 FM radio" 1830 depends on I2C 1831 select MFD_CORE 1832 default n 1833 help 1834 This is the core driver for the TI WL1273 FM radio. This MFD 1835 driver connects the radio-wl1273 V4L2 module and the wl1273 1836 audio codec. 1837 1838config MFD_LM3533 1839 tristate "TI/National Semiconductor LM3533 Lighting Power chip" 1840 depends on I2C 1841 select MFD_CORE 1842 select REGMAP_I2C 1843 help 1844 Say yes here to enable support for National Semiconductor / TI 1845 LM3533 Lighting Power chips. 1846 1847 This driver provides common support for accessing the device; 1848 additional drivers must be enabled in order to use the LED, 1849 backlight or ambient-light-sensor functionality of the device. 1850 1851config MFD_TIMBERDALE 1852 tristate "Timberdale FPGA" 1853 select MFD_CORE 1854 depends on PCI && GPIOLIB && (X86_32 || COMPILE_TEST) 1855 help 1856 This is the core driver for the timberdale FPGA. This device is a 1857 multifunction device which exposes numerous platform devices. 1858 1859 The timberdale FPGA can be found on the Intel Atom development board 1860 for in-vehicle infontainment, called Russellville. 1861 1862config MFD_TC3589X 1863 bool "Toshiba TC35892 and variants" 1864 depends on I2C=y 1865 depends on OF 1866 select MFD_CORE 1867 help 1868 Support for the Toshiba TC35892 and variants I/O Expander. 1869 1870 This driver provides common support for accessing the device, 1871 additional drivers must be enabled in order to use the 1872 functionality of the device. 1873 1874config MFD_TQMX86 1875 tristate "TQ-Systems IO controller TQMX86" 1876 select MFD_CORE 1877 help 1878 Say yes here to enable support for various functions of the 1879 TQ-Systems IO controller and watchdog device, found on their 1880 ComExpress CPU modules. 1881 1882config MFD_VX855 1883 tristate "VIA VX855/VX875 integrated south bridge" 1884 depends on PCI 1885 select MFD_CORE 1886 help 1887 Say yes here to enable support for various functions of the 1888 VIA VX855/VX875 south bridge. You will need to enable the vx855_spi 1889 and/or vx855_gpio drivers for this to do anything useful. 1890 1891config MFD_LOCHNAGAR 1892 bool "Cirrus Logic Lochnagar Audio Development Board" 1893 select MFD_CORE 1894 select REGMAP_I2C 1895 depends on I2C=y && OF 1896 help 1897 Support for Cirrus Logic Lochnagar audio development board. 1898 1899config MFD_ARIZONA 1900 select REGMAP 1901 select REGMAP_IRQ 1902 select MFD_CORE 1903 tristate 1904 1905config MFD_ARIZONA_I2C 1906 tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with I2C" 1907 select MFD_ARIZONA 1908 select REGMAP_I2C 1909 depends on I2C 1910 help 1911 Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform 1912 audio SoC core functionality controlled via I2C. 1913 1914config MFD_ARIZONA_SPI 1915 tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with SPI" 1916 select MFD_ARIZONA 1917 select REGMAP_SPI 1918 depends on SPI_MASTER 1919 help 1920 Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform 1921 audio SoC core functionality controlled via SPI. 1922 1923config MFD_CS47L24 1924 bool "Cirrus Logic CS47L24 and WM1831" 1925 depends on MFD_ARIZONA 1926 help 1927 Support for Cirrus Logic CS47L24 and WM1831 low power audio SoC 1928 1929config MFD_WM5102 1930 bool "Wolfson Microelectronics WM5102" 1931 depends on MFD_ARIZONA 1932 help 1933 Support for Wolfson Microelectronics WM5102 low power audio SoC 1934 1935config MFD_WM5110 1936 bool "Wolfson Microelectronics WM5110 and WM8280/WM8281" 1937 depends on MFD_ARIZONA 1938 help 1939 Support for Wolfson Microelectronics WM5110 and WM8280/WM8281 1940 low power audio SoC 1941 1942config MFD_WM8997 1943 bool "Wolfson Microelectronics WM8997" 1944 depends on MFD_ARIZONA 1945 help 1946 Support for Wolfson Microelectronics WM8997 low power audio SoC 1947 1948config MFD_WM8998 1949 bool "Wolfson Microelectronics WM8998" 1950 depends on MFD_ARIZONA 1951 help 1952 Support for Wolfson Microelectronics WM8998 low power audio SoC 1953 1954config MFD_WM8400 1955 bool "Wolfson Microelectronics WM8400" 1956 select MFD_CORE 1957 depends on I2C=y 1958 select REGMAP_I2C 1959 help 1960 Support for the Wolfson Microelecronics WM8400 PMIC and audio 1961 CODEC. This driver provides common support for accessing 1962 the device, additional drivers must be enabled in order to use 1963 the functionality of the device. 1964 1965config MFD_WM831X 1966 bool 1967 1968config MFD_WM831X_I2C 1969 bool "Wolfson Microelectronics WM831x/2x PMICs with I2C" 1970 select MFD_CORE 1971 select MFD_WM831X 1972 select REGMAP_I2C 1973 select IRQ_DOMAIN 1974 depends on I2C=y 1975 help 1976 Support for the Wolfson Microelecronics WM831x and WM832x PMICs 1977 when controlled using I2C. This driver provides common support 1978 for accessing the device, additional drivers must be enabled in 1979 order to use the functionality of the device. 1980 1981config MFD_WM831X_SPI 1982 bool "Wolfson Microelectronics WM831x/2x PMICs with SPI" 1983 select MFD_CORE 1984 select MFD_WM831X 1985 select REGMAP_SPI 1986 select IRQ_DOMAIN 1987 depends on SPI_MASTER 1988 help 1989 Support for the Wolfson Microelecronics WM831x and WM832x PMICs 1990 when controlled using SPI. This driver provides common support 1991 for accessing the device, additional drivers must be enabled in 1992 order to use the functionality of the device. 1993 1994config MFD_WM8350 1995 bool 1996 1997config MFD_WM8350_I2C 1998 bool "Wolfson Microelectronics WM8350 with I2C" 1999 select MFD_WM8350 2000 select REGMAP_I2C 2001 depends on I2C=y 2002 help 2003 The WM8350 is an integrated audio and power management 2004 subsystem with watchdog and RTC functionality for embedded 2005 systems. This option enables core support for the WM8350 with 2006 I2C as the control interface. Additional options must be 2007 selected to enable support for the functionality of the chip. 2008 2009config MFD_WM8994 2010 tristate "Wolfson Microelectronics WM8994" 2011 select MFD_CORE 2012 select REGMAP_I2C 2013 select REGMAP_IRQ 2014 depends on I2C 2015 help 2016 The WM8994 is a highly integrated hi-fi CODEC designed for 2017 smartphone applications. As well as audio functionality it 2018 has on board GPIO and regulator functionality which is 2019 supported via the relevant subsystems. This driver provides 2020 core support for the WM8994, in order to use the actual 2021 functionality of the device other drivers must be enabled. 2022 2023config MFD_WM97xx 2024 tristate "Wolfson Microelectronics WM97xx" 2025 select MFD_CORE 2026 select REGMAP_AC97 2027 select AC97_BUS_COMPAT 2028 depends on AC97_BUS_NEW 2029 help 2030 The WM9705, WM9712 and WM9713 is a highly integrated hi-fi CODEC 2031 designed for smartphone applications. As well as audio functionality 2032 it has on board GPIO and a touchscreen functionality which is 2033 supported via the relevant subsystems. This driver provides core 2034 support for the WM97xx, in order to use the actual functionality of 2035 the device other drivers must be enabled. 2036 2037config MFD_STW481X 2038 tristate "Support for ST Microelectronics STw481x" 2039 depends on I2C && (ARCH_NOMADIK || COMPILE_TEST) 2040 select REGMAP_I2C 2041 select MFD_CORE 2042 help 2043 Select this option to enable the STw481x chip driver used 2044 in various ST Microelectronics and ST-Ericsson embedded 2045 Nomadik series. 2046 2047config MFD_ROHM_BD718XX 2048 tristate "ROHM BD71837 Power Management IC" 2049 depends on I2C=y 2050 depends on OF 2051 select REGMAP_I2C 2052 select REGMAP_IRQ 2053 select MFD_CORE 2054 help 2055 Select this option to get support for the ROHM BD71837 2056 Power Management ICs. BD71837 is designed to power processors like 2057 NXP i.MX8. It contains 8 BUCK outputs and 7 LDOs, voltage monitoring 2058 and emergency shut down as well as 32,768KHz clock output. 2059 2060config MFD_ROHM_BD71828 2061 tristate "ROHM BD71828 and BD71815 Power Management IC" 2062 depends on I2C=y 2063 depends on OF 2064 select REGMAP_I2C 2065 select REGMAP_IRQ 2066 select MFD_CORE 2067 help 2068 Select this option to get support for the ROHM BD71828 and BD71815 2069 Power Management ICs. BD71828GW and BD71815AGW are single-chip power 2070 management ICs mainly for battery-powered portable devices. 2071 The BD71828 integrates 7 buck converters and 7 LDOs. The BD71815 2072 has 5 bucks, 7 LDOs, and a boost for driving LEDs. Both ICs provide 2073 also a single-cell linear charger, a Coulomb counter, a real-time 2074 clock (RTC), GPIOs and a 32.768 kHz clock gate. 2075 2076config MFD_ROHM_BD957XMUF 2077 tristate "ROHM BD9576MUF and BD9573MUF Power Management ICs" 2078 depends on I2C=y 2079 depends on OF 2080 select REGMAP_I2C 2081 select REGMAP_IRQ 2082 select MFD_CORE 2083 help 2084 Select this option to get support for the ROHM BD9576MUF and 2085 BD9573MUF Power Management ICs. BD9576 and BD9573 are primarily 2086 designed to be used to power R-Car series processors. 2087 2088config MFD_STM32_LPTIMER 2089 tristate "Support for STM32 Low-Power Timer" 2090 depends on (ARCH_STM32 && OF) || COMPILE_TEST 2091 select MFD_CORE 2092 select REGMAP 2093 select REGMAP_MMIO 2094 help 2095 Select this option to enable STM32 Low-Power Timer driver 2096 used for PWM, IIO Trigger, IIO Encoder and Counter. Shared 2097 resources are also dealt with here. 2098 2099 To compile this driver as a module, choose M here: the 2100 module will be called stm32-lptimer. 2101 2102config MFD_STM32_TIMERS 2103 tristate "Support for STM32 Timers" 2104 depends on (ARCH_STM32 && OF) || COMPILE_TEST 2105 select MFD_CORE 2106 select REGMAP 2107 select REGMAP_MMIO 2108 help 2109 Select this option to enable STM32 timers driver used 2110 for PWM and IIO Timer. This driver allow to share the 2111 registers between the others drivers. 2112 2113config MFD_STPMIC1 2114 tristate "Support for STPMIC1 PMIC" 2115 depends on (I2C=y && OF) 2116 select REGMAP_I2C 2117 select REGMAP_IRQ 2118 select MFD_CORE 2119 help 2120 Support for ST Microelectronics STPMIC1 PMIC. STPMIC1 has power on 2121 key, watchdog and regulator functionalities which are supported via 2122 the relevant subsystems. This driver provides core support for the 2123 STPMIC1. In order to use the actual functionality of the device other 2124 drivers must be enabled. 2125 2126 To compile this driver as a module, choose M here: the 2127 module will be called stpmic1. 2128 2129config MFD_STMFX 2130 tristate "Support for STMicroelectronics Multi-Function eXpander (STMFX)" 2131 depends on I2C 2132 depends on OF 2133 select MFD_CORE 2134 select REGMAP_I2C 2135 help 2136 Support for the STMicroelectronics Multi-Function eXpander. 2137 2138 This driver provides common support for accessing the device, 2139 additional drivers must be enabled in order to use the functionality 2140 of the device. 2141 2142config MFD_WCD934X 2143 tristate "Support for WCD9340/WCD9341 Codec" 2144 depends on SLIMBUS 2145 select REGMAP 2146 select REGMAP_SLIMBUS 2147 select REGMAP_IRQ 2148 select MFD_CORE 2149 help 2150 Support for the Qualcomm WCD9340/WCD9341 Codec. 2151 This driver provides common support WCD934x audio codec and its 2152 associated Pin Controller, Soundwire Controller and Audio codec. 2153 2154config MFD_ATC260X 2155 tristate 2156 select MFD_CORE 2157 select REGMAP 2158 select REGMAP_IRQ 2159 2160config MFD_ATC260X_I2C 2161 tristate "Actions Semi ATC260x PMICs with I2C" 2162 select MFD_ATC260X 2163 select REGMAP_I2C 2164 depends on I2C 2165 help 2166 Support for the Actions Semi ATC260x PMICs controlled via I2C. 2167 2168 This driver provides common support for accessing the ATC2603C 2169 and ATC2609A chip variants, additional drivers must be enabled 2170 in order to use the functionality of the device. 2171 2172config MFD_KHADAS_MCU 2173 tristate "Support for Khadas System control Microcontroller" 2174 depends on I2C 2175 depends on ARCH_MESON || ARCH_ROCKCHIP || COMPILE_TEST 2176 select MFD_CORE 2177 select REGMAP_I2C 2178 help 2179 Support for the Khadas System control Microcontroller interface 2180 present on their VIM and Edge boards. 2181 2182 This Microcontroller is present on the Khadas VIM1, VIM2, VIM3 and 2183 Edge boards. 2184 2185 It provides multiple boot control features like password check, 2186 power-on options, power-off control and system FAN control on recent 2187 boards. 2188 2189 This driver provides common support for accessing the device, 2190 additional drivers must be enabled in order to use the functionality 2191 of the device. 2192 2193config MFD_ACER_A500_EC 2194 tristate "Support for Acer Iconia Tab A500 Embedded Controller" 2195 depends on I2C 2196 depends on (ARCH_TEGRA_2x_SOC && OF) || COMPILE_TEST 2197 select MFD_CORE 2198 select REGMAP 2199 help 2200 Support for Embedded Controller found on Acer Iconia Tab A500. 2201 The controller itself is ENE KB930, it is running firmware 2202 customized for the specific needs of the Acer A500 hardware. 2203 2204config MFD_QCOM_PM8008 2205 tristate "QCOM PM8008 Power Management IC" 2206 depends on I2C && OF 2207 select REGMAP_I2C 2208 select REGMAP_IRQ 2209 help 2210 Select this option to get support for the Qualcomm Technologies, Inc. 2211 PM8008 PMIC chip. PM8008 is a dedicated camera PMIC that integrates 2212 all the necessary power management, housekeeping, and interface 2213 support functions into a single IC. This driver provides common 2214 support for accessing the device by instantiating all the child nodes 2215 under it in the device tree. Additional drivers must be enabled in 2216 order to use the functionality of the device. 2217 2218menu "Multimedia Capabilities Port drivers" 2219 depends on ARCH_SA1100 2220 2221config MCP 2222 tristate 2223 2224# Interface drivers 2225config MCP_SA11X0 2226 tristate "Support SA11x0 MCP interface" 2227 depends on ARCH_SA1100 2228 select MCP 2229 2230# Chip drivers 2231config MCP_UCB1200 2232 tristate "Support for UCB1200 / UCB1300" 2233 depends on MCP_SA11X0 2234 select MCP 2235 2236config MCP_UCB1200_TS 2237 tristate "Touchscreen interface support" 2238 depends on MCP_UCB1200 && INPUT 2239 2240endmenu 2241 2242config MFD_VEXPRESS_SYSREG 2243 tristate "Versatile Express System Registers" 2244 depends on VEXPRESS_CONFIG && GPIOLIB 2245 default y 2246 select GPIO_GENERIC_PLATFORM 2247 select MFD_CORE 2248 select MFD_SYSCON 2249 help 2250 System Registers are the platform configuration block 2251 on the ARM Ltd. Versatile Express board. 2252 2253config RAVE_SP_CORE 2254 tristate "RAVE SP MCU core driver" 2255 depends on SERIAL_DEV_BUS 2256 select CRC_CCITT 2257 help 2258 Select this to get support for the Supervisory Processor 2259 device found on several devices in RAVE line of hardware. 2260 2261config SGI_MFD_IOC3 2262 bool "SGI IOC3 core driver" 2263 depends on PCI && MIPS && 64BIT 2264 select MFD_CORE 2265 help 2266 This option enables basic support for the SGI IOC3-based 2267 controller cards. This option does not enable any specific 2268 functions on such a card, but provides necessary infrastructure 2269 for other drivers to utilize. 2270 2271 If you have an SGI Origin, Octane, or a PCI IOC3 card, 2272 then say Y. Otherwise say N. 2273 2274config MFD_INTEL_M10_BMC_CORE 2275 tristate 2276 select MFD_CORE 2277 select REGMAP 2278 default n 2279 2280config MFD_INTEL_M10_BMC_SPI 2281 tristate "Intel MAX 10 Board Management Controller with SPI" 2282 depends on SPI_MASTER 2283 select MFD_INTEL_M10_BMC_CORE 2284 select REGMAP_SPI_AVMM 2285 help 2286 Support for the Intel MAX 10 board management controller using the 2287 SPI interface. 2288 2289 This driver provides common support for accessing the device, 2290 additional drivers must be enabled in order to use the functionality 2291 of the device. 2292 2293config MFD_INTEL_M10_BMC_PMCI 2294 tristate "Intel MAX 10 Board Management Controller with PMCI" 2295 depends on FPGA_DFL 2296 select MFD_INTEL_M10_BMC_CORE 2297 select REGMAP 2298 help 2299 Support for the Intel MAX 10 board management controller via PMCI. 2300 2301 This driver provides common support for accessing the device, 2302 additional drivers must be enabled in order to use the functionality 2303 of the device. 2304 2305config MFD_RSMU_I2C 2306 tristate "Renesas Synchronization Management Unit with I2C" 2307 depends on I2C && OF 2308 select MFD_CORE 2309 select REGMAP_I2C 2310 help 2311 Support for the Renesas Synchronization Management Unit, such as 2312 Clockmatrix and 82P33XXX series. This option supports I2C as 2313 the control interface. 2314 2315 This driver provides common support for accessing the device. 2316 Additional drivers must be enabled in order to use the functionality 2317 of the device. 2318 2319config MFD_RSMU_SPI 2320 tristate "Renesas Synchronization Management Unit with SPI" 2321 depends on SPI && OF 2322 select MFD_CORE 2323 select REGMAP_SPI 2324 help 2325 Support for the Renesas Synchronization Management Unit, such as 2326 Clockmatrix and 82P33XXX series. This option supports SPI as 2327 the control interface. 2328 2329 This driver provides common support for accessing the device. 2330 Additional drivers must be enabled in order to use the functionality 2331 of the device. 2332 2333endmenu 2334endif 2335