xref: /openbmc/linux/drivers/mfd/Kconfig (revision 4dc7ccf7)
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	 ---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 && GENERIC_HARDIRQS
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 && GENERIC_HARDIRQS
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	depends on GENERIC_HARDIRQS
239
240config MFD_WM8350_CONFIG_MODE_0
241	bool
242	depends on MFD_WM8350
243
244config MFD_WM8350_CONFIG_MODE_1
245	bool
246	depends on MFD_WM8350
247
248config MFD_WM8350_CONFIG_MODE_2
249	bool
250	depends on MFD_WM8350
251
252config MFD_WM8350_CONFIG_MODE_3
253	bool
254	depends on MFD_WM8350
255
256config MFD_WM8351_CONFIG_MODE_0
257	bool
258	depends on MFD_WM8350
259
260config MFD_WM8351_CONFIG_MODE_1
261	bool
262	depends on MFD_WM8350
263
264config MFD_WM8351_CONFIG_MODE_2
265	bool
266	depends on MFD_WM8350
267
268config MFD_WM8351_CONFIG_MODE_3
269	bool
270	depends on MFD_WM8350
271
272config MFD_WM8352_CONFIG_MODE_0
273	bool
274	depends on MFD_WM8350
275
276config MFD_WM8352_CONFIG_MODE_1
277	bool
278	depends on MFD_WM8350
279
280config MFD_WM8352_CONFIG_MODE_2
281	bool
282	depends on MFD_WM8350
283
284config MFD_WM8352_CONFIG_MODE_3
285	bool
286	depends on MFD_WM8350
287
288config MFD_WM8350_I2C
289	bool "Support Wolfson Microelectronics WM8350 with I2C"
290	select MFD_WM8350
291	depends on I2C=y && GENERIC_HARDIRQS
292	help
293	  The WM8350 is an integrated audio and power management
294	  subsystem with watchdog and RTC functionality for embedded
295	  systems.  This option enables core support for the WM8350 with
296	  I2C as the control interface.  Additional options must be
297	  selected to enable support for the functionality of the chip.
298
299config MFD_WM8994
300	tristate "Support Wolfson Microelectronics WM8994"
301	select MFD_CORE
302	depends on I2C
303	help
304	  The WM8994 is a highly integrated hi-fi CODEC designed for
305	  smartphone applicatiosn.  As well as audio functionality it
306	  has on board GPIO and regulator functionality which is
307	  supported via the relevant subsystems.  This driver provides
308	  core support for the WM8994, in order to use the actual
309	  functionaltiy of the device other drivers must be enabled.
310
311config MFD_PCF50633
312	tristate "Support for NXP PCF50633"
313	depends on I2C
314	help
315	  Say yes here if you have NXP PCF50633 chip on your board.
316	  This core driver provides register access and IRQ handling
317	  facilities, and registers devices for the various functions
318	  so that function-specific drivers can bind to them.
319
320config MFD_MC13783
321	tristate "Support Freescale MC13783"
322	depends on SPI_MASTER
323	select MFD_CORE
324	help
325	  Support for the Freescale (Atlas) MC13783 PMIC and audio CODEC.
326	  This driver provides common support for accessing  the device,
327	  additional drivers must be enabled in order to use the
328	  functionality of the device.
329
330config PCF50633_ADC
331	tristate "Support for NXP PCF50633 ADC"
332	depends on MFD_PCF50633
333	help
334	 Say yes here if you want to include support for ADC in the
335	 NXP PCF50633 chip.
336
337config PCF50633_GPIO
338	tristate "Support for NXP PCF50633 GPIO"
339	depends on MFD_PCF50633
340	help
341	 Say yes here if you want to include support GPIO for pins on
342	 the PCF50633 chip.
343
344config AB3100_CORE
345	bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
346	depends on I2C=y
347	default y if ARCH_U300
348	help
349	  Select this to enable the AB3100 Mixed Signal IC core
350	  functionality. This connects to a AB3100 on the I2C bus
351	  and expose a number of symbols needed for dependent devices
352	  to read and write registers and subscribe to events from
353	  this multi-functional IC. This is needed to use other features
354	  of the AB3100 such as battery-backed RTC, charging control,
355	  LEDs, vibrator, system power and temperature, power management
356	  and ALSA sound.
357
358config AB3100_OTP
359	tristate "ST-Ericsson AB3100 OTP functions"
360	depends on AB3100_CORE
361	default y if AB3100_CORE
362	help
363	  Select this to enable the AB3100 Mixed Signal IC OTP (one-time
364	  programmable memory) support. This exposes a sysfs file to read
365	  out OTP values.
366
367config EZX_PCAP
368	bool "PCAP Support"
369	depends on GENERIC_HARDIRQS && SPI_MASTER
370	help
371	  This enables the PCAP ASIC present on EZX Phones. This is
372	  needed for MMC, TouchScreen, Sound, USB, etc..
373
374config AB4500_CORE
375	tristate "ST-Ericsson's AB4500 Mixed Signal Power management chip"
376	depends on SPI
377	help
378	  Select this option to enable access to AB4500 power management
379	  chip. This connects to U8500 on the SSP/SPI bus and exports
380	  read/write functions for the devices to get access to this chip.
381	  This chip embeds various other multimedia funtionalities as well.
382
383config MFD_TIMBERDALE
384	tristate "Support for the Timberdale FPGA"
385	select MFD_CORE
386	depends on PCI && GPIOLIB
387	---help---
388	This is the core driver for the timberdale FPGA. This device is a
389	multifunction device which exposes numerous platform devices.
390
391	The timberdale FPGA can be found on the Intel Atom development board
392	for in-vehicle infontainment, called Russellville.
393
394config LPC_SCH
395	tristate "Intel SCH LPC"
396	depends on PCI
397	select MFD_CORE
398	help
399	  LPC bridge function of the Intel SCH provides support for
400	  System Management Bus and General Purpose I/O.
401
402endmenu
403
404menu "Multimedia Capabilities Port drivers"
405	depends on ARCH_SA1100
406
407config MCP
408	tristate
409
410# Interface drivers
411config MCP_SA11X0
412	tristate "Support SA11x0 MCP interface"
413	depends on ARCH_SA1100
414	select MCP
415
416# Chip drivers
417config MCP_UCB1200
418	tristate "Support for UCB1200 / UCB1300"
419	depends on MCP
420
421config MCP_UCB1200_TS
422	tristate "Touchscreen interface support"
423	depends on MCP_UCB1200 && INPUT
424
425endmenu
426