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