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