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