1# 2# Multifunction miscellaneous devices 3# 4 5if HAS_IOMEM 6menu "Multifunction device drivers" 7 8config MFD_CORE 9 tristate 10 select IRQ_DOMAIN 11 default n 12 13config MFD_CS5535 14 tristate "AMD CS5535 and CS5536 southbridge core functions" 15 select MFD_CORE 16 depends on PCI && (X86_32 || (X86 && COMPILE_TEST)) 17 ---help--- 18 This is the core driver for CS5535/CS5536 MFD functions. This is 19 necessary for using the board's GPIO and MFGPT functionality. 20 21config MFD_AS3711 22 bool "AMS AS3711" 23 select MFD_CORE 24 select REGMAP_I2C 25 select REGMAP_IRQ 26 depends on I2C=y 27 help 28 Support for the AS3711 PMIC from AMS 29 30config MFD_AS3722 31 bool "ams AS3722 Power Management IC" 32 select MFD_CORE 33 select REGMAP_I2C 34 select REGMAP_IRQ 35 depends on I2C=y && OF 36 help 37 The ams AS3722 is a compact system PMU suitable for mobile phones, 38 tablets etc. It has 4 DC/DC step-down regulators, 3 DC/DC step-down 39 controllers, 11 LDOs, RTC, automatic battery, temperature and 40 over current monitoring, GPIOs, ADC and a watchdog. 41 42config PMIC_ADP5520 43 bool "Analog Devices ADP5520/01 MFD PMIC Core Support" 44 depends on I2C=y 45 help 46 Say yes here to add support for Analog Devices AD5520 and ADP5501, 47 Multifunction Power Management IC. This includes 48 the I2C driver and the core APIs _only_, you have to select 49 individual components like LCD backlight, LEDs, GPIOs and Kepad 50 under the corresponding menus. 51 52config MFD_AAT2870_CORE 53 bool "AnalogicTech AAT2870" 54 select MFD_CORE 55 depends on I2C=y && GPIOLIB 56 help 57 If you say yes here you get support for the AAT2870. 58 This driver provides common support for accessing the device, 59 additional drivers must be enabled in order to use the 60 functionality of the device. 61 62config MFD_ATMEL_HLCDC 63 tristate "Atmel HLCDC (High-end LCD Controller)" 64 select MFD_CORE 65 select REGMAP_MMIO 66 depends on OF 67 help 68 If you say yes here you get support for the HLCDC block. 69 This driver provides common support for accessing the device, 70 additional drivers must be enabled in order to use the 71 functionality of the device. 72 73config MFD_BCM590XX 74 tristate "Broadcom BCM590xx PMUs" 75 select MFD_CORE 76 select REGMAP_I2C 77 depends on I2C 78 help 79 Support for the BCM590xx PMUs from Broadcom 80 81config MFD_AXP20X 82 bool "X-Powers AXP20X" 83 select MFD_CORE 84 select REGMAP_I2C 85 select REGMAP_IRQ 86 depends on I2C=y 87 help 88 If you say Y here you get support for the X-Powers AXP202, AXP209 and 89 AXP288 power management IC (PMIC). 90 This driver include only the core APIs. You have to select individual 91 components like regulators or the PEK (Power Enable Key) under the 92 corresponding menus. 93 94config MFD_CROS_EC 95 tristate "ChromeOS Embedded Controller" 96 select MFD_CORE 97 help 98 If you say Y here you get support for the ChromeOS Embedded 99 Controller (EC) providing keyboard, battery and power services. 100 You also need to enable the driver for the bus you are using. The 101 protocol for talking to the EC is defined by the bus driver. 102 103config MFD_CROS_EC_I2C 104 tristate "ChromeOS Embedded Controller (I2C)" 105 depends on MFD_CROS_EC && I2C 106 107 help 108 If you say Y here, you get support for talking to the ChromeOS 109 EC through an I2C bus. This uses a simple byte-level protocol with 110 a checksum. Failing accesses will be retried three times to 111 improve reliability. 112 113config MFD_CROS_EC_SPI 114 tristate "ChromeOS Embedded Controller (SPI)" 115 depends on MFD_CROS_EC && SPI && OF 116 117 ---help--- 118 If you say Y here, you get support for talking to the ChromeOS EC 119 through a SPI bus, using a byte-level protocol. Since the EC's 120 response time cannot be guaranteed, we support ignoring 121 'pre-amble' bytes before the response actually starts. 122 123config MFD_ASIC3 124 bool "Compaq ASIC3" 125 depends on GPIOLIB && ARM 126 select MFD_CORE 127 ---help--- 128 This driver supports the ASIC3 multifunction chip found on many 129 PDAs (mainly iPAQ and HTC based ones) 130 131config PMIC_DA903X 132 bool "Dialog Semiconductor DA9030/DA9034 PMIC Support" 133 depends on I2C=y 134 help 135 Say yes here to add support for Dialog Semiconductor DA9030 (a.k.a 136 ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC 137 usually found on PXA processors-based platforms. This includes 138 the I2C driver and the core APIs _only_, you have to select 139 individual components like LCD backlight, voltage regulators, 140 LEDs and battery-charger under the corresponding menus. 141 142config PMIC_DA9052 143 bool 144 select MFD_CORE 145 146config MFD_DA9052_SPI 147 bool "Dialog Semiconductor DA9052/53 PMIC variants with SPI" 148 select REGMAP_SPI 149 select REGMAP_IRQ 150 select PMIC_DA9052 151 depends on SPI_MASTER=y 152 help 153 Support for the Dialog Semiconductor DA9052 PMIC 154 when controlled using SPI. This driver provides common support 155 for accessing the device, additional drivers must be enabled in 156 order to use the functionality of the device. 157 158config MFD_DA9052_I2C 159 bool "Dialog Semiconductor DA9052/53 PMIC variants with I2C" 160 select REGMAP_I2C 161 select REGMAP_IRQ 162 select PMIC_DA9052 163 depends on I2C=y 164 help 165 Support for the Dialog Semiconductor DA9052 PMIC 166 when controlled using I2C. This driver provides common support 167 for accessing the device, additional drivers must be enabled in 168 order to use the functionality of the device. 169 170config MFD_DA9055 171 bool "Dialog Semiconductor DA9055 PMIC Support" 172 select REGMAP_I2C 173 select REGMAP_IRQ 174 select MFD_CORE 175 depends on I2C=y 176 help 177 Say yes here for support of Dialog Semiconductor DA9055. This is 178 a Power Management IC. This driver provides common support for 179 accessing the device as well as the I2C interface to the chip itself. 180 Additional drivers must be enabled in order to use the functionality 181 of the device. 182 183 This driver can be built as a module. If built as a module it will be 184 called "da9055" 185 186config MFD_DA9063 187 bool "Dialog Semiconductor DA9063 PMIC Support" 188 select MFD_CORE 189 select REGMAP_I2C 190 select REGMAP_IRQ 191 depends on I2C=y 192 help 193 Say yes here for support for the Dialog Semiconductor DA9063 PMIC. 194 This includes the I2C driver and core APIs. 195 Additional drivers must be enabled in order to use the functionality 196 of the device. 197 198config MFD_DLN2 199 tristate "Diolan DLN2 support" 200 select MFD_CORE 201 depends on USB 202 help 203 This adds support for Diolan USB-I2C/SPI/GPIO Master Adapter 204 DLN-2. Additional drivers such as I2C_DLN2, GPIO_DLN2, 205 etc. must be enabled in order to use the functionality of 206 the device. 207 208config MFD_MC13XXX 209 tristate 210 depends on (SPI_MASTER || I2C) 211 select MFD_CORE 212 select REGMAP_IRQ 213 help 214 Enable support for the Freescale MC13783 and MC13892 PMICs. 215 This driver provides common support for accessing the device, 216 additional drivers must be enabled in order to use the 217 functionality of the device. 218 219config MFD_MC13XXX_SPI 220 tristate "Freescale MC13783 and MC13892 SPI interface" 221 depends on SPI_MASTER 222 select REGMAP_SPI 223 select MFD_MC13XXX 224 help 225 Select this if your MC13xxx is connected via an SPI bus. 226 227config MFD_MC13XXX_I2C 228 tristate "Freescale MC13892 I2C interface" 229 depends on I2C 230 select REGMAP_I2C 231 select MFD_MC13XXX 232 help 233 Select this if your MC13xxx is connected via an I2C bus. 234 235config MFD_HI6421_PMIC 236 tristate "HiSilicon Hi6421 PMU/Codec IC" 237 depends on OF 238 select MFD_CORE 239 select REGMAP_MMIO 240 help 241 Add support for HiSilicon Hi6421 PMIC. Hi6421 includes multi- 242 functions, such as regulators, RTC, codec, Coulomb counter, etc. 243 This driver includes core APIs _only_. You have to select 244 individul components like voltage regulators under corresponding 245 menus in order to enable them. 246 We communicate with the Hi6421 via memory-mapped I/O. 247 248config HTC_EGPIO 249 bool "HTC EGPIO support" 250 depends on GPIOLIB && ARM 251 help 252 This driver supports the CPLD egpio chip present on 253 several HTC phones. It provides basic support for input 254 pins, output pins, and irqs. 255 256config HTC_PASIC3 257 tristate "HTC PASIC3 LED/DS1WM chip support" 258 select MFD_CORE 259 help 260 This core driver provides register access for the LED/DS1WM 261 chips labeled "AIC2" and "AIC3", found on HTC Blueangel and 262 HTC Magician devices, respectively. Actual functionality is 263 handled by the leds-pasic3 and ds1wm drivers. 264 265config HTC_I2CPLD 266 bool "HTC I2C PLD chip support" 267 depends on I2C=y && GPIOLIB 268 help 269 If you say yes here you get support for the supposed CPLD 270 found on omap850 HTC devices like the HTC Wizard and HTC Herald. 271 This device provides input and output GPIOs through an I2C 272 interface to one or more sub-chips. 273 274config LPC_ICH 275 tristate "Intel ICH LPC" 276 depends on PCI 277 select MFD_CORE 278 help 279 The LPC bridge function of the Intel ICH provides support for 280 many functional units. This driver provides needed support for 281 other drivers to control these functions, currently GPIO and 282 watchdog. 283 284config LPC_SCH 285 tristate "Intel SCH LPC" 286 depends on PCI 287 select MFD_CORE 288 help 289 LPC bridge function of the Intel SCH provides support for 290 System Management Bus and General Purpose I/O. 291 292config INTEL_SOC_PMIC 293 bool "Support for Intel Atom SoC PMIC" 294 depends on I2C=y 295 select MFD_CORE 296 select REGMAP_I2C 297 select REGMAP_IRQ 298 help 299 Select this option to enable support for the PMIC device 300 on some Intel SoC systems. The PMIC provides ADC, GPIO, 301 thermal, charger and related power management functions 302 on these systems. 303 304config MFD_INTEL_MSIC 305 bool "Intel MSIC" 306 depends on INTEL_SCU_IPC 307 select MFD_CORE 308 help 309 Select this option to enable access to Intel MSIC (Avatele 310 Passage) chip. This chip embeds audio, battery, GPIO, etc. 311 devices used in Intel Medfield platforms. 312 313config MFD_IPAQ_MICRO 314 bool "Atmel Micro ASIC (iPAQ h3100/h3600/h3700) Support" 315 depends on SA1100_H3100 || SA1100_H3600 316 select MFD_CORE 317 help 318 Select this to get support for the Microcontroller found in 319 the Compaq iPAQ handheld computers. This is an Atmel 320 AT90LS8535 microcontroller flashed with a special iPAQ 321 firmware using the custom protocol implemented in this driver. 322 323config MFD_JANZ_CMODIO 324 tristate "Janz CMOD-IO PCI MODULbus Carrier Board" 325 select MFD_CORE 326 depends on PCI 327 help 328 This is the core driver for the Janz CMOD-IO PCI MODULbus 329 carrier board. This device is a PCI to MODULbus bridge which may 330 host many different types of MODULbus daughterboards, including 331 CAN and GPIO controllers. 332 333config MFD_JZ4740_ADC 334 bool "Janz JZ4740 ADC core" 335 select MFD_CORE 336 select GENERIC_IRQ_CHIP 337 depends on MACH_JZ4740 338 help 339 Say yes here if you want support for the ADC unit in the JZ4740 SoC. 340 This driver is necessary for jz4740-battery and jz4740-hwmon driver. 341 342config MFD_KEMPLD 343 tristate "Kontron module PLD device" 344 select MFD_CORE 345 help 346 This is the core driver for the PLD (Programmable Logic Device) found 347 on some Kontron ETX and COMexpress (ETXexpress) modules. The PLD 348 device may provide functions like watchdog, GPIO, UART and I2C bus. 349 350 The following modules are supported: 351 * COMe-bHL6 352 * COMe-bIP# 353 * COMe-bPC2 (ETXexpress-PC) 354 * COMe-bSC# (ETXexpress-SC T#) 355 * COMe-cBT6 356 * COMe-cCT6 357 * COMe-cDC2 (microETXexpress-DC) 358 * COMe-cHL6 359 * COMe-cPC2 (microETXexpress-PC) 360 * COMe-mBT10 361 * COMe-mCT10 362 * COMe-mTT10 (nanoETXexpress-TT) 363 * ETX-OH 364 365 This driver can also be built as a module. If so, the module 366 will be called kempld-core. 367 368config MFD_88PM800 369 tristate "Marvell 88PM800" 370 depends on I2C=y 371 select REGMAP_I2C 372 select REGMAP_IRQ 373 select MFD_CORE 374 help 375 This supports for Marvell 88PM800 Power Management IC. 376 This includes the I2C driver and the core APIs _only_, you have to 377 select individual components like voltage regulators, RTC and 378 battery-charger under the corresponding menus. 379 380config MFD_88PM805 381 tristate "Marvell 88PM805" 382 depends on I2C=y 383 select REGMAP_I2C 384 select REGMAP_IRQ 385 select MFD_CORE 386 help 387 This supports for Marvell 88PM805 Power Management IC. This includes 388 the I2C driver and the core APIs _only_, you have to select individual 389 components like codec device, headset/Mic device under the 390 corresponding menus. 391 392config MFD_88PM860X 393 bool "Marvell 88PM8606/88PM8607" 394 depends on I2C=y 395 select REGMAP_I2C 396 select MFD_CORE 397 help 398 This supports for Marvell 88PM8606/88PM8607 Power Management IC. 399 This includes the I2C driver and the core APIs _only_, you have to 400 select individual components like voltage regulators, RTC and 401 battery-charger under the corresponding menus. 402 403config MFD_MAX14577 404 bool "Maxim Semiconductor MAX14577/77836 MUIC + Charger Support" 405 depends on I2C=y 406 select MFD_CORE 407 select REGMAP_I2C 408 select REGMAP_IRQ 409 select IRQ_DOMAIN 410 help 411 Say yes here to add support for Maxim Semiconductor MAX14577 and 412 MAX77836 Micro-USB ICs with battery charger. 413 This driver provides common support for accessing the device; 414 additional drivers must be enabled in order to use the functionality 415 of the device. 416 417config MFD_MAX77686 418 bool "Maxim Semiconductor MAX77686/802 PMIC Support" 419 depends on I2C=y 420 select MFD_CORE 421 select REGMAP_I2C 422 select REGMAP_IRQ 423 select IRQ_DOMAIN 424 help 425 Say yes here to add support for Maxim Semiconductor MAX77686 and 426 MAX77802 which are Power Management IC with an RTC on chip. 427 This driver provides common support for accessing the device; 428 additional drivers must be enabled in order to use the functionality 429 of the device. 430 431config MFD_MAX77693 432 bool "Maxim Semiconductor MAX77693 PMIC Support" 433 depends on I2C=y 434 select MFD_CORE 435 select REGMAP_I2C 436 select REGMAP_IRQ 437 help 438 Say yes here to add support for Maxim Semiconductor MAX77693. 439 This is a companion Power Management IC with Flash, Haptic, Charger, 440 and MUIC(Micro USB Interface Controller) controls on chip. 441 This driver provides common support for accessing the device; 442 additional drivers must be enabled in order to use the functionality 443 of the device. 444 445config MFD_MAX8907 446 tristate "Maxim Semiconductor MAX8907 PMIC Support" 447 select MFD_CORE 448 depends on I2C=y 449 select REGMAP_I2C 450 select REGMAP_IRQ 451 help 452 Say yes here to add support for Maxim Semiconductor MAX8907. This is 453 a Power Management IC. This driver provides common support for 454 accessing the device; additional drivers must be enabled in order 455 to use the functionality of the device. 456 457config MFD_MAX8925 458 bool "Maxim Semiconductor MAX8925 PMIC Support" 459 depends on I2C=y 460 select MFD_CORE 461 help 462 Say yes here to add support for Maxim Semiconductor MAX8925. This is 463 a Power Management IC. This driver provides common support for 464 accessing the device, additional drivers must be enabled in order 465 to use the functionality of the device. 466 467config MFD_MAX8997 468 bool "Maxim Semiconductor MAX8997/8966 PMIC Support" 469 depends on I2C=y 470 select MFD_CORE 471 select IRQ_DOMAIN 472 help 473 Say yes here to add support for Maxim Semiconductor MAX8997/8966. 474 This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic, 475 MUIC controls on chip. 476 This driver provides common support for accessing the device; 477 additional drivers must be enabled in order to use the functionality 478 of the device. 479 480config MFD_MAX8998 481 bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support" 482 depends on I2C=y 483 select MFD_CORE 484 select IRQ_DOMAIN 485 help 486 Say yes here to add support for Maxim Semiconductor MAX8998 and 487 National Semiconductor LP3974. This is a Power Management IC. 488 This driver provides common support for accessing the device, 489 additional drivers must be enabled in order to use the functionality 490 of the device. 491 492config MFD_MENF21BMC 493 tristate "MEN 14F021P00 Board Management Controller Support" 494 depends on I2C 495 select MFD_CORE 496 help 497 Say yes here to add support for the MEN 14F021P00 BMC 498 which is a Board Management Controller connected to the I2C bus. 499 The device supports multiple sub-devices like LED, HWMON and WDT. 500 This driver provides common support for accessing the devices; 501 additional drivers must be enabled in order to use the 502 functionality of the BMC device. 503 504 This driver can also be built as a module. If so the module 505 will be called menf21bmc. 506 507config EZX_PCAP 508 bool "Motorola EZXPCAP Support" 509 depends on SPI_MASTER 510 help 511 This enables the PCAP ASIC present on EZX Phones. This is 512 needed for MMC, TouchScreen, Sound, USB, etc.. 513 514config MFD_VIPERBOARD 515 tristate "Nano River Technologies Viperboard" 516 select MFD_CORE 517 depends on USB 518 default n 519 help 520 Say yes here if you want support for Nano River Technologies 521 Viperboard. 522 There are mfd cell drivers available for i2c master, adc and 523 both gpios found on the board. The spi part does not yet 524 have a driver. 525 You need to select the mfd cell drivers separately. 526 The drivers do not support all features the board exposes. 527 528config MFD_RETU 529 tristate "Nokia Retu and Tahvo multi-function device" 530 select MFD_CORE 531 depends on I2C 532 select REGMAP_IRQ 533 help 534 Retu and Tahvo are a multi-function devices found on Nokia 535 Internet Tablets (770, N800 and N810). 536 537config MFD_PCF50633 538 tristate "NXP PCF50633" 539 depends on I2C 540 select REGMAP_I2C 541 help 542 Say yes here if you have NXP PCF50633 chip on your board. 543 This core driver provides register access and IRQ handling 544 facilities, and registers devices for the various functions 545 so that function-specific drivers can bind to them. 546 547config PCF50633_ADC 548 tristate "NXP PCF50633 ADC" 549 depends on MFD_PCF50633 550 help 551 Say yes here if you want to include support for ADC in the 552 NXP PCF50633 chip. 553 554config PCF50633_GPIO 555 tristate "NXP PCF50633 GPIO" 556 depends on MFD_PCF50633 557 help 558 Say yes here if you want to include support GPIO for pins on 559 the PCF50633 chip. 560 561config UCB1400_CORE 562 tristate "Philips UCB1400 Core driver" 563 depends on AC97_BUS 564 depends on GPIOLIB 565 help 566 This enables support for the Philips UCB1400 core functions. 567 The UCB1400 is an AC97 audio codec. 568 569 To compile this driver as a module, choose M here: the 570 module will be called ucb1400_core. 571 572config MFD_PM8XXX 573 tristate 574 575config MFD_PM8921_CORE 576 tristate "Qualcomm PM8921 PMIC chip" 577 depends on (ARM || HEXAGON) 578 select IRQ_DOMAIN 579 select MFD_CORE 580 select MFD_PM8XXX 581 select REGMAP 582 help 583 If you say yes to this option, support will be included for the 584 built-in PM8921 PMIC chip. 585 586 This is required if your board has a PM8921 and uses its features, 587 such as: MPPs, GPIOs, regulators, interrupts, and PWM. 588 589 Say M here if you want to include support for PM8921 chip as a module. 590 This will build a module called "pm8921-core". 591 592config MFD_SPMI_PMIC 593 tristate "Qualcomm SPMI PMICs" 594 depends on ARCH_QCOM || COMPILE_TEST 595 depends on OF 596 depends on SPMI 597 select REGMAP_SPMI 598 help 599 This enables support for the Qualcomm SPMI PMICs. 600 These PMICs are currently used with the Snapdragon 800 series of 601 SoCs. Note, that this will only be useful paired with descriptions 602 of the independent functions as children nodes in the device tree. 603 604 Say M here if you want to include support for the SPMI PMIC 605 series as a module. The module will be called "qcom-spmi-pmic". 606 607config MFD_RDC321X 608 tristate "RDC R-321x southbridge" 609 select MFD_CORE 610 depends on PCI 611 help 612 Say yes here if you want to have support for the RDC R-321x SoC 613 southbridge which provides access to GPIOs and Watchdog using the 614 southbridge PCI device configuration space. 615 616config MFD_RTSX_PCI 617 tristate "Realtek PCI-E card reader" 618 depends on PCI 619 select MFD_CORE 620 help 621 This supports for Realtek PCI-Express card reader including rts5209, 622 rts5229, rtl8411, etc. Realtek card reader supports access to many 623 types of memory cards, such as Memory Stick, Memory Stick Pro, 624 Secure Digital and MultiMediaCard. 625 626config MFD_RTSX_USB 627 tristate "Realtek USB card reader" 628 depends on USB 629 select MFD_CORE 630 help 631 Select this option to get support for Realtek USB 2.0 card readers 632 including RTS5129, RTS5139, RTS5179 and RTS5170. 633 Realtek card reader supports access to many types of memory cards, 634 such as Memory Stick Pro, Secure Digital and MultiMediaCard. 635 636config MFD_RC5T583 637 bool "Ricoh RC5T583 Power Management system device" 638 depends on I2C=y 639 select MFD_CORE 640 select REGMAP_I2C 641 help 642 Select this option to get support for the RICOH583 Power 643 Management system device. 644 This driver provides common support for accessing the device 645 through i2c interface. The device supports multiple sub-devices 646 like GPIO, interrupts, RTC, LDO and DCDC regulators, onkey. 647 Additional drivers must be enabled in order to use the 648 different functionality of the device. 649 650config MFD_RK808 651 tristate "Rockchip RK808 Power Management chip" 652 depends on I2C && OF 653 select MFD_CORE 654 select REGMAP_I2C 655 select REGMAP_IRQ 656 help 657 If you say yes here you get support for the RK808 658 Power Management chips. 659 This driver provides common support for accessing the device 660 through I2C interface. The device supports multiple sub-devices 661 including interrupts, RTC, LDO & DCDC regulators, and onkey. 662 663config MFD_RN5T618 664 tristate "Ricoh RN5T5618 PMIC" 665 depends on I2C 666 select MFD_CORE 667 select REGMAP_I2C 668 help 669 Say yes here to add support for the Ricoh RN5T618 PMIC. This 670 driver provides common support for accessing the device, 671 additional drivers must be enabled in order to use the 672 functionality of the device. 673 674config MFD_SEC_CORE 675 bool "SAMSUNG Electronics PMIC Series Support" 676 depends on I2C=y 677 select MFD_CORE 678 select REGMAP_I2C 679 select REGMAP_IRQ 680 help 681 Support for the Samsung Electronics MFD series. 682 This driver provides common support for accessing the device, 683 additional drivers must be enabled in order to use the functionality 684 of the device 685 686config MFD_SI476X_CORE 687 tristate "Silicon Laboratories 4761/64/68 AM/FM radio." 688 depends on I2C 689 select MFD_CORE 690 select REGMAP_I2C 691 help 692 This is the core driver for the SI476x series of AM/FM 693 radio. This MFD driver connects the radio-si476x V4L2 module 694 and the si476x audio codec. 695 696 To compile this driver as a module, choose M here: the 697 module will be called si476x-core. 698 699config MFD_SM501 700 tristate "Silicon Motion SM501" 701 ---help--- 702 This is the core driver for the Silicon Motion SM501 multimedia 703 companion chip. This device is a multifunction device which may 704 provide numerous interfaces including USB host controller, USB gadget, 705 asynchronous serial ports, audio functions, and a dual display video 706 interface. The device may be connected by PCI or local bus with 707 varying functions enabled. 708 709config MFD_SM501_GPIO 710 bool "Export GPIO via GPIO layer" 711 depends on MFD_SM501 && GPIOLIB 712 ---help--- 713 This option uses the gpio library layer to export the 64 GPIO 714 lines on the SM501. The platform data is used to supply the 715 base number for the first GPIO line to register. 716 717config MFD_SMSC 718 bool "SMSC ECE1099 series chips" 719 depends on I2C=y 720 select MFD_CORE 721 select REGMAP_I2C 722 help 723 If you say yes here you get support for the 724 ece1099 chips from SMSC. 725 726 To compile this driver as a module, choose M here: the 727 module will be called smsc. 728 729config ABX500_CORE 730 bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions" 731 default y if ARCH_U300 || ARCH_U8500 732 help 733 Say yes here if you have the ABX500 Mixed Signal IC family 734 chips. This core driver expose register access functions. 735 Functionality specific drivers using these functions can 736 remain unchanged when IC changes. Binding of the functions to 737 actual register access is done by the IC core driver. 738 739config AB3100_CORE 740 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions" 741 depends on I2C=y && ABX500_CORE 742 select MFD_CORE 743 default y if ARCH_U300 744 help 745 Select this to enable the AB3100 Mixed Signal IC core 746 functionality. This connects to a AB3100 on the I2C bus 747 and expose a number of symbols needed for dependent devices 748 to read and write registers and subscribe to events from 749 this multi-functional IC. This is needed to use other features 750 of the AB3100 such as battery-backed RTC, charging control, 751 LEDs, vibrator, system power and temperature, power management 752 and ALSA sound. 753 754config AB3100_OTP 755 tristate "ST-Ericsson AB3100 OTP functions" 756 depends on AB3100_CORE 757 default y if AB3100_CORE 758 help 759 Select this to enable the AB3100 Mixed Signal IC OTP (one-time 760 programmable memory) support. This exposes a sysfs file to read 761 out OTP values. 762 763config AB8500_CORE 764 bool "ST-Ericsson AB8500 Mixed Signal Power Management chip" 765 depends on ABX500_CORE && MFD_DB8500_PRCMU 766 select POWER_SUPPLY 767 select MFD_CORE 768 select IRQ_DOMAIN 769 help 770 Select this option to enable access to AB8500 power management 771 chip. This connects to U8500 either on the SSP/SPI bus (deprecated 772 since hardware version v1.0) or the I2C bus via PRCMU. It also adds 773 the irq_chip parts for handling the Mixed Signal chip events. 774 This chip embeds various other multimedia funtionalities as well. 775 776config AB8500_DEBUG 777 bool "Enable debug info via debugfs" 778 depends on AB8500_GPADC && DEBUG_FS 779 default y if DEBUG_FS 780 help 781 Select this option if you want debug information using the debug 782 filesystem, debugfs. 783 784config AB8500_GPADC 785 bool "ST-Ericsson AB8500 GPADC driver" 786 depends on AB8500_CORE && REGULATOR_AB8500 787 default y 788 help 789 AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage 790 791config MFD_DB8500_PRCMU 792 bool "ST-Ericsson DB8500 Power Reset Control Management Unit" 793 depends on UX500_SOC_DB8500 794 select MFD_CORE 795 help 796 Select this option to enable support for the DB8500 Power Reset 797 and Control Management Unit. This is basically an autonomous 798 system controller running an XP70 microprocessor, which is accessed 799 through a register map. 800 801config MFD_STMPE 802 bool "STMicroelectronics STMPE" 803 depends on (I2C=y || SPI_MASTER=y) 804 depends on OF 805 select MFD_CORE 806 help 807 Support for the STMPE family of I/O Expanders from 808 STMicroelectronics. 809 810 Currently supported devices are: 811 812 STMPE811: GPIO, Touchscreen 813 STMPE1601: GPIO, Keypad 814 STMPE1801: GPIO, Keypad 815 STMPE2401: GPIO, Keypad 816 STMPE2403: GPIO, Keypad 817 818 This driver provides common support for accessing the device, 819 additional drivers must be enabled in order to use the functionality 820 of the device. Currently available sub drivers are: 821 822 GPIO: stmpe-gpio 823 Keypad: stmpe-keypad 824 Touchscreen: stmpe-ts 825 826menu "STMicroelectronics STMPE Interface Drivers" 827depends on MFD_STMPE 828 829config STMPE_I2C 830 bool "STMicroelectronics STMPE I2C Interface" 831 depends on I2C=y 832 default y 833 help 834 This is used to enable I2C interface of STMPE 835 836config STMPE_SPI 837 bool "STMicroelectronics STMPE SPI Interface" 838 depends on SPI_MASTER 839 help 840 This is used to enable SPI interface of STMPE 841endmenu 842 843config MFD_STA2X11 844 bool "STMicroelectronics STA2X11" 845 depends on STA2X11 846 select MFD_CORE 847 select REGMAP_MMIO 848 849config MFD_SUN6I_PRCM 850 bool "Allwinner A31 PRCM controller" 851 depends on ARCH_SUNXI 852 select MFD_CORE 853 help 854 Support for the PRCM (Power/Reset/Clock Management) unit available 855 in A31 SoC. 856 857config MFD_SYSCON 858 bool "System Controller Register R/W Based on Regmap" 859 select REGMAP_MMIO 860 help 861 Select this option to enable accessing system control registers 862 via regmap. 863 864config MFD_DAVINCI_VOICECODEC 865 tristate 866 select MFD_CORE 867 select REGMAP_MMIO 868 869config MFD_TI_AM335X_TSCADC 870 tristate "TI ADC / Touch Screen chip support" 871 select MFD_CORE 872 select REGMAP 873 select REGMAP_MMIO 874 help 875 If you say yes here you get support for Texas Instruments series 876 of Touch Screen /ADC chips. 877 To compile this driver as a module, choose M here: the 878 module will be called ti_am335x_tscadc. 879 880config MFD_DM355EVM_MSP 881 bool "TI DaVinci DM355 EVM microcontroller" 882 depends on I2C=y && MACH_DAVINCI_DM355_EVM 883 help 884 This driver supports the MSP430 microcontroller used on these 885 boards. MSP430 firmware manages resets and power sequencing, 886 inputs from buttons and the IR remote, LEDs, an RTC, and more. 887 888config MFD_LP3943 889 tristate "TI/National Semiconductor LP3943 MFD Driver" 890 depends on I2C 891 select MFD_CORE 892 select REGMAP_I2C 893 help 894 Support for the TI/National Semiconductor LP3943. 895 This driver consists of GPIO and PWM drivers. 896 With these functionalities, it can be used for LED string control or 897 general usage such like a GPIO controller and a PWM controller. 898 899config MFD_LP8788 900 bool "TI LP8788 Power Management Unit Driver" 901 depends on I2C=y 902 select MFD_CORE 903 select REGMAP_I2C 904 select IRQ_DOMAIN 905 help 906 TI LP8788 PMU supports regulators, battery charger, RTC, 907 ADC, backlight driver and current sinks. 908 909config MFD_OMAP_USB_HOST 910 bool "TI OMAP USBHS core and TLL driver" 911 depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3 912 default y 913 help 914 This is the core driver for the OAMP EHCI and OHCI drivers. 915 This MFD driver does the required setup functionalities for 916 OMAP USB Host drivers. 917 918config MFD_PALMAS 919 bool "TI Palmas series chips" 920 select MFD_CORE 921 select REGMAP_I2C 922 select REGMAP_IRQ 923 depends on I2C=y 924 help 925 If you say yes here you get support for the Palmas 926 series of PMIC chips from Texas Instruments. 927 928config TPS6105X 929 tristate "TI TPS61050/61052 Boost Converters" 930 depends on I2C 931 select REGULATOR 932 select MFD_CORE 933 select REGULATOR_FIXED_VOLTAGE 934 help 935 This option enables a driver for the TP61050/TPS61052 936 high-power "white LED driver". This boost converter is 937 sometimes used for other things than white LEDs, and 938 also contains a GPIO pin. 939 940config TPS65010 941 tristate "TI TPS6501x Power Management chips" 942 depends on I2C && GPIOLIB 943 default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK 944 help 945 If you say yes here you get support for the TPS6501x series of 946 Power Management chips. These include voltage regulators, 947 lithium ion/polymer battery charging, and other features that 948 are often used in portable devices like cell phones and cameras. 949 950 This driver can also be built as a module. If so, the module 951 will be called tps65010. 952 953config TPS6507X 954 tristate "TI TPS6507x Power Management / Touch Screen chips" 955 select MFD_CORE 956 depends on I2C 957 help 958 If you say yes here you get support for the TPS6507x series of 959 Power Management / Touch Screen chips. These include voltage 960 regulators, lithium ion/polymer battery charging, touch screen 961 and other features that are often used in portable devices. 962 This driver can also be built as a module. If so, the module 963 will be called tps6507x. 964 965config TPS65911_COMPARATOR 966 tristate 967 968config MFD_TPS65090 969 bool "TI TPS65090 Power Management chips" 970 depends on I2C=y 971 select MFD_CORE 972 select REGMAP_I2C 973 select REGMAP_IRQ 974 help 975 If you say yes here you get support for the TPS65090 series of 976 Power Management chips. 977 This driver provides common support for accessing the device, 978 additional drivers must be enabled in order to use the 979 functionality of the device. 980 981config MFD_TPS65217 982 tristate "TI TPS65217 Power Management / White LED chips" 983 depends on I2C 984 select MFD_CORE 985 select REGMAP_I2C 986 help 987 If you say yes here you get support for the TPS65217 series of 988 Power Management / White LED chips. 989 These include voltage regulators, lithium ion/polymer battery 990 charger, wled and other features that are often used in portable 991 devices. 992 993 This driver can also be built as a module. If so, the module 994 will be called tps65217. 995 996config MFD_TPS65218 997 tristate "TI TPS65218 Power Management chips" 998 depends on I2C 999 select MFD_CORE 1000 select REGMAP_I2C 1001 select REGMAP_IRQ 1002 help 1003 If you say yes here you get support for the TPS65218 series of 1004 Power Management chips. 1005 These include voltage regulators, gpio and other features 1006 that are often used in portable devices. Only regulator 1007 component is currently supported. 1008 1009 This driver can also be built as a module. If so, the module 1010 will be called tps65218. 1011 1012config MFD_TPS6586X 1013 bool "TI TPS6586x Power Management chips" 1014 depends on I2C=y 1015 select MFD_CORE 1016 select REGMAP_I2C 1017 help 1018 If you say yes here you get support for the TPS6586X series of 1019 Power Management chips. 1020 This driver provides common support for accessing the device, 1021 additional drivers must be enabled in order to use the 1022 functionality of the device. 1023 1024 This driver can also be built as a module. If so, the module 1025 will be called tps6586x. 1026 1027config MFD_TPS65910 1028 bool "TI TPS65910 Power Management chip" 1029 depends on I2C=y && GPIOLIB 1030 select MFD_CORE 1031 select REGMAP_I2C 1032 select REGMAP_IRQ 1033 select IRQ_DOMAIN 1034 help 1035 if you say yes here you get support for the TPS65910 series of 1036 Power Management chips. 1037 1038config MFD_TPS65912 1039 bool "TI TPS65912 Power Management chip" 1040 depends on GPIOLIB 1041 select MFD_CORE 1042 help 1043 If you say yes here you get support for the TPS65912 series of 1044 PM chips. 1045 1046config MFD_TPS65912_I2C 1047 bool "TI TPS65912 Power Management chip with I2C" 1048 select MFD_CORE 1049 select MFD_TPS65912 1050 depends on I2C=y && GPIOLIB 1051 help 1052 If you say yes here you get support for the TPS65912 series of 1053 PM chips with I2C interface. 1054 1055config MFD_TPS65912_SPI 1056 bool "TI TPS65912 Power Management chip with SPI" 1057 select MFD_CORE 1058 select MFD_TPS65912 1059 depends on SPI_MASTER && GPIOLIB 1060 help 1061 If you say yes here you get support for the TPS65912 series of 1062 PM chips with SPI interface. 1063 1064config MFD_TPS80031 1065 bool "TI TPS80031/TPS80032 Power Management chips" 1066 depends on I2C=y 1067 select MFD_CORE 1068 select REGMAP_I2C 1069 select REGMAP_IRQ 1070 help 1071 If you say yes here you get support for the Texas Instruments 1072 TPS80031/ TPS80032 Fully Integrated Power Management with Power 1073 Path and Battery Charger. The device provides five configurable 1074 step-down converters, 11 general purpose LDOs, USB OTG Module, 1075 ADC, RTC, 2 PWM, System Voltage Regulator/Battery Charger with 1076 Power Path from USB, 32K clock generator. 1077 1078config TWL4030_CORE 1079 bool "TI TWL4030/TWL5030/TWL6030/TPS659x0 Support" 1080 depends on I2C=y 1081 select IRQ_DOMAIN 1082 select REGMAP_I2C 1083 help 1084 Say yes here if you have TWL4030 / TWL6030 family chip on your board. 1085 This core driver provides register access and IRQ handling 1086 facilities, and registers devices for the various functions 1087 so that function-specific drivers can bind to them. 1088 1089 These multi-function chips are found on many OMAP2 and OMAP3 1090 boards, providing power management, RTC, GPIO, keypad, a 1091 high speed USB OTG transceiver, an audio codec (on most 1092 versions) and many other features. 1093 1094config TWL4030_POWER 1095 bool "TI TWL4030 power resources" 1096 depends on TWL4030_CORE && ARM 1097 help 1098 Say yes here if you want to use the power resources on the 1099 TWL4030 family chips. Most of these resources are regulators, 1100 which have a separate driver; some are control signals, such 1101 as clock request handshaking. 1102 1103 This driver uses board-specific data to initialize the resources 1104 and load scripts controlling which resources are switched off/on 1105 or reset when a sleep, wakeup or warm reset event occurs. 1106 1107config MFD_TWL4030_AUDIO 1108 bool "TI TWL4030 Audio" 1109 depends on TWL4030_CORE 1110 select MFD_CORE 1111 default n 1112 1113config TWL6040_CORE 1114 bool "TI TWL6040 audio codec" 1115 depends on I2C=y 1116 select MFD_CORE 1117 select REGMAP_I2C 1118 select REGMAP_IRQ 1119 default n 1120 help 1121 Say yes here if you want support for Texas Instruments TWL6040 audio 1122 codec. 1123 This driver provides common support for accessing the device, 1124 additional drivers must be enabled in order to use the 1125 functionality of the device (audio, vibra). 1126 1127config MENELAUS 1128 bool "TI TWL92330/Menelaus PM chip" 1129 depends on I2C=y && ARCH_OMAP2 1130 help 1131 If you say yes here you get support for the Texas Instruments 1132 TWL92330/Menelaus Power Management chip. This include voltage 1133 regulators, Dual slot memory card transceivers, real-time clock 1134 and other features that are often used in portable devices like 1135 cell phones and PDAs. 1136 1137config MFD_WL1273_CORE 1138 tristate "TI WL1273 FM radio" 1139 depends on I2C 1140 select MFD_CORE 1141 default n 1142 help 1143 This is the core driver for the TI WL1273 FM radio. This MFD 1144 driver connects the radio-wl1273 V4L2 module and the wl1273 1145 audio codec. 1146 1147config MFD_LM3533 1148 tristate "TI/National Semiconductor LM3533 Lighting Power chip" 1149 depends on I2C 1150 select MFD_CORE 1151 select REGMAP_I2C 1152 help 1153 Say yes here to enable support for National Semiconductor / TI 1154 LM3533 Lighting Power chips. 1155 1156 This driver provides common support for accessing the device; 1157 additional drivers must be enabled in order to use the LED, 1158 backlight or ambient-light-sensor functionality of the device. 1159 1160config MFD_TIMBERDALE 1161 tristate "Timberdale FPGA" 1162 select MFD_CORE 1163 depends on PCI && GPIOLIB && (X86_32 || COMPILE_TEST) 1164 ---help--- 1165 This is the core driver for the timberdale FPGA. This device is a 1166 multifunction device which exposes numerous platform devices. 1167 1168 The timberdale FPGA can be found on the Intel Atom development board 1169 for in-vehicle infontainment, called Russellville. 1170 1171config MFD_TC3589X 1172 bool "Toshiba TC35892 and variants" 1173 depends on I2C=y 1174 select MFD_CORE 1175 help 1176 Support for the Toshiba TC35892 and variants I/O Expander. 1177 1178 This driver provides common support for accessing the device, 1179 additional drivers must be enabled in order to use the 1180 functionality of the device. 1181 1182config MFD_TMIO 1183 bool 1184 default n 1185 1186config MFD_T7L66XB 1187 bool "Toshiba T7L66XB" 1188 depends on ARM && HAVE_CLK 1189 select MFD_CORE 1190 select MFD_TMIO 1191 help 1192 Support for Toshiba Mobile IO Controller T7L66XB 1193 1194config MFD_TC6387XB 1195 bool "Toshiba TC6387XB" 1196 depends on ARM && HAVE_CLK 1197 select MFD_CORE 1198 select MFD_TMIO 1199 help 1200 Support for Toshiba Mobile IO Controller TC6387XB 1201 1202config MFD_TC6393XB 1203 bool "Toshiba TC6393XB" 1204 depends on ARM && HAVE_CLK 1205 select GPIOLIB 1206 select MFD_CORE 1207 select MFD_TMIO 1208 help 1209 Support for Toshiba Mobile IO Controller TC6393XB 1210 1211config MFD_VX855 1212 tristate "VIA VX855/VX875 integrated south bridge" 1213 depends on PCI 1214 select MFD_CORE 1215 help 1216 Say yes here to enable support for various functions of the 1217 VIA VX855/VX875 south bridge. You will need to enable the vx855_spi 1218 and/or vx855_gpio drivers for this to do anything useful. 1219 1220config MFD_ARIZONA 1221 select REGMAP 1222 select REGMAP_IRQ 1223 select MFD_CORE 1224 bool 1225 1226config MFD_ARIZONA_I2C 1227 tristate "Wolfson Microelectronics Arizona platform with I2C" 1228 select MFD_ARIZONA 1229 select MFD_CORE 1230 select REGMAP_I2C 1231 depends on I2C 1232 help 1233 Support for the Wolfson Microelectronics Arizona platform audio SoC 1234 core functionality controlled via I2C. 1235 1236config MFD_ARIZONA_SPI 1237 tristate "Wolfson Microelectronics Arizona platform with SPI" 1238 select MFD_ARIZONA 1239 select MFD_CORE 1240 select REGMAP_SPI 1241 depends on SPI_MASTER 1242 help 1243 Support for the Wolfson Microelectronics Arizona platform audio SoC 1244 core functionality controlled via I2C. 1245 1246config MFD_WM5102 1247 bool "Wolfson Microelectronics WM5102" 1248 depends on MFD_ARIZONA 1249 help 1250 Support for Wolfson Microelectronics WM5102 low power audio SoC 1251 1252config MFD_WM5110 1253 bool "Wolfson Microelectronics WM5110" 1254 depends on MFD_ARIZONA 1255 help 1256 Support for Wolfson Microelectronics WM5110 low power audio SoC 1257 1258config MFD_WM8997 1259 bool "Wolfson Microelectronics WM8997" 1260 depends on MFD_ARIZONA 1261 help 1262 Support for Wolfson Microelectronics WM8997 low power audio SoC 1263 1264config MFD_WM8400 1265 bool "Wolfson Microelectronics WM8400" 1266 select MFD_CORE 1267 depends on I2C=y 1268 select REGMAP_I2C 1269 help 1270 Support for the Wolfson Microelecronics WM8400 PMIC and audio 1271 CODEC. This driver provides common support for accessing 1272 the device, additional drivers must be enabled in order to use 1273 the functionality of the device. 1274 1275config MFD_WM831X 1276 bool 1277 1278config MFD_WM831X_I2C 1279 bool "Wolfson Microelectronics WM831x/2x PMICs with I2C" 1280 select MFD_CORE 1281 select MFD_WM831X 1282 select REGMAP_I2C 1283 select IRQ_DOMAIN 1284 depends on I2C=y 1285 help 1286 Support for the Wolfson Microelecronics WM831x and WM832x PMICs 1287 when controlled using I2C. This driver provides common support 1288 for accessing the device, additional drivers must be enabled in 1289 order to use the functionality of the device. 1290 1291config MFD_WM831X_SPI 1292 bool "Wolfson Microelectronics WM831x/2x PMICs with SPI" 1293 select MFD_CORE 1294 select MFD_WM831X 1295 select REGMAP_SPI 1296 select IRQ_DOMAIN 1297 depends on SPI_MASTER 1298 help 1299 Support for the Wolfson Microelecronics WM831x and WM832x PMICs 1300 when controlled using SPI. This driver provides common support 1301 for accessing the device, additional drivers must be enabled in 1302 order to use the functionality of the device. 1303 1304config MFD_WM8350 1305 bool 1306 1307config MFD_WM8350_I2C 1308 bool "Wolfson Microelectronics WM8350 with I2C" 1309 select MFD_WM8350 1310 depends on I2C=y 1311 help 1312 The WM8350 is an integrated audio and power management 1313 subsystem with watchdog and RTC functionality for embedded 1314 systems. This option enables core support for the WM8350 with 1315 I2C as the control interface. Additional options must be 1316 selected to enable support for the functionality of the chip. 1317 1318config MFD_WM8994 1319 tristate "Wolfson Microelectronics WM8994" 1320 select MFD_CORE 1321 select REGMAP_I2C 1322 select REGMAP_IRQ 1323 depends on I2C 1324 help 1325 The WM8994 is a highly integrated hi-fi CODEC designed for 1326 smartphone applicatiosn. As well as audio functionality it 1327 has on board GPIO and regulator functionality which is 1328 supported via the relevant subsystems. This driver provides 1329 core support for the WM8994, in order to use the actual 1330 functionaltiy of the device other drivers must be enabled. 1331 1332config MFD_STW481X 1333 tristate "Support for ST Microelectronics STw481x" 1334 depends on I2C && ARCH_NOMADIK 1335 select REGMAP_I2C 1336 select MFD_CORE 1337 help 1338 Select this option to enable the STw481x chip driver used 1339 in various ST Microelectronics and ST-Ericsson embedded 1340 Nomadik series. 1341 1342menu "Multimedia Capabilities Port drivers" 1343 depends on ARCH_SA1100 1344 1345config MCP 1346 tristate 1347 1348# Interface drivers 1349config MCP_SA11X0 1350 tristate "Support SA11x0 MCP interface" 1351 depends on ARCH_SA1100 1352 select MCP 1353 1354# Chip drivers 1355config MCP_UCB1200 1356 tristate "Support for UCB1200 / UCB1300" 1357 depends on MCP_SA11X0 1358 select MCP 1359 1360config MCP_UCB1200_TS 1361 tristate "Touchscreen interface support" 1362 depends on MCP_UCB1200 && INPUT 1363 1364endmenu 1365 1366config MFD_VEXPRESS_SYSREG 1367 bool "Versatile Express System Registers" 1368 depends on VEXPRESS_CONFIG && GPIOLIB 1369 default y 1370 select CLKSRC_MMIO 1371 select GPIO_GENERIC_PLATFORM 1372 select MFD_CORE 1373 select MFD_SYSCON 1374 help 1375 System Registers are the platform configuration block 1376 on the ARM Ltd. Versatile Express board. 1377 1378endmenu 1379endif 1380