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 tristate 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 tristate "Renesas RZ/G2L MTU3a core driver" 1375 depends on (ARCH_RZG2L && OF) || COMPILE_TEST 1376 select MFD_CORE 1377 help 1378 Select this option to enable Renesas RZ/G2L MTU3a core driver for 1379 the Multi-Function Timer Pulse Unit 3 (MTU3a) hardware available 1380 on SoCs from Renesas. The core driver shares the clk and channel 1381 register access for the other child devices like Counter, PWM, 1382 Clock Source, and Clock event. 1383 1384config ABX500_CORE 1385 bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions" 1386 depends on ARCH_U8500 || COMPILE_TEST 1387 default y if ARCH_U8500 1388 help 1389 Say yes here if you have the ABX500 Mixed Signal IC family 1390 chips. This core driver expose register access functions. 1391 Functionality specific drivers using these functions can 1392 remain unchanged when IC changes. Binding of the functions to 1393 actual register access is done by the IC core driver. 1394 1395config AB8500_CORE 1396 bool "ST-Ericsson AB8500 Mixed Signal Power Management chip" 1397 depends on ABX500_CORE && MFD_DB8500_PRCMU 1398 select POWER_SUPPLY 1399 select MFD_CORE 1400 select IRQ_DOMAIN 1401 help 1402 Select this option to enable access to AB8500 power management 1403 chip. This connects to U8500 either on the SSP/SPI bus (deprecated 1404 since hardware version v1.0) or the I2C bus via PRCMU. It also adds 1405 the irq_chip parts for handling the Mixed Signal chip events. 1406 This chip embeds various other multimedia functionalities as well. 1407 1408config MFD_DB8500_PRCMU 1409 bool "ST-Ericsson DB8500 Power Reset Control Management Unit" 1410 depends on UX500_SOC_DB8500 1411 select MFD_CORE 1412 help 1413 Select this option to enable support for the DB8500 Power Reset 1414 and Control Management Unit. This is basically an autonomous 1415 system controller running an XP70 microprocessor, which is accessed 1416 through a register map. 1417 1418config MFD_STMPE 1419 bool "STMicroelectronics STMPE" 1420 depends on (I2C=y || SPI_MASTER=y) 1421 depends on OF 1422 select MFD_CORE 1423 help 1424 Support for the STMPE family of I/O Expanders from 1425 STMicroelectronics. 1426 1427 Currently supported devices are: 1428 1429 STMPE811: GPIO, Touchscreen, ADC 1430 STMPE1601: GPIO, Keypad 1431 STMPE1801: GPIO, Keypad 1432 STMPE2401: GPIO, Keypad 1433 STMPE2403: GPIO, Keypad 1434 1435 This driver provides common support for accessing the device, 1436 additional drivers must be enabled in order to use the functionality 1437 of the device. Currently available sub drivers are: 1438 1439 GPIO: stmpe-gpio 1440 Keypad: stmpe-keypad 1441 Touchscreen: stmpe-ts 1442 ADC: stmpe-adc 1443 1444menu "STMicroelectronics STMPE Interface Drivers" 1445depends on MFD_STMPE 1446 1447config STMPE_I2C 1448 bool "STMicroelectronics STMPE I2C Interface" 1449 depends on I2C=y 1450 default y 1451 help 1452 This is used to enable I2C interface of STMPE 1453 1454config STMPE_SPI 1455 bool "STMicroelectronics STMPE SPI Interface" 1456 depends on SPI_MASTER 1457 help 1458 This is used to enable SPI interface of STMPE 1459endmenu 1460 1461config MFD_STA2X11 1462 bool "STMicroelectronics STA2X11" 1463 depends on STA2X11 1464 select MFD_CORE 1465 select REGMAP_MMIO 1466 1467config MFD_SUN6I_PRCM 1468 bool "Allwinner A31/A23/A33 PRCM controller" 1469 depends on ARCH_SUNXI || COMPILE_TEST 1470 select MFD_CORE 1471 help 1472 Support for the PRCM (Power/Reset/Clock Management) unit available 1473 in the A31, A23, and A33 SoCs. Other Allwinner SoCs contain similar 1474 hardware, but they do not use this driver. 1475 1476config MFD_SYSCON 1477 bool "System Controller Register R/W Based on Regmap" 1478 select REGMAP_MMIO 1479 help 1480 Select this option to enable accessing system control registers 1481 via regmap. 1482 1483config MFD_TI_AM335X_TSCADC 1484 tristate "TI ADC / Touch Screen chip support" 1485 select MFD_CORE 1486 select REGMAP 1487 select REGMAP_MMIO 1488 help 1489 If you say yes here you get support for Texas Instruments series 1490 of Touch Screen /ADC chips. 1491 To compile this driver as a module, choose M here: the 1492 module will be called ti_am335x_tscadc. 1493 1494config MFD_LP3943 1495 tristate "TI/National Semiconductor LP3943 MFD Driver" 1496 depends on I2C 1497 select MFD_CORE 1498 select REGMAP_I2C 1499 help 1500 Support for the TI/National Semiconductor LP3943. 1501 This driver consists of GPIO and PWM drivers. 1502 With these functionalities, it can be used for LED string control or 1503 general usage such like a GPIO controller and a PWM controller. 1504 1505config MFD_LP8788 1506 bool "TI LP8788 Power Management Unit Driver" 1507 depends on I2C=y 1508 select MFD_CORE 1509 select REGMAP_I2C 1510 select IRQ_DOMAIN 1511 help 1512 TI LP8788 PMU supports regulators, battery charger, RTC, 1513 ADC, backlight driver and current sinks. 1514 1515config MFD_TI_LMU 1516 tristate "TI Lighting Management Unit driver" 1517 depends on I2C 1518 select MFD_CORE 1519 select REGMAP_I2C 1520 help 1521 Say yes here to enable support for TI LMU chips. 1522 TI LMU MFD supports LM3532, LM3631, LM3632, LM3633, LM3695 and 1523 LM36274. It consists of backlight, LED and regulator driver. 1524 It provides consistent device controls for lighting functions. 1525 1526config MFD_OMAP_USB_HOST 1527 bool "TI OMAP USBHS core and TLL driver" 1528 depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3 1529 depends on COMMON_CLK 1530 default y 1531 help 1532 This is the core driver for the OAMP EHCI and OHCI drivers. 1533 This MFD driver does the required setup functionalities for 1534 OMAP USB Host drivers. 1535 1536config MFD_PALMAS 1537 tristate "TI Palmas series chips" 1538 select MFD_CORE 1539 select REGMAP_I2C 1540 select REGMAP_IRQ 1541 depends on I2C=y 1542 help 1543 If you say yes here you get support for the Palmas 1544 series of PMIC chips from Texas Instruments. 1545 1546config TPS6105X 1547 tristate "TI TPS61050/61052 Boost Converters" 1548 depends on I2C 1549 select REGMAP_I2C 1550 select REGULATOR 1551 select MFD_CORE 1552 select REGULATOR_FIXED_VOLTAGE 1553 help 1554 This option enables a driver for the TP61050/TPS61052 1555 high-power "white LED driver". This boost converter is 1556 sometimes used for other things than white LEDs, and 1557 also contains a GPIO pin. 1558 1559config TPS65010 1560 tristate "TI TPS6501x Power Management chips" 1561 depends on I2C && GPIOLIB 1562 default MACH_OMAP_OSK 1563 help 1564 If you say yes here you get support for the TPS6501x series of 1565 Power Management chips. These include voltage regulators, 1566 lithium ion/polymer battery charging, and other features that 1567 are often used in portable devices like cell phones and cameras. 1568 1569 This driver can also be built as a module. If so, the module 1570 will be called tps65010. 1571 1572config TPS6507X 1573 tristate "TI TPS6507x Power Management / Touch Screen chips" 1574 select MFD_CORE 1575 depends on I2C 1576 help 1577 If you say yes here you get support for the TPS6507x series of 1578 Power Management / Touch Screen chips. These include voltage 1579 regulators, lithium ion/polymer battery charging, touch screen 1580 and other features that are often used in portable devices. 1581 This driver can also be built as a module. If so, the module 1582 will be called tps6507x. 1583 1584config MFD_TPS65086 1585 tristate "TI TPS65086 Power Management Integrated Chips (PMICs)" 1586 select MFD_CORE 1587 select REGMAP 1588 select REGMAP_IRQ 1589 select REGMAP_I2C 1590 depends on I2C 1591 help 1592 If you say yes here you get support for the TPS65086 series of 1593 Power Management chips. 1594 This driver provides common support for accessing the device, 1595 additional drivers must be enabled in order to use the 1596 functionality of the device. 1597 1598config TPS65911_COMPARATOR 1599 tristate 1600 1601config MFD_TPS65090 1602 bool "TI TPS65090 Power Management chips" 1603 depends on I2C=y 1604 select MFD_CORE 1605 select REGMAP_I2C 1606 select REGMAP_IRQ 1607 help 1608 If you say yes here you get support for the TPS65090 series of 1609 Power Management chips. 1610 This driver provides common support for accessing the device, 1611 additional drivers must be enabled in order to use the 1612 functionality of the device. 1613 1614config MFD_TPS65217 1615 tristate "TI TPS65217 Power Management / White LED chips" 1616 depends on I2C && OF 1617 select MFD_CORE 1618 select REGMAP_I2C 1619 select IRQ_DOMAIN 1620 help 1621 If you say yes here you get support for the TPS65217 series of 1622 Power Management / White LED chips. 1623 These include voltage regulators, lithium ion/polymer battery 1624 charger, wled and other features that are often used in portable 1625 devices. 1626 1627 This driver can also be built as a module. If so, the module 1628 will be called tps65217. 1629 1630config MFD_TI_LP873X 1631 tristate "TI LP873X Power Management IC" 1632 depends on I2C 1633 select MFD_CORE 1634 select REGMAP_I2C 1635 help 1636 If you say yes here then you get support for the LP873X series of 1637 Power Management Integrated Circuits (PMIC). 1638 These include voltage regulators, thermal protection, configurable 1639 General Purpose Outputs (GPO) that are used in portable devices. 1640 1641 This driver can also be built as a module. If so, the module 1642 will be called lp873x. 1643 1644config MFD_TI_LP87565 1645 tristate "TI LP87565 Power Management IC" 1646 depends on I2C && OF 1647 select MFD_CORE 1648 select REGMAP_I2C 1649 help 1650 If you say yes here then you get support for the LP87565 series of 1651 Power Management Integrated Circuits (PMIC). 1652 These include voltage regulators, thermal protection, configurable 1653 General Purpose Outputs (GPO) that are used in portable devices. 1654 1655 This driver can also be built as a module. If so, the module 1656 will be called lp87565. 1657 1658config MFD_TPS65218 1659 tristate "TI TPS65218 Power Management chips" 1660 depends on I2C && OF 1661 select MFD_CORE 1662 select REGMAP_I2C 1663 select REGMAP_IRQ 1664 help 1665 If you say yes here you get support for the TPS65218 series of 1666 Power Management chips. 1667 These include voltage regulators, gpio and other features 1668 that are often used in portable devices. 1669 1670 This driver can also be built as a module. If so, the module 1671 will be called tps65218. 1672 1673config MFD_TPS65219 1674 tristate "TI TPS65219 Power Management IC" 1675 depends on I2C && OF 1676 select MFD_CORE 1677 select REGMAP_I2C 1678 select REGMAP_IRQ 1679 help 1680 If you say yes here you get support for the TPS65219 series of Power 1681 Management ICs. These include voltage regulators, GPIOs and 1682 push/power button that is often used in portable devices. 1683 1684 This driver can also be built as a module. If so, the module 1685 will be called tps65219. 1686 1687config MFD_TPS6586X 1688 bool "TI TPS6586x Power Management chips" 1689 depends on I2C=y 1690 select MFD_CORE 1691 select REGMAP_I2C 1692 help 1693 If you say yes here you get support for the TPS6586X series of 1694 Power Management chips. 1695 This driver provides common support for accessing the device, 1696 additional drivers must be enabled in order to use the 1697 functionality of the device. 1698 1699 This driver can also be built as a module. If so, the module 1700 will be called tps6586x. 1701 1702config MFD_TPS65910 1703 bool "TI TPS65910 Power Management chip" 1704 depends on I2C=y 1705 depends on GPIOLIB || COMPILE_TEST 1706 select MFD_CORE 1707 select REGMAP_I2C 1708 select REGMAP_IRQ 1709 select IRQ_DOMAIN 1710 help 1711 if you say yes here you get support for the TPS65910 series of 1712 Power Management chips. 1713 1714config MFD_TPS65912 1715 tristate 1716 select MFD_CORE 1717 select REGMAP 1718 select REGMAP_IRQ 1719 1720config MFD_TPS65912_I2C 1721 tristate "TI TPS65912 Power Management chip with I2C" 1722 select MFD_TPS65912 1723 select REGMAP_I2C 1724 depends on I2C 1725 help 1726 If you say yes here you get support for the TPS65912 series of 1727 PM chips with I2C interface. 1728 1729config MFD_TPS65912_SPI 1730 tristate "TI TPS65912 Power Management chip with SPI" 1731 select MFD_TPS65912 1732 select REGMAP_SPI 1733 depends on SPI_MASTER 1734 help 1735 If you say yes here you get support for the TPS65912 series of 1736 PM chips with SPI interface. 1737 1738config MFD_TPS6594 1739 tristate 1740 select MFD_CORE 1741 select REGMAP 1742 select REGMAP_IRQ 1743 1744config MFD_TPS6594_I2C 1745 tristate "TI TPS6594 Power Management chip with I2C" 1746 select MFD_TPS6594 1747 select REGMAP_I2C 1748 select CRC8 1749 depends on I2C 1750 help 1751 If you say yes here you get support for the TPS6594 series of 1752 PM chips with I2C interface. 1753 1754 This driver can also be built as a module. If so, the module 1755 will be called tps6594-i2c. 1756 1757config MFD_TPS6594_SPI 1758 tristate "TI TPS6594 Power Management chip with SPI" 1759 select MFD_TPS6594 1760 select REGMAP_SPI 1761 select CRC8 1762 depends on SPI_MASTER 1763 help 1764 If you say yes here you get support for the TPS6594 series of 1765 PM chips with SPI interface. 1766 1767 This driver can also be built as a module. If so, the module 1768 will be called tps6594-spi. 1769 1770config TWL4030_CORE 1771 bool "TI TWL4030/TWL5030/TWL6030/TPS659x0 Support" 1772 depends on I2C=y 1773 select IRQ_DOMAIN 1774 select REGMAP_I2C 1775 help 1776 Say yes here if you have TWL4030 / TWL6030 family chip on your board. 1777 This core driver provides register access and IRQ handling 1778 facilities, and registers devices for the various functions 1779 so that function-specific drivers can bind to them. 1780 1781 These multi-function chips are found on many OMAP2 and OMAP3 1782 boards, providing power management, RTC, GPIO, keypad, a 1783 high speed USB OTG transceiver, an audio codec (on most 1784 versions) and many other features. 1785 1786config TWL4030_POWER 1787 bool "TI TWL4030 power resources" 1788 depends on TWL4030_CORE && ARM 1789 help 1790 Say yes here if you want to use the power resources on the 1791 TWL4030 family chips. Most of these resources are regulators, 1792 which have a separate driver; some are control signals, such 1793 as clock request handshaking. 1794 1795 This driver uses board-specific data to initialize the resources 1796 and load scripts controlling which resources are switched off/on 1797 or reset when a sleep, wakeup or warm reset event occurs. 1798 1799config MFD_TWL4030_AUDIO 1800 bool "TI TWL4030 Audio" 1801 depends on TWL4030_CORE 1802 select MFD_CORE 1803 default n 1804 1805config TWL6040_CORE 1806 bool "TI TWL6040 audio codec" 1807 depends on I2C=y 1808 select MFD_CORE 1809 select REGMAP_I2C 1810 select REGMAP_IRQ 1811 default n 1812 help 1813 Say yes here if you want support for Texas Instruments TWL6040 audio 1814 codec. 1815 This driver provides common support for accessing the device, 1816 additional drivers must be enabled in order to use the 1817 functionality of the device (audio, vibra). 1818 1819config MENELAUS 1820 bool "TI TWL92330/Menelaus PM chip" 1821 depends on I2C=y && ARCH_OMAP2 1822 help 1823 If you say yes here you get support for the Texas Instruments 1824 TWL92330/Menelaus Power Management chip. This include voltage 1825 regulators, Dual slot memory card transceivers, real-time clock 1826 and other features that are often used in portable devices like 1827 cell phones and PDAs. 1828 1829config MFD_WL1273_CORE 1830 tristate "TI WL1273 FM radio" 1831 depends on I2C 1832 select MFD_CORE 1833 default n 1834 help 1835 This is the core driver for the TI WL1273 FM radio. This MFD 1836 driver connects the radio-wl1273 V4L2 module and the wl1273 1837 audio codec. 1838 1839config MFD_LM3533 1840 tristate "TI/National Semiconductor LM3533 Lighting Power chip" 1841 depends on I2C 1842 select MFD_CORE 1843 select REGMAP_I2C 1844 help 1845 Say yes here to enable support for National Semiconductor / TI 1846 LM3533 Lighting Power chips. 1847 1848 This driver provides common support for accessing the device; 1849 additional drivers must be enabled in order to use the LED, 1850 backlight or ambient-light-sensor functionality of the device. 1851 1852config MFD_TIMBERDALE 1853 tristate "Timberdale FPGA" 1854 select MFD_CORE 1855 depends on PCI && GPIOLIB && (X86_32 || COMPILE_TEST) 1856 help 1857 This is the core driver for the timberdale FPGA. This device is a 1858 multifunction device which exposes numerous platform devices. 1859 1860 The timberdale FPGA can be found on the Intel Atom development board 1861 for in-vehicle infontainment, called Russellville. 1862 1863config MFD_TC3589X 1864 bool "Toshiba TC35892 and variants" 1865 depends on I2C=y 1866 depends on OF 1867 select MFD_CORE 1868 help 1869 Support for the Toshiba TC35892 and variants I/O Expander. 1870 1871 This driver provides common support for accessing the device, 1872 additional drivers must be enabled in order to use the 1873 functionality of the device. 1874 1875config MFD_TQMX86 1876 tristate "TQ-Systems IO controller TQMX86" 1877 select MFD_CORE 1878 help 1879 Say yes here to enable support for various functions of the 1880 TQ-Systems IO controller and watchdog device, found on their 1881 ComExpress CPU modules. 1882 1883config MFD_VX855 1884 tristate "VIA VX855/VX875 integrated south bridge" 1885 depends on PCI 1886 select MFD_CORE 1887 help 1888 Say yes here to enable support for various functions of the 1889 VIA VX855/VX875 south bridge. You will need to enable the vx855_spi 1890 and/or vx855_gpio drivers for this to do anything useful. 1891 1892config MFD_LOCHNAGAR 1893 bool "Cirrus Logic Lochnagar Audio Development Board" 1894 select MFD_CORE 1895 select REGMAP_I2C 1896 depends on I2C=y && OF 1897 help 1898 Support for Cirrus Logic Lochnagar audio development board. 1899 1900config MFD_ARIZONA 1901 select REGMAP 1902 select REGMAP_IRQ 1903 select MFD_CORE 1904 tristate 1905 1906config MFD_ARIZONA_I2C 1907 tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with I2C" 1908 select MFD_ARIZONA 1909 select REGMAP_I2C 1910 depends on I2C 1911 help 1912 Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform 1913 audio SoC core functionality controlled via I2C. 1914 1915config MFD_ARIZONA_SPI 1916 tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with SPI" 1917 select MFD_ARIZONA 1918 select REGMAP_SPI 1919 depends on SPI_MASTER 1920 help 1921 Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform 1922 audio SoC core functionality controlled via SPI. 1923 1924config MFD_CS47L24 1925 bool "Cirrus Logic CS47L24 and WM1831" 1926 depends on MFD_ARIZONA 1927 help 1928 Support for Cirrus Logic CS47L24 and WM1831 low power audio SoC 1929 1930config MFD_WM5102 1931 bool "Wolfson Microelectronics WM5102" 1932 depends on MFD_ARIZONA 1933 help 1934 Support for Wolfson Microelectronics WM5102 low power audio SoC 1935 1936config MFD_WM5110 1937 bool "Wolfson Microelectronics WM5110 and WM8280/WM8281" 1938 depends on MFD_ARIZONA 1939 help 1940 Support for Wolfson Microelectronics WM5110 and WM8280/WM8281 1941 low power audio SoC 1942 1943config MFD_WM8997 1944 bool "Wolfson Microelectronics WM8997" 1945 depends on MFD_ARIZONA 1946 help 1947 Support for Wolfson Microelectronics WM8997 low power audio SoC 1948 1949config MFD_WM8998 1950 bool "Wolfson Microelectronics WM8998" 1951 depends on MFD_ARIZONA 1952 help 1953 Support for Wolfson Microelectronics WM8998 low power audio SoC 1954 1955config MFD_WM8400 1956 bool "Wolfson Microelectronics WM8400" 1957 select MFD_CORE 1958 depends on I2C=y 1959 select REGMAP_I2C 1960 help 1961 Support for the Wolfson Microelecronics WM8400 PMIC and audio 1962 CODEC. This driver provides common support for accessing 1963 the device, additional drivers must be enabled in order to use 1964 the functionality of the device. 1965 1966config MFD_WM831X 1967 bool 1968 1969config MFD_WM831X_I2C 1970 bool "Wolfson Microelectronics WM831x/2x PMICs with I2C" 1971 select MFD_CORE 1972 select MFD_WM831X 1973 select REGMAP_I2C 1974 select IRQ_DOMAIN 1975 depends on I2C=y 1976 help 1977 Support for the Wolfson Microelecronics WM831x and WM832x PMICs 1978 when controlled using I2C. This driver provides common support 1979 for accessing the device, additional drivers must be enabled in 1980 order to use the functionality of the device. 1981 1982config MFD_WM831X_SPI 1983 bool "Wolfson Microelectronics WM831x/2x PMICs with SPI" 1984 select MFD_CORE 1985 select MFD_WM831X 1986 select REGMAP_SPI 1987 select IRQ_DOMAIN 1988 depends on SPI_MASTER 1989 help 1990 Support for the Wolfson Microelecronics WM831x and WM832x PMICs 1991 when controlled using SPI. This driver provides common support 1992 for accessing the device, additional drivers must be enabled in 1993 order to use the functionality of the device. 1994 1995config MFD_WM8350 1996 bool 1997 1998config MFD_WM8350_I2C 1999 bool "Wolfson Microelectronics WM8350 with I2C" 2000 select MFD_WM8350 2001 select REGMAP_I2C 2002 depends on I2C=y 2003 help 2004 The WM8350 is an integrated audio and power management 2005 subsystem with watchdog and RTC functionality for embedded 2006 systems. This option enables core support for the WM8350 with 2007 I2C as the control interface. Additional options must be 2008 selected to enable support for the functionality of the chip. 2009 2010config MFD_WM8994 2011 tristate "Wolfson Microelectronics WM8994" 2012 select MFD_CORE 2013 select REGMAP_I2C 2014 select REGMAP_IRQ 2015 depends on I2C 2016 help 2017 The WM8994 is a highly integrated hi-fi CODEC designed for 2018 smartphone applications. As well as audio functionality it 2019 has on board GPIO and regulator functionality which is 2020 supported via the relevant subsystems. This driver provides 2021 core support for the WM8994, in order to use the actual 2022 functionality of the device other drivers must be enabled. 2023 2024config MFD_WM97xx 2025 tristate "Wolfson Microelectronics WM97xx" 2026 select MFD_CORE 2027 select REGMAP_AC97 2028 select AC97_BUS_COMPAT 2029 depends on AC97_BUS_NEW 2030 help 2031 The WM9705, WM9712 and WM9713 is a highly integrated hi-fi CODEC 2032 designed for smartphone applications. As well as audio functionality 2033 it has on board GPIO and a touchscreen functionality which is 2034 supported via the relevant subsystems. This driver provides core 2035 support for the WM97xx, in order to use the actual functionality of 2036 the device other drivers must be enabled. 2037 2038config MFD_STW481X 2039 tristate "Support for ST Microelectronics STw481x" 2040 depends on I2C && (ARCH_NOMADIK || COMPILE_TEST) 2041 select REGMAP_I2C 2042 select MFD_CORE 2043 help 2044 Select this option to enable the STw481x chip driver used 2045 in various ST Microelectronics and ST-Ericsson embedded 2046 Nomadik series. 2047 2048config MFD_ROHM_BD718XX 2049 tristate "ROHM BD71837 Power Management IC" 2050 depends on I2C=y 2051 depends on OF 2052 select REGMAP_I2C 2053 select REGMAP_IRQ 2054 select MFD_CORE 2055 help 2056 Select this option to get support for the ROHM BD71837 2057 Power Management ICs. BD71837 is designed to power processors like 2058 NXP i.MX8. It contains 8 BUCK outputs and 7 LDOs, voltage monitoring 2059 and emergency shut down as well as 32,768KHz clock output. 2060 2061config MFD_ROHM_BD71828 2062 tristate "ROHM BD71828 and BD71815 Power Management IC" 2063 depends on I2C=y 2064 depends on OF 2065 select REGMAP_I2C 2066 select REGMAP_IRQ 2067 select MFD_CORE 2068 help 2069 Select this option to get support for the ROHM BD71828 and BD71815 2070 Power Management ICs. BD71828GW and BD71815AGW are single-chip power 2071 management ICs mainly for battery-powered portable devices. 2072 The BD71828 integrates 7 buck converters and 7 LDOs. The BD71815 2073 has 5 bucks, 7 LDOs, and a boost for driving LEDs. Both ICs provide 2074 also a single-cell linear charger, a Coulomb counter, a real-time 2075 clock (RTC), GPIOs and a 32.768 kHz clock gate. 2076 2077config MFD_ROHM_BD957XMUF 2078 tristate "ROHM BD9576MUF and BD9573MUF Power Management ICs" 2079 depends on I2C=y 2080 depends on OF 2081 select REGMAP_I2C 2082 select REGMAP_IRQ 2083 select MFD_CORE 2084 help 2085 Select this option to get support for the ROHM BD9576MUF and 2086 BD9573MUF Power Management ICs. BD9576 and BD9573 are primarily 2087 designed to be used to power R-Car series processors. 2088 2089config MFD_STM32_LPTIMER 2090 tristate "Support for STM32 Low-Power Timer" 2091 depends on (ARCH_STM32 && OF) || COMPILE_TEST 2092 select MFD_CORE 2093 select REGMAP 2094 select REGMAP_MMIO 2095 help 2096 Select this option to enable STM32 Low-Power Timer driver 2097 used for PWM, IIO Trigger, IIO Encoder and Counter. Shared 2098 resources are also dealt with here. 2099 2100 To compile this driver as a module, choose M here: the 2101 module will be called stm32-lptimer. 2102 2103config MFD_STM32_TIMERS 2104 tristate "Support for STM32 Timers" 2105 depends on (ARCH_STM32 && OF) || COMPILE_TEST 2106 select MFD_CORE 2107 select REGMAP 2108 select REGMAP_MMIO 2109 help 2110 Select this option to enable STM32 timers driver used 2111 for PWM and IIO Timer. This driver allow to share the 2112 registers between the others drivers. 2113 2114config MFD_STPMIC1 2115 tristate "Support for STPMIC1 PMIC" 2116 depends on (I2C=y && OF) 2117 select REGMAP_I2C 2118 select REGMAP_IRQ 2119 select MFD_CORE 2120 help 2121 Support for ST Microelectronics STPMIC1 PMIC. STPMIC1 has power on 2122 key, watchdog and regulator functionalities which are supported via 2123 the relevant subsystems. This driver provides core support for the 2124 STPMIC1. In order to use the actual functionality of the device other 2125 drivers must be enabled. 2126 2127 To compile this driver as a module, choose M here: the 2128 module will be called stpmic1. 2129 2130config MFD_STMFX 2131 tristate "Support for STMicroelectronics Multi-Function eXpander (STMFX)" 2132 depends on I2C 2133 depends on OF 2134 select MFD_CORE 2135 select REGMAP_I2C 2136 help 2137 Support for the STMicroelectronics Multi-Function eXpander. 2138 2139 This driver provides common support for accessing the device, 2140 additional drivers must be enabled in order to use the functionality 2141 of the device. 2142 2143config MFD_WCD934X 2144 tristate "Support for WCD9340/WCD9341 Codec" 2145 depends on SLIMBUS 2146 select REGMAP 2147 select REGMAP_SLIMBUS 2148 select REGMAP_IRQ 2149 select MFD_CORE 2150 help 2151 Support for the Qualcomm WCD9340/WCD9341 Codec. 2152 This driver provides common support WCD934x audio codec and its 2153 associated Pin Controller, Soundwire Controller and Audio codec. 2154 2155config MFD_ATC260X 2156 tristate 2157 select MFD_CORE 2158 select REGMAP 2159 select REGMAP_IRQ 2160 2161config MFD_ATC260X_I2C 2162 tristate "Actions Semi ATC260x PMICs with I2C" 2163 select MFD_ATC260X 2164 select REGMAP_I2C 2165 depends on I2C 2166 help 2167 Support for the Actions Semi ATC260x PMICs controlled via I2C. 2168 2169 This driver provides common support for accessing the ATC2603C 2170 and ATC2609A chip variants, additional drivers must be enabled 2171 in order to use the functionality of the device. 2172 2173config MFD_KHADAS_MCU 2174 tristate "Support for Khadas System control Microcontroller" 2175 depends on I2C 2176 depends on ARCH_MESON || ARCH_ROCKCHIP || COMPILE_TEST 2177 select MFD_CORE 2178 select REGMAP_I2C 2179 help 2180 Support for the Khadas System control Microcontroller interface 2181 present on their VIM and Edge boards. 2182 2183 This Microcontroller is present on the Khadas VIM1, VIM2, VIM3 and 2184 Edge boards. 2185 2186 It provides multiple boot control features like password check, 2187 power-on options, power-off control and system FAN control on recent 2188 boards. 2189 2190 This driver provides common support for accessing the device, 2191 additional drivers must be enabled in order to use the functionality 2192 of the device. 2193 2194config MFD_ACER_A500_EC 2195 tristate "Support for Acer Iconia Tab A500 Embedded Controller" 2196 depends on I2C 2197 depends on (ARCH_TEGRA_2x_SOC && OF) || COMPILE_TEST 2198 select MFD_CORE 2199 select REGMAP 2200 help 2201 Support for Embedded Controller found on Acer Iconia Tab A500. 2202 The controller itself is ENE KB930, it is running firmware 2203 customized for the specific needs of the Acer A500 hardware. 2204 2205config MFD_QCOM_PM8008 2206 tristate "QCOM PM8008 Power Management IC" 2207 depends on I2C && OF 2208 select REGMAP_I2C 2209 select REGMAP_IRQ 2210 help 2211 Select this option to get support for the Qualcomm Technologies, Inc. 2212 PM8008 PMIC chip. PM8008 is a dedicated camera PMIC that integrates 2213 all the necessary power management, housekeeping, and interface 2214 support functions into a single IC. This driver provides common 2215 support for accessing the device by instantiating all the child nodes 2216 under it in the device tree. Additional drivers must be enabled in 2217 order to use the functionality of the device. 2218 2219menu "Multimedia Capabilities Port drivers" 2220 depends on ARCH_SA1100 2221 2222config MCP 2223 tristate 2224 2225# Interface drivers 2226config MCP_SA11X0 2227 tristate "Support SA11x0 MCP interface" 2228 depends on ARCH_SA1100 2229 select MCP 2230 2231# Chip drivers 2232config MCP_UCB1200 2233 tristate "Support for UCB1200 / UCB1300" 2234 depends on MCP_SA11X0 2235 select MCP 2236 2237config MCP_UCB1200_TS 2238 tristate "Touchscreen interface support" 2239 depends on MCP_UCB1200 && INPUT 2240 2241endmenu 2242 2243config MFD_VEXPRESS_SYSREG 2244 tristate "Versatile Express System Registers" 2245 depends on VEXPRESS_CONFIG && GPIOLIB 2246 default y 2247 select GPIO_GENERIC_PLATFORM 2248 select MFD_CORE 2249 select MFD_SYSCON 2250 help 2251 System Registers are the platform configuration block 2252 on the ARM Ltd. Versatile Express board. 2253 2254config RAVE_SP_CORE 2255 tristate "RAVE SP MCU core driver" 2256 depends on SERIAL_DEV_BUS 2257 select CRC_CCITT 2258 help 2259 Select this to get support for the Supervisory Processor 2260 device found on several devices in RAVE line of hardware. 2261 2262config SGI_MFD_IOC3 2263 bool "SGI IOC3 core driver" 2264 depends on PCI && MIPS && 64BIT 2265 select MFD_CORE 2266 help 2267 This option enables basic support for the SGI IOC3-based 2268 controller cards. This option does not enable any specific 2269 functions on such a card, but provides necessary infrastructure 2270 for other drivers to utilize. 2271 2272 If you have an SGI Origin, Octane, or a PCI IOC3 card, 2273 then say Y. Otherwise say N. 2274 2275config MFD_INTEL_M10_BMC_CORE 2276 tristate 2277 select MFD_CORE 2278 select REGMAP 2279 default n 2280 2281config MFD_INTEL_M10_BMC_SPI 2282 tristate "Intel MAX 10 Board Management Controller with SPI" 2283 depends on SPI_MASTER 2284 select MFD_INTEL_M10_BMC_CORE 2285 select REGMAP_SPI_AVMM 2286 help 2287 Support for the Intel MAX 10 board management controller using the 2288 SPI interface. 2289 2290 This driver provides common support for accessing the device, 2291 additional drivers must be enabled in order to use the functionality 2292 of the device. 2293 2294config MFD_INTEL_M10_BMC_PMCI 2295 tristate "Intel MAX 10 Board Management Controller with PMCI" 2296 depends on FPGA_DFL 2297 select MFD_INTEL_M10_BMC_CORE 2298 select REGMAP 2299 help 2300 Support for the Intel MAX 10 board management controller via PMCI. 2301 2302 This driver provides common support for accessing the device, 2303 additional drivers must be enabled in order to use the functionality 2304 of the device. 2305 2306config MFD_RSMU_I2C 2307 tristate "Renesas Synchronization Management Unit with I2C" 2308 depends on I2C && OF 2309 select MFD_CORE 2310 select REGMAP_I2C 2311 help 2312 Support for the Renesas Synchronization Management Unit, such as 2313 Clockmatrix and 82P33XXX series. This option supports I2C as 2314 the control interface. 2315 2316 This driver provides common support for accessing the device. 2317 Additional drivers must be enabled in order to use the functionality 2318 of the device. 2319 2320config MFD_RSMU_SPI 2321 tristate "Renesas Synchronization Management Unit with SPI" 2322 depends on SPI && OF 2323 select MFD_CORE 2324 select REGMAP_SPI 2325 help 2326 Support for the Renesas Synchronization Management Unit, such as 2327 Clockmatrix and 82P33XXX series. This option supports SPI as 2328 the control interface. 2329 2330 This driver provides common support for accessing the device. 2331 Additional drivers must be enabled in order to use the functionality 2332 of the device. 2333 2334endmenu 2335endif 2336