Merge remote branch 'origin' into secretlab/next-spi
[pandora-kernel.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 && 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
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 || 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
57 config MFD_DAVINCI_VOICECODEC
58         tristate
59         select MFD_CORE
60
61 config 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
69 config 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
77 config 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
86 config 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
95 config 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
106 config 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
119 config 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
129 config 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
143 config 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
156 config TWL4030_CODEC
157         bool
158         depends on TWL4030_CORE
159         select MFD_CORE
160         default n
161
162 config MFD_TMIO
163         bool
164         default n
165
166 config TMIO_MMC_DMA
167         bool
168         select DMA_ENGINE
169         select DMADEVICES
170
171 config 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
179 config 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
187 config 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
195 config 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
206 config 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
216 config 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
226 config 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
236 config 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
246 config MFD_WM8350
247         bool
248         depends on GENERIC_HARDIRQS
249
250 config MFD_WM8350_CONFIG_MODE_0
251         bool
252         depends on MFD_WM8350
253
254 config MFD_WM8350_CONFIG_MODE_1
255         bool
256         depends on MFD_WM8350
257
258 config MFD_WM8350_CONFIG_MODE_2
259         bool
260         depends on MFD_WM8350
261
262 config MFD_WM8350_CONFIG_MODE_3
263         bool
264         depends on MFD_WM8350
265
266 config MFD_WM8351_CONFIG_MODE_0
267         bool
268         depends on MFD_WM8350
269
270 config MFD_WM8351_CONFIG_MODE_1
271         bool
272         depends on MFD_WM8350
273
274 config MFD_WM8351_CONFIG_MODE_2
275         bool
276         depends on MFD_WM8350
277
278 config MFD_WM8351_CONFIG_MODE_3
279         bool
280         depends on MFD_WM8350
281
282 config MFD_WM8352_CONFIG_MODE_0
283         bool
284         depends on MFD_WM8350
285
286 config MFD_WM8352_CONFIG_MODE_1
287         bool
288         depends on MFD_WM8350
289
290 config MFD_WM8352_CONFIG_MODE_2
291         bool
292         depends on MFD_WM8350
293
294 config MFD_WM8352_CONFIG_MODE_3
295         bool
296         depends on MFD_WM8350
297
298 config 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
309 config 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
321 config 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
330 config 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
340 config 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
347 config 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
354 config 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
368 config 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
377 config 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
384 config 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
393 config 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
404 config 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
412 endmenu
413
414 menu "Multimedia Capabilities Port drivers"
415         depends on ARCH_SA1100
416
417 config MCP
418         tristate
419
420 # Interface drivers
421 config MCP_SA11X0
422         tristate "Support SA11x0 MCP interface"
423         depends on ARCH_SA1100
424         select MCP
425
426 # Chip drivers
427 config MCP_UCB1200
428         tristate "Support for UCB1200 / UCB1300"
429         depends on MCP
430
431 config MCP_UCB1200_TS
432         tristate "Touchscreen interface support"
433         depends on MCP_UCB1200 && INPUT
434
435 endmenu