Merge branch 'drm-intel-next' of git://git.kernel.org/pub/scm/linux/kernel/git/anholt...
[pandora-kernel.git] / drivers / mfd / Kconfig
1 #
2 # Multifunction miscellaneous devices
3 #
4
5 menuconfig MFD_SUPPORT
6         bool "Multifunction device drivers"
7         depends on HAS_IOMEM
8         default y
9         help
10           Configure MFD device drivers.
11
12 if MFD_SUPPORT
13
14 config MFD_CORE
15         tristate
16         default n
17
18 config MFD_88PM860X
19         bool "Support Marvell 88PM8606/88PM8607"
20         depends on I2C=y && GENERIC_HARDIRQS
21         select MFD_CORE
22         help
23           This supports for Marvell 88PM8606/88PM8607 Power Management IC.
24           This includes the I2C driver and the core APIs _only_, you have to
25           select individual components like voltage regulators, RTC and
26           battery-charger under the corresponding menus.
27
28 config MFD_SM501
29         tristate "Support for Silicon Motion SM501"
30          ---help---
31           This is the core driver for the Silicon Motion SM501 multimedia
32           companion chip. This device is a multifunction device which may
33           provide numerous interfaces including USB host controller, USB gadget,
34           asynchronous serial ports, audio functions, and a dual display video
35           interface. The device may be connected by PCI or local bus with
36           varying functions enabled.
37
38 config MFD_SM501_GPIO
39         bool "Export GPIO via GPIO layer"
40         depends on MFD_SM501 && GPIOLIB
41          ---help---
42          This option uses the gpio library layer to export the 64 GPIO
43          lines on the SM501. The platform data is used to supply the
44          base number for the first GPIO line to register.
45
46 config MFD_ASIC3
47         bool "Support for Compaq ASIC3"
48         depends on GENERIC_HARDIRQS && GPIOLIB && ARM
49         select MFD_CORE
50          ---help---
51           This driver supports the ASIC3 multifunction chip found on many
52           PDAs (mainly iPAQ and HTC based ones)
53
54 config MFD_SH_MOBILE_SDHI
55         bool "Support for SuperH Mobile SDHI"
56         depends on SUPERH || ARCH_SHMOBILE
57         select MFD_CORE
58         select TMIO_MMC_DMA
59          ---help---
60           This driver supports the SDHI hardware block found in many
61           SuperH Mobile SoCs.
62
63 config MFD_DAVINCI_VOICECODEC
64         tristate
65         select MFD_CORE
66
67 config MFD_DM355EVM_MSP
68         bool "DaVinci DM355 EVM microcontroller"
69         depends on I2C && MACH_DAVINCI_DM355_EVM
70         help
71           This driver supports the MSP430 microcontroller used on these
72           boards.  MSP430 firmware manages resets and power sequencing,
73           inputs from buttons and the IR remote, LEDs, an RTC, and more.
74
75 config HTC_EGPIO
76         bool "HTC EGPIO support"
77         depends on GENERIC_HARDIRQS && GPIOLIB && ARM
78         help
79             This driver supports the CPLD egpio chip present on
80             several HTC phones.  It provides basic support for input
81             pins, output pins, and irqs.
82
83 config HTC_PASIC3
84         tristate "HTC PASIC3 LED/DS1WM chip support"
85         select MFD_CORE
86         help
87           This core driver provides register access for the LED/DS1WM
88           chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
89           HTC Magician devices, respectively. Actual functionality is
90           handled by the leds-pasic3 and ds1wm drivers.
91
92 config HTC_I2CPLD
93         bool "HTC I2C PLD chip support"
94         depends on I2C=y && GPIOLIB
95         help
96           If you say yes here you get support for the supposed CPLD
97           found on omap850 HTC devices like the HTC Wizard and HTC Herald.
98           This device provides input and output GPIOs through an I2C
99           interface to one or more sub-chips.
100
101 config UCB1400_CORE
102         tristate "Philips UCB1400 Core driver"
103         depends on AC97_BUS
104         depends on GPIOLIB
105         help
106           This enables support for the Philips UCB1400 core functions.
107           The UCB1400 is an AC97 audio codec.
108
109           To compile this driver as a module, choose M here: the
110           module will be called ucb1400_core.
111
112 config TPS65010
113         tristate "TPS6501x Power Management chips"
114         depends on I2C && GPIOLIB
115         default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
116         help
117           If you say yes here you get support for the TPS6501x series of
118           Power Management chips.  These include voltage regulators,
119           lithium ion/polymer battery charging, and other features that
120           are often used in portable devices like cell phones and cameras.
121
122           This driver can also be built as a module.  If so, the module
123           will be called tps65010.
124
125 config TPS6507X
126         tristate "TPS6507x Power Management / Touch Screen chips"
127         select MFD_CORE
128         depends on I2C
129         help
130           If you say yes here you get support for the TPS6507x series of
131           Power Management / Touch Screen chips.  These include voltage
132           regulators, lithium ion/polymer battery charging, touch screen
133           and other features that are often used in portable devices.
134           This driver can also be built as a module.  If so, the module
135           will be called tps6507x.
136
137 config MENELAUS
138         bool "Texas Instruments TWL92330/Menelaus PM chip"
139         depends on I2C=y && ARCH_OMAP2
140         help
141           If you say yes here you get support for the Texas Instruments
142           TWL92330/Menelaus Power Management chip. This include voltage
143           regulators, Dual slot memory card transceivers, real-time clock
144           and other features that are often used in portable devices like
145           cell phones and PDAs.
146
147 config TWL4030_CORE
148         bool "Texas Instruments TWL4030/TWL5030/TWL6030/TPS659x0 Support"
149         depends on I2C=y && GENERIC_HARDIRQS
150         help
151           Say yes here if you have TWL4030 / TWL6030 family chip on your board.
152           This core driver provides register access and IRQ handling
153           facilities, and registers devices for the various functions
154           so that function-specific drivers can bind to them.
155
156           These multi-function chips are found on many OMAP2 and OMAP3
157           boards, providing power management, RTC, GPIO, keypad, a
158           high speed USB OTG transceiver, an audio codec (on most
159           versions) and many other features.
160
161 config TWL4030_POWER
162         bool "Support power resources on TWL4030 family chips"
163         depends on TWL4030_CORE && ARM
164         help
165           Say yes here if you want to use the power resources on the
166           TWL4030 family chips.  Most of these resources are regulators,
167           which have a separate driver; some are control signals, such
168           as clock request handshaking.
169
170           This driver uses board-specific data to initialize the resources
171           and load scripts controling which resources are switched off/on
172           or reset when a sleep, wakeup or warm reset event occurs.
173
174 config TWL4030_CODEC
175         bool
176         depends on TWL4030_CORE
177         select MFD_CORE
178         default n
179
180 config MFD_TC35892
181         bool "Support Toshiba TC35892"
182         depends on I2C=y && GENERIC_HARDIRQS
183         select MFD_CORE
184         help
185           Support for the Toshiba TC35892 I/O Expander.
186
187           This driver provides common support for accessing the device,
188           additional drivers must be enabled in order to use the
189           functionality of the device.
190
191 config MFD_TMIO
192         bool
193         default n
194
195 config TMIO_MMC_DMA
196         bool
197         select DMA_ENGINE
198         select DMADEVICES
199
200 config MFD_T7L66XB
201         bool "Support Toshiba T7L66XB"
202         depends on ARM && HAVE_CLK
203         select MFD_CORE
204         select MFD_TMIO
205         help
206           Support for Toshiba Mobile IO Controller T7L66XB
207
208 config MFD_TC6387XB
209         bool "Support Toshiba TC6387XB"
210         depends on ARM && HAVE_CLK
211         select MFD_CORE
212         select MFD_TMIO
213         help
214           Support for Toshiba Mobile IO Controller TC6387XB
215
216 config MFD_TC6393XB
217         bool "Support Toshiba TC6393XB"
218         depends on GPIOLIB && ARM
219         select MFD_CORE
220         select MFD_TMIO
221         help
222           Support for Toshiba Mobile IO Controller TC6393XB
223
224 config PMIC_DA903X
225         bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
226         depends on I2C=y
227         help
228           Say yes here to support for Dialog Semiconductor DA9030 (a.k.a
229           ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
230           usually found on PXA processors-based platforms. This includes
231           the I2C driver and the core APIs _only_, you have to select
232           individual components like LCD backlight, voltage regulators,
233           LEDs and battery-charger under the corresponding menus.
234
235 config PMIC_ADP5520
236         bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
237         depends on I2C=y
238         help
239           Say yes here to add support for Analog Devices AD5520 and ADP5501,
240           Multifunction Power Management IC. This includes
241           the I2C driver and the core APIs _only_, you have to select
242           individual components like LCD backlight, LEDs, GPIOs and Kepad
243           under the corresponding menus.
244
245 config MFD_MAX8925
246         bool "Maxim Semiconductor MAX8925 PMIC Support"
247         depends on I2C=y && GENERIC_HARDIRQS
248         select MFD_CORE
249         help
250           Say yes here to support for Maxim Semiconductor MAX8925. This is
251           a Power Management IC. This driver provies common support for
252           accessing the device, additional drivers must be enabled in order
253           to use the functionality of the device.
254
255 config MFD_WM8400
256         tristate "Support Wolfson Microelectronics WM8400"
257         select MFD_CORE
258         depends on I2C
259         help
260           Support for the Wolfson Microelecronics WM8400 PMIC and audio
261           CODEC.  This driver provides common support for accessing
262           the device, additional drivers must be enabled in order to use
263           the functionality of the device.
264
265 config MFD_WM831X
266         bool "Support Wolfson Microelectronics WM831x/2x PMICs"
267         select MFD_CORE
268         depends on I2C=y && GENERIC_HARDIRQS
269         help
270           Support for the Wolfson Microelecronics WM831x and WM832x PMICs.
271           This driver provides common support for accessing the device,
272           additional drivers must be enabled in order to use the
273           functionality of the device.
274
275 config MFD_WM8350
276         bool
277         depends on GENERIC_HARDIRQS
278
279 config MFD_WM8350_CONFIG_MODE_0
280         bool
281         depends on MFD_WM8350
282
283 config MFD_WM8350_CONFIG_MODE_1
284         bool
285         depends on MFD_WM8350
286
287 config MFD_WM8350_CONFIG_MODE_2
288         bool
289         depends on MFD_WM8350
290
291 config MFD_WM8350_CONFIG_MODE_3
292         bool
293         depends on MFD_WM8350
294
295 config MFD_WM8351_CONFIG_MODE_0
296         bool
297         depends on MFD_WM8350
298
299 config MFD_WM8351_CONFIG_MODE_1
300         bool
301         depends on MFD_WM8350
302
303 config MFD_WM8351_CONFIG_MODE_2
304         bool
305         depends on MFD_WM8350
306
307 config MFD_WM8351_CONFIG_MODE_3
308         bool
309         depends on MFD_WM8350
310
311 config MFD_WM8352_CONFIG_MODE_0
312         bool
313         depends on MFD_WM8350
314
315 config MFD_WM8352_CONFIG_MODE_1
316         bool
317         depends on MFD_WM8350
318
319 config MFD_WM8352_CONFIG_MODE_2
320         bool
321         depends on MFD_WM8350
322
323 config MFD_WM8352_CONFIG_MODE_3
324         bool
325         depends on MFD_WM8350
326
327 config MFD_WM8350_I2C
328         bool "Support Wolfson Microelectronics WM8350 with I2C"
329         select MFD_WM8350
330         depends on I2C=y && GENERIC_HARDIRQS
331         help
332           The WM8350 is an integrated audio and power management
333           subsystem with watchdog and RTC functionality for embedded
334           systems.  This option enables core support for the WM8350 with
335           I2C as the control interface.  Additional options must be
336           selected to enable support for the functionality of the chip.
337
338 config MFD_WM8994
339         bool "Support Wolfson Microelectronics WM8994"
340         select MFD_CORE
341         depends on I2C=y && GENERIC_HARDIRQS
342         help
343           The WM8994 is a highly integrated hi-fi CODEC designed for
344           smartphone applicatiosn.  As well as audio functionality it
345           has on board GPIO and regulator functionality which is
346           supported via the relevant subsystems.  This driver provides
347           core support for the WM8994, in order to use the actual
348           functionaltiy of the device other drivers must be enabled.
349
350 config MFD_PCF50633
351         tristate "Support for NXP PCF50633"
352         depends on I2C
353         help
354           Say yes here if you have NXP PCF50633 chip on your board.
355           This core driver provides register access and IRQ handling
356           facilities, and registers devices for the various functions
357           so that function-specific drivers can bind to them.
358
359 config MFD_MC13783
360         tristate "Support Freescale MC13783"
361         depends on SPI_MASTER
362         select MFD_CORE
363         help
364           Support for the Freescale (Atlas) MC13783 PMIC and audio CODEC.
365           This driver provides common support for accessing  the device,
366           additional drivers must be enabled in order to use the
367           functionality of the device.
368
369 config PCF50633_ADC
370         tristate "Support for NXP PCF50633 ADC"
371         depends on MFD_PCF50633
372         help
373          Say yes here if you want to include support for ADC in the
374          NXP PCF50633 chip.
375
376 config PCF50633_GPIO
377         tristate "Support for NXP PCF50633 GPIO"
378         depends on MFD_PCF50633
379         help
380          Say yes here if you want to include support GPIO for pins on
381          the PCF50633 chip.
382
383 config ABX500_CORE
384         bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions"
385         default y if ARCH_U300
386         help
387           Say yes here if you have the ABX500 Mixed Signal IC family
388           chips. This core driver expose register access functions.
389           Functionality specific drivers using these functions can
390           remain unchanged when IC changes. Binding of the functions to
391           actual register access is done by the IC core driver.
392
393 config AB3100_CORE
394         bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
395         depends on I2C=y && ABX500_CORE
396         default y if ARCH_U300
397         help
398           Select this to enable the AB3100 Mixed Signal IC core
399           functionality. This connects to a AB3100 on the I2C bus
400           and expose a number of symbols needed for dependent devices
401           to read and write registers and subscribe to events from
402           this multi-functional IC. This is needed to use other features
403           of the AB3100 such as battery-backed RTC, charging control,
404           LEDs, vibrator, system power and temperature, power management
405           and ALSA sound.
406
407 config AB3100_OTP
408         tristate "ST-Ericsson AB3100 OTP functions"
409         depends on AB3100_CORE
410         default y if AB3100_CORE
411         help
412           Select this to enable the AB3100 Mixed Signal IC OTP (one-time
413           programmable memory) support. This exposes a sysfs file to read
414           out OTP values.
415
416 config EZX_PCAP
417         bool "PCAP Support"
418         depends on GENERIC_HARDIRQS && SPI_MASTER
419         help
420           This enables the PCAP ASIC present on EZX Phones. This is
421           needed for MMC, TouchScreen, Sound, USB, etc..
422
423 config AB8500_CORE
424         bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
425         depends on SPI=y && GENERIC_HARDIRQS
426         select MFD_CORE
427         help
428           Select this option to enable access to AB8500 power management
429           chip. This connects to U8500 on the SSP/SPI bus and exports
430           read/write functions for the devices to get access to this chip.
431           This chip embeds various other multimedia funtionalities as well.
432
433 config AB3550_CORE
434         bool "ST-Ericsson AB3550 Mixed Signal Circuit core functions"
435         select MFD_CORE
436         depends on I2C=y && GENERIC_HARDIRQS && ABX500_CORE
437         help
438           Select this to enable the AB3550 Mixed Signal IC core
439           functionality. This connects to a AB3550 on the I2C bus
440           and expose a number of symbols needed for dependent devices
441           to read and write registers and subscribe to events from
442           this multi-functional IC. This is needed to use other features
443           of the AB3550 such as battery-backed RTC, charging control,
444           LEDs, vibrator, system power and temperature, power management
445           and ALSA sound.
446
447 config MFD_TIMBERDALE
448         tristate "Support for the Timberdale FPGA"
449         select MFD_CORE
450         depends on PCI && GPIOLIB
451         ---help---
452         This is the core driver for the timberdale FPGA. This device is a
453         multifunction device which exposes numerous platform devices.
454
455         The timberdale FPGA can be found on the Intel Atom development board
456         for in-vehicle infontainment, called Russellville.
457
458 config LPC_SCH
459         tristate "Intel SCH LPC"
460         depends on PCI
461         select MFD_CORE
462         help
463           LPC bridge function of the Intel SCH provides support for
464           System Management Bus and General Purpose I/O.
465
466 config MFD_RDC321X
467         tristate "Support for RDC-R321x southbridge"
468         select MFD_CORE
469         depends on PCI
470         help
471           Say yes here if you want to have support for the RDC R-321x SoC
472           southbridge which provides access to GPIOs and Watchdog using the
473           southbridge PCI device configuration space.
474
475 config MFD_JANZ_CMODIO
476         tristate "Support for Janz CMOD-IO PCI MODULbus Carrier Board"
477         select MFD_CORE
478         depends on PCI
479         help
480           This is the core driver for the Janz CMOD-IO PCI MODULbus
481           carrier board. This device is a PCI to MODULbus bridge which may
482           host many different types of MODULbus daughterboards, including
483           CAN and GPIO controllers.
484
485 endif # MFD_SUPPORT
486
487 menu "Multimedia Capabilities Port drivers"
488         depends on ARCH_SA1100
489
490 config MCP
491         tristate
492
493 # Interface drivers
494 config MCP_SA11X0
495         tristate "Support SA11x0 MCP interface"
496         depends on ARCH_SA1100
497         select MCP
498
499 # Chip drivers
500 config MCP_UCB1200
501         tristate "Support for UCB1200 / UCB1300"
502         depends on MCP
503
504 config MCP_UCB1200_TS
505         tristate "Touchscreen interface support"
506         depends on MCP_UCB1200 && INPUT
507
508 endmenu