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