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