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