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