2a5a0b78f84eacf4a203d2cc088cc9894772cc1d
[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          ---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         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
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 && 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
236 config MFD_WM8350
237         bool
238         depends on GENERIC_HARDIRQS
239
240 config MFD_WM8350_CONFIG_MODE_0
241         bool
242         depends on MFD_WM8350
243
244 config MFD_WM8350_CONFIG_MODE_1
245         bool
246         depends on MFD_WM8350
247
248 config MFD_WM8350_CONFIG_MODE_2
249         bool
250         depends on MFD_WM8350
251
252 config MFD_WM8350_CONFIG_MODE_3
253         bool
254         depends on MFD_WM8350
255
256 config MFD_WM8351_CONFIG_MODE_0
257         bool
258         depends on MFD_WM8350
259
260 config MFD_WM8351_CONFIG_MODE_1
261         bool
262         depends on MFD_WM8350
263
264 config MFD_WM8351_CONFIG_MODE_2
265         bool
266         depends on MFD_WM8350
267
268 config MFD_WM8351_CONFIG_MODE_3
269         bool
270         depends on MFD_WM8350
271
272 config MFD_WM8352_CONFIG_MODE_0
273         bool
274         depends on MFD_WM8350
275
276 config MFD_WM8352_CONFIG_MODE_1
277         bool
278         depends on MFD_WM8350
279
280 config MFD_WM8352_CONFIG_MODE_2
281         bool
282         depends on MFD_WM8350
283
284 config MFD_WM8352_CONFIG_MODE_3
285         bool
286         depends on MFD_WM8350
287
288 config 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
299 config 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
311 config 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
320 config 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
330 config 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
337 config 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
344 config 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
358 config 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
367 config 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
374 config 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
383 config 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
394 config 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
402 endmenu
403
404 menu "Multimedia Capabilities Port drivers"
405         depends on ARCH_SA1100
406
407 config MCP
408         tristate
409
410 # Interface drivers
411 config MCP_SA11X0
412         tristate "Support SA11x0 MCP interface"
413         depends on ARCH_SA1100
414         select MCP
415
416 # Chip drivers
417 config MCP_UCB1200
418         tristate "Support for UCB1200 / UCB1300"
419         depends on MCP
420
421 config MCP_UCB1200_TS
422         tristate "Touchscreen interface support"
423         depends on MCP_UCB1200 && INPUT
424
425 endmenu