mfd: Add initial WM8994 support
[linux-2.6.git] / drivers / mfd / Kconfig
1 #
2 # Multifunction miscellaneous devices
3 #
4
5 menu "Multifunction device drivers"
6         depends on HAS_IOMEM
7
8 config MFD_CORE
9         tristate
10         default n
11
12 config 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
22 config 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
32 config 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
40 config 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
48 config MFD_SH_MOBILE_SDHI
49         bool "Support for SuperH Mobile SDHI"
50         depends on SUPERH
51         select MFD_CORE
52          ---help---
53           This driver supports the SDHI hardware block found in many
54           SuperH Mobile SoCs.
55
56 config 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
64 config 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
72 config 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
81 config 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
90 config 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
101 config 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
114 config 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
124 config 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
138 config 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
151 config TWL4030_CODEC
152         bool
153         depends on TWL4030_CORE
154         select MFD_CORE
155         default n
156
157 config MFD_TMIO
158         bool
159         default n
160
161 config 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
169 config 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
177 config 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
185 config 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
196 config 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
206 config MFD_MAX8925
207         tristate "Maxim Semiconductor MAX8925 PMIC Support"
208         depends on I2C
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
216 config 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
226 config 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
236 config MFD_WM8350
237         bool
238
239 config MFD_WM8350_CONFIG_MODE_0
240         bool
241         depends on MFD_WM8350
242
243 config MFD_WM8350_CONFIG_MODE_1
244         bool
245         depends on MFD_WM8350
246
247 config MFD_WM8350_CONFIG_MODE_2
248         bool
249         depends on MFD_WM8350
250
251 config MFD_WM8350_CONFIG_MODE_3
252         bool
253         depends on MFD_WM8350
254
255 config MFD_WM8351_CONFIG_MODE_0
256         bool
257         depends on MFD_WM8350
258
259 config MFD_WM8351_CONFIG_MODE_1
260         bool
261         depends on MFD_WM8350
262
263 config MFD_WM8351_CONFIG_MODE_2
264         bool
265         depends on MFD_WM8350
266
267 config MFD_WM8351_CONFIG_MODE_3
268         bool
269         depends on MFD_WM8350
270
271 config MFD_WM8352_CONFIG_MODE_0
272         bool
273         depends on MFD_WM8350
274
275 config MFD_WM8352_CONFIG_MODE_1
276         bool
277         depends on MFD_WM8350
278
279 config MFD_WM8352_CONFIG_MODE_2
280         bool
281         depends on MFD_WM8350
282
283 config MFD_WM8352_CONFIG_MODE_3
284         bool
285         depends on MFD_WM8350
286
287 config 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
298 config 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
310 config 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
319 config 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
329 config 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
336 config 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
343 config 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
357 config 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
366 config 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
373 config 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
382 config 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 endmenu
393
394 menu "Multimedia Capabilities Port drivers"
395         depends on ARCH_SA1100
396
397 config MCP
398         tristate
399
400 # Interface drivers
401 config MCP_SA11X0
402         tristate "Support SA11x0 MCP interface"
403         depends on ARCH_SA1100
404         select MCP
405
406 # Chip drivers
407 config MCP_UCB1200
408         tristate "Support for UCB1200 / UCB1300"
409         depends on MCP
410
411 config MCP_UCB1200_TS
412         tristate "Touchscreen interface support"
413         depends on MCP_UCB1200 && INPUT
414
415 endmenu