xref: /linux/drivers/mfd/Kconfig (revision e090d506c3f1b314059fb77b177cd4193bb81d6e)
1#
2# Multifunction miscellaneous devices
3#
4
5menu "Multifunction device drivers"
6	depends on HAS_IOMEM
7
8config MFD_CORE
9	tristate
10	default n
11
12config MFD_88PM860X
13	bool "Support Marvell 88PM8606/88PM8607"
14	depends on I2C=y && GENERIC_HARDIRQS
15	select MFD_CORE
16	help
17	  This supports for Marvell 88PM8606/88PM8607 Power Management IC.
18	  This includes the I2C driver and the core APIs _only_, you have to
19	  select individual components like voltage regulators, RTC and
20	  battery-charger under the corresponding menus.
21
22config MFD_SM501
23	tristate "Support for Silicon Motion SM501"
24	 ---help---
25	  This is the core driver for the Silicon Motion SM501 multimedia
26	  companion chip. This device is a multifunction device which may
27	  provide numerous interfaces including USB host controller, USB gadget,
28	  asynchronous serial ports, audio functions, and a dual display video
29	  interface. The device may be connected by PCI or local bus with
30	  varying functions enabled.
31
32config MFD_SM501_GPIO
33	bool "Export GPIO via GPIO layer"
34	depends on MFD_SM501 && GPIOLIB
35	 ---help---
36	 This option uses the gpio library layer to export the 64 GPIO
37	 lines on the SM501. The platform data is used to supply the
38	 base number for the first GPIO line to register.
39
40config MFD_ASIC3
41	bool "Support for Compaq ASIC3"
42	depends on GENERIC_HARDIRQS && GPIOLIB && ARM
43	select MFD_CORE
44	 ---help---
45	  This driver supports the ASIC3 multifunction chip found on many
46	  PDAs (mainly iPAQ and HTC based ones)
47
48config MFD_SH_MOBILE_SDHI
49	bool "Support for SuperH Mobile SDHI"
50	depends on SUPERH || ARCH_SHMOBILE
51	select MFD_CORE
52	select TMIO_MMC_DMA
53	 ---help---
54	  This driver supports the SDHI hardware block found in many
55	  SuperH Mobile SoCs.
56
57config MFD_DAVINCI_VOICECODEC
58	tristate
59	select MFD_CORE
60
61config MFD_DM355EVM_MSP
62	bool "DaVinci DM355 EVM microcontroller"
63	depends on I2C && MACH_DAVINCI_DM355_EVM
64	help
65	  This driver supports the MSP430 microcontroller used on these
66	  boards.  MSP430 firmware manages resets and power sequencing,
67	  inputs from buttons and the IR remote, LEDs, an RTC, and more.
68
69config HTC_EGPIO
70	bool "HTC EGPIO support"
71	depends on GENERIC_HARDIRQS && GPIOLIB && ARM
72	help
73	    This driver supports the CPLD egpio chip present on
74	    several HTC phones.  It provides basic support for input
75	    pins, output pins, and irqs.
76
77config HTC_PASIC3
78	tristate "HTC PASIC3 LED/DS1WM chip support"
79	select MFD_CORE
80	help
81	  This core driver provides register access for the LED/DS1WM
82	  chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
83	  HTC Magician devices, respectively. Actual functionality is
84	  handled by the leds-pasic3 and ds1wm drivers.
85
86config HTC_I2CPLD
87	bool "HTC I2C PLD chip support"
88	depends on I2C=y && GPIOLIB
89	help
90	  If you say yes here you get support for the supposed CPLD
91	  found on omap850 HTC devices like the HTC Wizard and HTC Herald.
92	  This device provides input and output GPIOs through an I2C
93	  interface to one or more sub-chips.
94
95config UCB1400_CORE
96	tristate "Philips UCB1400 Core driver"
97	depends on AC97_BUS
98	depends on GPIOLIB
99	help
100	  This enables support for the Philips UCB1400 core functions.
101	  The UCB1400 is an AC97 audio codec.
102
103	  To compile this driver as a module, choose M here: the
104	  module will be called ucb1400_core.
105
106config TPS65010
107	tristate "TPS6501x Power Management chips"
108	depends on I2C && GPIOLIB
109	default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
110	help
111	  If you say yes here you get support for the TPS6501x series of
112	  Power Management chips.  These include voltage regulators,
113	  lithium ion/polymer battery charging, and other features that
114	  are often used in portable devices like cell phones and cameras.
115
116	  This driver can also be built as a module.  If so, the module
117	  will be called tps65010.
118
119config MENELAUS
120	bool "Texas Instruments TWL92330/Menelaus PM chip"
121	depends on I2C=y && ARCH_OMAP2
122	help
123	  If you say yes here you get support for the Texas Instruments
124	  TWL92330/Menelaus Power Management chip. This include voltage
125	  regulators, Dual slot memory card transceivers, real-time clock
126	  and other features that are often used in portable devices like
127	  cell phones and PDAs.
128
129config TWL4030_CORE
130	bool "Texas Instruments TWL4030/TWL5030/TWL6030/TPS659x0 Support"
131	depends on I2C=y && GENERIC_HARDIRQS
132	help
133	  Say yes here if you have TWL4030 / TWL6030 family chip on your board.
134	  This core driver provides register access and IRQ handling
135	  facilities, and registers devices for the various functions
136	  so that function-specific drivers can bind to them.
137
138	  These multi-function chips are found on many OMAP2 and OMAP3
139	  boards, providing power management, RTC, GPIO, keypad, a
140	  high speed USB OTG transceiver, an audio codec (on most
141	  versions) and many other features.
142
143config TWL4030_POWER
144	bool "Support power resources on TWL4030 family chips"
145	depends on TWL4030_CORE && ARM
146	help
147	  Say yes here if you want to use the power resources on the
148	  TWL4030 family chips.  Most of these resources are regulators,
149	  which have a separate driver; some are control signals, such
150	  as clock request handshaking.
151
152	  This driver uses board-specific data to initialize the resources
153	  and load scripts controling which resources are switched off/on
154	  or reset when a sleep, wakeup or warm reset event occurs.
155
156config TWL4030_CODEC
157	bool
158	depends on TWL4030_CORE
159	select MFD_CORE
160	default n
161
162config MFD_TMIO
163	bool
164	default n
165
166config TMIO_MMC_DMA
167	bool
168	select DMA_ENGINE
169	select DMADEVICES
170
171config MFD_T7L66XB
172	bool "Support Toshiba T7L66XB"
173	depends on ARM && HAVE_CLK
174	select MFD_CORE
175	select MFD_TMIO
176	help
177	  Support for Toshiba Mobile IO Controller T7L66XB
178
179config MFD_TC6387XB
180	bool "Support Toshiba TC6387XB"
181	depends on ARM && HAVE_CLK
182	select MFD_CORE
183	select MFD_TMIO
184	help
185	  Support for Toshiba Mobile IO Controller TC6387XB
186
187config MFD_TC6393XB
188	bool "Support Toshiba TC6393XB"
189	depends on GPIOLIB && ARM
190	select MFD_CORE
191	select MFD_TMIO
192	help
193	  Support for Toshiba Mobile IO Controller TC6393XB
194
195config PMIC_DA903X
196	bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
197	depends on I2C=y
198	help
199	  Say yes here to support for Dialog Semiconductor DA9030 (a.k.a
200	  ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
201	  usually found on PXA processors-based platforms. This includes
202	  the I2C driver and the core APIs _only_, you have to select
203	  individual components like LCD backlight, voltage regulators,
204	  LEDs and battery-charger under the corresponding menus.
205
206config PMIC_ADP5520
207	bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
208	depends on I2C=y
209	help
210	  Say yes here to add support for Analog Devices AD5520 and ADP5501,
211	  Multifunction Power Management IC. This includes
212	  the I2C driver and the core APIs _only_, you have to select
213	  individual components like LCD backlight, LEDs, GPIOs and Kepad
214	  under the corresponding menus.
215
216config MFD_MAX8925
217	bool "Maxim Semiconductor MAX8925 PMIC Support"
218	depends on I2C=y && GENERIC_HARDIRQS
219	select MFD_CORE
220	help
221	  Say yes here to support for Maxim Semiconductor MAX8925. This is
222	  a Power Management IC. This driver provies common support for
223	  accessing the device, additional drivers must be enabled in order
224	  to use the functionality of the device.
225
226config MFD_WM8400
227	tristate "Support Wolfson Microelectronics WM8400"
228	select MFD_CORE
229	depends on I2C
230	help
231	  Support for the Wolfson Microelecronics WM8400 PMIC and audio
232	  CODEC.  This driver provides common support for accessing
233	  the device, additional drivers must be enabled in order to use
234	  the functionality of the device.
235
236config MFD_WM831X
237	bool "Support Wolfson Microelectronics WM831x/2x PMICs"
238	select MFD_CORE
239	depends on I2C=y && GENERIC_HARDIRQS
240	help
241	  Support for the Wolfson Microelecronics WM831x and WM832x PMICs.
242	  This driver provides common support for accessing the device,
243	  additional drivers must be enabled in order to use the
244	  functionality of the device.
245
246config MFD_WM8350
247	bool
248	depends on GENERIC_HARDIRQS
249
250config MFD_WM8350_CONFIG_MODE_0
251	bool
252	depends on MFD_WM8350
253
254config MFD_WM8350_CONFIG_MODE_1
255	bool
256	depends on MFD_WM8350
257
258config MFD_WM8350_CONFIG_MODE_2
259	bool
260	depends on MFD_WM8350
261
262config MFD_WM8350_CONFIG_MODE_3
263	bool
264	depends on MFD_WM8350
265
266config MFD_WM8351_CONFIG_MODE_0
267	bool
268	depends on MFD_WM8350
269
270config MFD_WM8351_CONFIG_MODE_1
271	bool
272	depends on MFD_WM8350
273
274config MFD_WM8351_CONFIG_MODE_2
275	bool
276	depends on MFD_WM8350
277
278config MFD_WM8351_CONFIG_MODE_3
279	bool
280	depends on MFD_WM8350
281
282config MFD_WM8352_CONFIG_MODE_0
283	bool
284	depends on MFD_WM8350
285
286config MFD_WM8352_CONFIG_MODE_1
287	bool
288	depends on MFD_WM8350
289
290config MFD_WM8352_CONFIG_MODE_2
291	bool
292	depends on MFD_WM8350
293
294config MFD_WM8352_CONFIG_MODE_3
295	bool
296	depends on MFD_WM8350
297
298config MFD_WM8350_I2C
299	bool "Support Wolfson Microelectronics WM8350 with I2C"
300	select MFD_WM8350
301	depends on I2C=y && GENERIC_HARDIRQS
302	help
303	  The WM8350 is an integrated audio and power management
304	  subsystem with watchdog and RTC functionality for embedded
305	  systems.  This option enables core support for the WM8350 with
306	  I2C as the control interface.  Additional options must be
307	  selected to enable support for the functionality of the chip.
308
309config MFD_WM8994
310	bool "Support Wolfson Microelectronics WM8994"
311	select MFD_CORE
312	depends on I2C=y && GENERIC_HARDIRQS
313	help
314	  The WM8994 is a highly integrated hi-fi CODEC designed for
315	  smartphone applicatiosn.  As well as audio functionality it
316	  has on board GPIO and regulator functionality which is
317	  supported via the relevant subsystems.  This driver provides
318	  core support for the WM8994, in order to use the actual
319	  functionaltiy of the device other drivers must be enabled.
320
321config MFD_PCF50633
322	tristate "Support for NXP PCF50633"
323	depends on I2C
324	help
325	  Say yes here if you have NXP PCF50633 chip on your board.
326	  This core driver provides register access and IRQ handling
327	  facilities, and registers devices for the various functions
328	  so that function-specific drivers can bind to them.
329
330config MFD_MC13783
331	tristate "Support Freescale MC13783"
332	depends on SPI_MASTER
333	select MFD_CORE
334	help
335	  Support for the Freescale (Atlas) MC13783 PMIC and audio CODEC.
336	  This driver provides common support for accessing  the device,
337	  additional drivers must be enabled in order to use the
338	  functionality of the device.
339
340config PCF50633_ADC
341	tristate "Support for NXP PCF50633 ADC"
342	depends on MFD_PCF50633
343	help
344	 Say yes here if you want to include support for ADC in the
345	 NXP PCF50633 chip.
346
347config PCF50633_GPIO
348	tristate "Support for NXP PCF50633 GPIO"
349	depends on MFD_PCF50633
350	help
351	 Say yes here if you want to include support GPIO for pins on
352	 the PCF50633 chip.
353
354config AB3100_CORE
355	bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
356	depends on I2C=y
357	default y if ARCH_U300
358	help
359	  Select this to enable the AB3100 Mixed Signal IC core
360	  functionality. This connects to a AB3100 on the I2C bus
361	  and expose a number of symbols needed for dependent devices
362	  to read and write registers and subscribe to events from
363	  this multi-functional IC. This is needed to use other features
364	  of the AB3100 such as battery-backed RTC, charging control,
365	  LEDs, vibrator, system power and temperature, power management
366	  and ALSA sound.
367
368config AB3100_OTP
369	tristate "ST-Ericsson AB3100 OTP functions"
370	depends on AB3100_CORE
371	default y if AB3100_CORE
372	help
373	  Select this to enable the AB3100 Mixed Signal IC OTP (one-time
374	  programmable memory) support. This exposes a sysfs file to read
375	  out OTP values.
376
377config EZX_PCAP
378	bool "PCAP Support"
379	depends on GENERIC_HARDIRQS && SPI_MASTER
380	help
381	  This enables the PCAP ASIC present on EZX Phones. This is
382	  needed for MMC, TouchScreen, Sound, USB, etc..
383
384config AB4500_CORE
385	tristate "ST-Ericsson's AB4500 Mixed Signal Power management chip"
386	depends on SPI
387	help
388	  Select this option to enable access to AB4500 power management
389	  chip. This connects to U8500 on the SSP/SPI bus and exports
390	  read/write functions for the devices to get access to this chip.
391	  This chip embeds various other multimedia funtionalities as well.
392
393config MFD_TIMBERDALE
394	tristate "Support for the Timberdale FPGA"
395	select MFD_CORE
396	depends on PCI && GPIOLIB
397	---help---
398	This is the core driver for the timberdale FPGA. This device is a
399	multifunction device which exposes numerous platform devices.
400
401	The timberdale FPGA can be found on the Intel Atom development board
402	for in-vehicle infontainment, called Russellville.
403
404config LPC_SCH
405	tristate "Intel SCH LPC"
406	depends on PCI
407	select MFD_CORE
408	help
409	  LPC bridge function of the Intel SCH provides support for
410	  System Management Bus and General Purpose I/O.
411
412config MFD_RDC321X
413	tristate "Support for RDC-R321x southbridge"
414	select MFD_CORE
415	depends on PCI
416	help
417	  Say yes here if you want to have support for the RDC R-321x SoC
418	  southbridge which provides access to GPIOs and Watchdog using the
419	  southbridge PCI device configuration space.
420
421endmenu
422
423menu "Multimedia Capabilities Port drivers"
424	depends on ARCH_SA1100
425
426config MCP
427	tristate
428
429# Interface drivers
430config MCP_SA11X0
431	tristate "Support SA11x0 MCP interface"
432	depends on ARCH_SA1100
433	select MCP
434
435# Chip drivers
436config MCP_UCB1200
437	tristate "Support for UCB1200 / UCB1300"
438	depends on MCP
439
440config MCP_UCB1200_TS
441	tristate "Touchscreen interface support"
442	depends on MCP_UCB1200 && INPUT
443
444endmenu
445