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