xref: /openbmc/linux/drivers/mfd/Kconfig (revision ca79522c)
1#
2# Multifunction miscellaneous devices
3#
4
5if HAS_IOMEM
6menu "Multifunction device drivers"
7
8config MFD_CORE
9	tristate
10	select IRQ_DOMAIN
11	default n
12
13config MFD_CS5535
14	tristate "AMD CS5535 and CS5536 southbridge core functions"
15	select MFD_CORE
16	depends on PCI && X86
17	---help---
18	  This is the core driver for CS5535/CS5536 MFD functions.  This is
19          necessary for using the board's GPIO and MFGPT functionality.
20
21config MFD_AS3711
22	bool "AMS AS3711"
23	select MFD_CORE
24	select REGMAP_I2C
25	select REGMAP_IRQ
26	depends on I2C=y && GENERIC_HARDIRQS
27	help
28	  Support for the AS3711 PMIC from AMS
29
30config 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
40config 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
50config 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
59config 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
69config 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
79config 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
87config 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
98config PMIC_DA9052
99	bool
100	select MFD_CORE
101
102config 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
114config 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
126config 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
142config MFD_MC13783
143	tristate
144
145config 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
156config 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
164config 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
172config 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
180config 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
190config 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
199config 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
209config 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
217config 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
226config 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
236config 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
245config 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
257config 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
269config 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
280config 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
293config 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
306config 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
318config 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
328config 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
341config 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
352config 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
359config 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
373config 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
382config 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
392config 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
399config 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
406config 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
417config MFD_PM8XXX
418	tristate
419
420config 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
435config 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
445config 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
454config 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
464config 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
478config 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
490config 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
503config 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
513config 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
521config 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
533config 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
543config 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
558config 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
567config 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
580config 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
588config 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
595config 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
605config 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
629menu "STMicroelectronics STMPE Interface Drivers"
630depends on MFD_STMPE
631
632config 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
639config 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
644endmenu
645
646config MFD_STA2X11
647	bool "STMicroelectronics STA2X11"
648	depends on STA2X11 && GENERIC_HARDIRQS
649	select MFD_CORE
650	select REGMAP_MMIO
651
652config 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
659config MFD_DAVINCI_VOICECODEC
660	tristate
661	select MFD_CORE
662
663config 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
675config 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
683config 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
693config 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
702config 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
712config 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
723config 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
736config 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
749config 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
761config TPS65911_COMPARATOR
762	tristate
763
764config 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
777config 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
792config 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
807config 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
818config 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
825config 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
834config 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
843config 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
857config 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
873config 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
883config 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
896config MFD_TWL4030_AUDIO
897	bool "TI TWL4030 Audio"
898	depends on TWL4030_CORE && GENERIC_HARDIRQS
899	select MFD_CORE
900	default n
901
902config 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
916config 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
926config 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
936config 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
950config 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
961config 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
972config MFD_TMIO
973	bool
974	default n
975
976config 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
984config 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
992config 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
1001config 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
1010config MFD_ARIZONA
1011	select REGMAP
1012	select REGMAP_IRQ
1013	select MFD_CORE
1014	bool
1015
1016config 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
1026config 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
1036config 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
1042config 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
1048config 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
1059config MFD_WM831X
1060	bool
1061	depends on GENERIC_HARDIRQS
1062
1063config 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
1076config 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
1089config MFD_WM8350
1090	bool
1091	depends on GENERIC_HARDIRQS
1092
1093config 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
1104config 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
1118endmenu
1119endif
1120
1121menu "Multimedia Capabilities Port drivers"
1122	depends on ARCH_SA1100
1123
1124config MCP
1125	tristate
1126
1127# Interface drivers
1128config MCP_SA11X0
1129	tristate "Support SA11x0 MCP interface"
1130	depends on ARCH_SA1100
1131	select MCP
1132
1133# Chip drivers
1134config MCP_UCB1200
1135	bool "Support for UCB1200 / UCB1300"
1136	depends on MCP_SA11X0
1137	select MCP
1138
1139config MCP_UCB1200_TS
1140	tristate "Touchscreen interface support"
1141	depends on MCP_UCB1200 && INPUT
1142
1143endmenu
1144
1145config VEXPRESS_CONFIG
1146	bool
1147	help
1148	  Platform configuration infrastructure for the ARM Ltd.
1149	  Versatile Express.
1150