blob: 3c6a9860dd9c2945d5722afe21e057efbbfc21e7 [file] [log] [blame]
Russell Kinga4e137a2005-08-18 10:06:59 +01001#
2# Multifunction miscellaneous devices
3#
4
Ben Dooksb6d64542007-02-20 13:58:01 -08005menu "Multifunction device drivers"
Martin Schwidefskye25df122007-05-10 15:45:57 +02006 depends on HAS_IOMEM
Ben Dooksb6d64542007-02-20 13:58:01 -08007
Dmitry Baryshkovaa613de2008-06-27 10:37:19 +01008config MFD_CORE
9 tristate
10 default n
11
Haojian Zhuang2cc50be2010-01-06 17:07:13 -050012config MFD_88PM860X
13 bool "Support Marvell 88PM8606/88PM8607"
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +010014 depends on I2C=y && GENERIC_HARDIRQS
Haojian Zhuang2cc50be2010-01-06 17:07:13 -050015 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
Ben Dooksb6d64542007-02-20 13:58:01 -080022config 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
Matt LaPlante01dd2fb2007-10-20 01:34:40 +020027 provide numerous interfaces including USB host controller, USB gadget,
28 asynchronous serial ports, audio functions, and a dual display video
Ben Dooksb6d64542007-02-20 13:58:01 -080029 interface. The device may be connected by PCI or local bus with
30 varying functions enabled.
31
Ben Dooksf61be272008-07-25 01:45:59 -070032config MFD_SM501_GPIO
33 bool "Export GPIO via GPIO layer"
Samuel Ortiz2eedd602008-09-25 00:39:05 +020034 depends on MFD_SM501 && GPIOLIB
Ben Dooksf61be272008-07-25 01:45:59 -070035 ---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
Samuel Ortizfa9ff4b2008-02-07 00:14:49 -080040config MFD_ASIC3
41 bool "Support for Compaq ASIC3"
Samuel Ortiz2eedd602008-09-25 00:39:05 +020042 depends on GENERIC_HARDIRQS && GPIOLIB && ARM
Philipp Zabel9461f652009-06-15 12:10:24 +020043 select MFD_CORE
Samuel Ortizfa9ff4b2008-02-07 00:14:49 -080044 ---help---
45 This driver supports the ASIC3 multifunction chip found on many
46 PDAs (mainly iPAQ and HTC based ones)
47
Magnus Damma87d5632009-10-02 02:22:09 +000048config MFD_SH_MOBILE_SDHI
49 bool "Support for SuperH Mobile SDHI"
Magnus Damm3d8ca8c2010-02-22 13:40:59 +090050 depends on SUPERH || ARCH_SHMOBILE
Magnus Damma87d5632009-10-02 02:22:09 +000051 select MFD_CORE
Guennadi Liakhovetski311f3ac2010-05-19 18:34:22 +000052 select TMIO_MMC_DMA
Magnus Damma87d5632009-10-02 02:22:09 +000053 ---help---
54 This driver supports the SDHI hardware block found in many
55 SuperH Mobile SoCs.
56
Miguel Aguilarca263082010-03-11 09:32:21 -060057config MFD_DAVINCI_VOICECODEC
58 tristate
59 select MFD_CORE
60
David Brownell0931a4c2008-12-22 12:05:27 +010061config 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
Philipp Zabela1635b82008-04-09 19:20:34 +010069config HTC_EGPIO
70 bool "HTC EGPIO support"
Michael Buesch7444a722008-07-25 01:46:11 -070071 depends on GENERIC_HARDIRQS && GPIOLIB && ARM
Philipp Zabela1635b82008-04-09 19:20:34 +010072 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
Philipp Zabel5dc33392008-04-12 13:25:41 +010077config HTC_PASIC3
78 tristate "HTC PASIC3 LED/DS1WM chip support"
Philipp Zabel0254a8f2009-02-17 10:06:45 +010079 select MFD_CORE
Philipp Zabel5dc33392008-04-12 13:25:41 +010080 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
Cory Maccarrone6048a3d2010-01-19 11:22:45 +010086config HTC_I2CPLD
87 bool "HTC I2C PLD chip support"
Randy Dunlapbef3e202010-01-20 19:55:34 -080088 depends on I2C=y && GPIOLIB
Cory Maccarrone6048a3d2010-01-19 11:22:45 +010089 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
Marek Vašutd9105c22008-08-03 21:34:08 +010095config UCB1400_CORE
96 tristate "Philips UCB1400 Core driver"
Randy Dunlape4831802008-10-15 13:29:07 +020097 depends on AC97_BUS
Andrew Morton5a49a542008-10-15 13:30:47 +020098 depends on GPIOLIB
Marek Vašutd9105c22008-08-03 21:34:08 +010099 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
David Brownell87c13492008-12-22 12:16:27 +0100106config 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
David Brownell88e75cc2008-12-22 12:18:02 +0100119config MENELAUS
120 bool "Texas Instruments TWL92330/Menelaus PM chip"
Tony Lindgren088ef952010-02-12 12:26:47 -0800121 depends on I2C=y && ARCH_OMAP2
David Brownell88e75cc2008-12-22 12:18:02 +0100122 help
123 If you say yes here you get support for the Texas Instruments
124 TWL92330/Menelaus Power Management chip. This include voltage
Matt LaPlante692105b2009-01-26 11:12:25 +0100125 regulators, Dual slot memory card transceivers, real-time clock
David Brownell88e75cc2008-12-22 12:18:02 +0100126 and other features that are often used in portable devices like
127 cell phones and PDAs.
128
David Brownella603a7f2008-10-15 12:15:39 +0200129config TWL4030_CORE
Balaji T Ke8deb282009-12-14 00:25:31 +0100130 bool "Texas Instruments TWL4030/TWL5030/TWL6030/TPS659x0 Support"
David Brownell67460a72008-12-01 00:35:33 +0100131 depends on I2C=y && GENERIC_HARDIRQS
David Brownella603a7f2008-10-15 12:15:39 +0200132 help
Balaji T Ke8deb282009-12-14 00:25:31 +0100133 Say yes here if you have TWL4030 / TWL6030 family chip on your board.
David Brownella603a7f2008-10-15 12:15:39 +0200134 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
Amit Kucheriaebf0bd32009-08-31 18:32:18 +0200143config 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
Peter Ujfalusi0b83dde2009-10-22 13:26:45 +0300156config TWL4030_CODEC
157 bool
158 depends on TWL4030_CORE
159 select MFD_CORE
160 default n
161
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200162config MFD_TMIO
163 bool
164 default n
165
Guennadi Liakhovetski311f3ac2010-05-19 18:34:22 +0000166config TMIO_MMC_DMA
167 bool
168 select DMA_ENGINE
169 select DMADEVICES
170
Ian Molton1f192012008-07-15 15:09:43 +0100171config MFD_T7L66XB
172 bool "Support Toshiba T7L66XB"
Al Viro9ca68232008-11-01 18:19:59 +0000173 depends on ARM && HAVE_CLK
Ian Molton1f192012008-07-15 15:09:43 +0100174 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200175 select MFD_TMIO
Ian Molton1f192012008-07-15 15:09:43 +0100176 help
177 Support for Toshiba Mobile IO Controller T7L66XB
178
Ian Moltoncbdfb422008-07-15 15:12:52 +0100179config MFD_TC6387XB
180 bool "Support Toshiba TC6387XB"
Al Viro9ca68232008-11-01 18:19:59 +0000181 depends on ARM && HAVE_CLK
Ian Moltoncbdfb422008-07-15 15:12:52 +0100182 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200183 select MFD_TMIO
Ian Moltoncbdfb422008-07-15 15:12:52 +0100184 help
185 Support for Toshiba Mobile IO Controller TC6387XB
186
Dmitry Baryshkovd6315942008-06-22 12:01:58 +0100187config MFD_TC6393XB
188 bool "Support Toshiba TC6393XB"
Adrian Bunk8d25b362008-07-26 02:38:00 +0300189 depends on GPIOLIB && ARM
Dmitry Baryshkovf024ff12008-06-27 10:37:57 +0100190 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200191 select MFD_TMIO
Dmitry Baryshkovd6315942008-06-22 12:01:58 +0100192 help
193 Support for Toshiba Mobile IO Controller TC6393XB
194
Samuel Ortiz8e2eaab2008-10-24 17:10:05 +0200195config 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
Michael Hennericha5736e02009-10-12 17:22:38 +0200206config 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
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100216config MFD_MAX8925
Haojian Zhuang1f1cf8f2010-02-05 16:07:54 +0100217 bool "Maxim Semiconductor MAX8925 PMIC Support"
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100218 depends on I2C=y && GENERIC_HARDIRQS
Haojian Zhuang1ad99892010-01-08 12:43:29 -0500219 select MFD_CORE
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100220 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
Mark Brown1d9f9f02008-09-10 18:58:42 +0100226config MFD_WM8400
227 tristate "Support Wolfson Microelectronics WM8400"
Mark Brownb8380c12008-12-18 10:54:22 +0100228 select MFD_CORE
Mark Brown9c366452008-10-24 17:16:11 +0200229 depends on I2C
Mark Brown1d9f9f02008-09-10 18:58:42 +0100230 help
231 Support for the Wolfson Microelecronics WM8400 PMIC and audio
Mark Brown9e5aca52009-05-29 11:34:18 +0100232 CODEC. This driver provides common support for accessing
Mark Brown1d9f9f02008-09-10 18:58:42 +0100233 the device, additional drivers must be enabled in order to use
234 the functionality of the device.
235
Mark Brownb11062b2009-07-27 14:45:58 +0100236config MFD_WM831X
Mark Brown6e401732009-11-23 13:42:34 +0000237 bool "Support Wolfson Microelectronics WM831x/2x PMICs"
Mark Brownb11062b2009-07-27 14:45:58 +0100238 select MFD_CORE
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100239 depends on I2C=y && GENERIC_HARDIRQS
Mark Brownb11062b2009-07-27 14:45:58 +0100240 help
Mark Brownd4e0a892009-10-01 15:41:07 +0100241 Support for the Wolfson Microelecronics WM831x and WM832x PMICs.
242 This driver provides common support for accessing the device,
Mark Brownb11062b2009-07-27 14:45:58 +0100243 additional drivers must be enabled in order to use the
244 functionality of the device.
245
Mark Brown89b40122008-10-10 15:58:10 +0100246config MFD_WM8350
Mark Brownecf926b2010-01-05 20:40:47 +0000247 bool
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100248 depends on GENERIC_HARDIRQS
Mark Brown89b40122008-10-10 15:58:10 +0100249
250config MFD_WM8350_CONFIG_MODE_0
251 bool
252 depends on MFD_WM8350
253
254config MFD_WM8350_CONFIG_MODE_1
255 bool
256 depends on MFD_WM8350
257
258config MFD_WM8350_CONFIG_MODE_2
259 bool
260 depends on MFD_WM8350
261
262config MFD_WM8350_CONFIG_MODE_3
263 bool
264 depends on MFD_WM8350
265
Mark Brownca23f8c2008-12-18 23:12:28 +0100266config MFD_WM8351_CONFIG_MODE_0
267 bool
268 depends on MFD_WM8350
269
270config MFD_WM8351_CONFIG_MODE_1
271 bool
272 depends on MFD_WM8350
273
274config MFD_WM8351_CONFIG_MODE_2
275 bool
276 depends on MFD_WM8350
277
278config MFD_WM8351_CONFIG_MODE_3
279 bool
280 depends on MFD_WM8350
281
Mark Brown96920632008-12-18 23:09:50 +0100282config MFD_WM8352_CONFIG_MODE_0
283 bool
284 depends on MFD_WM8350
285
286config MFD_WM8352_CONFIG_MODE_1
287 bool
288 depends on MFD_WM8350
289
290config MFD_WM8352_CONFIG_MODE_2
291 bool
292 depends on MFD_WM8350
293
294config MFD_WM8352_CONFIG_MODE_3
295 bool
296 depends on MFD_WM8350
297
Mark Brownc661a0b2008-10-10 15:58:11 +0100298config MFD_WM8350_I2C
Mark Brownecf926b2010-01-05 20:40:47 +0000299 bool "Support Wolfson Microelectronics WM8350 with I2C"
Mark Brownc661a0b2008-10-10 15:58:11 +0100300 select MFD_WM8350
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100301 depends on I2C=y && GENERIC_HARDIRQS
Mark Brownc661a0b2008-10-10 15:58:11 +0100302 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
Mark Brown9e501082010-01-29 18:20:29 +0000309config MFD_WM8994
Mark Brownc9fbf7e2010-03-26 16:49:15 +0000310 bool "Support Wolfson Microelectronics WM8994"
Mark Brown9e501082010-01-29 18:20:29 +0000311 select MFD_CORE
Mark Brownc9fbf7e2010-03-26 16:49:15 +0000312 depends on I2C=y && GENERIC_HARDIRQS
Mark Brown9e501082010-01-29 18:20:29 +0000313 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
Balaji Raof52046b2009-01-09 01:49:01 +0100321config 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
Sascha Hauer8238add2009-08-19 01:40:28 +0200330config 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
Balaji Rao08c3e062009-01-09 01:49:26 +0100340config 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
Balaji Rao6a3d1192009-01-09 01:49:37 +0100347config 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
Linus Walleij14fa5692009-05-21 23:17:06 +0200354config AB3100_CORE
Linus Walleij2071db42010-01-19 11:41:52 +0100355 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
356 depends on I2C=y
Linus Walleij14fa5692009-05-21 23:17:06 +0200357 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
Linus Walleij12992dd2009-08-18 22:52:26 +0200368config 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
Daniel Ribeiro13a09f92009-05-28 15:43:37 -0300377config 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
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200384config AB4500_CORE
385 tristate "ST-Ericsson's AB4500 Mixed Signal Power management chip"
386 depends on SPI
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200387 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
Richard Röjfors8edbede2010-02-04 08:18:52 -0300393config MFD_TIMBERDALE
394 tristate "Support for the Timberdale FPGA"
395 select MFD_CORE
Randy Dunlap546e29b62010-02-12 12:30:55 -0300396 depends on PCI && GPIOLIB
Richard Röjfors8edbede2010-02-04 08:18:52 -0300397 ---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.
Denis Turischeve82c60a2010-02-19 11:26:25 +0100403
404config 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
Ben Dooksb6d64542007-02-20 13:58:01 -0800412endmenu
413
Russell Kinga4e137a2005-08-18 10:06:59 +0100414menu "Multimedia Capabilities Port drivers"
Adrian Bunkf751d502006-03-24 03:18:21 -0800415 depends on ARCH_SA1100
Russell Kinga4e137a2005-08-18 10:06:59 +0100416
417config MCP
418 tristate
419
Russell King5e742ad2005-08-18 10:08:15 +0100420# Interface drivers
421config MCP_SA11X0
422 tristate "Support SA11x0 MCP interface"
423 depends on ARCH_SA1100
424 select MCP
425
Russell King05c45ca2005-09-11 10:26:31 +0100426# Chip drivers
427config MCP_UCB1200
428 tristate "Support for UCB1200 / UCB1300"
429 depends on MCP
430
Russell Kingacb45432005-09-11 10:26:57 +0100431config MCP_UCB1200_TS
432 tristate "Touchscreen interface support"
433 depends on MCP_UCB1200 && INPUT
434
Russell Kinga4e137a2005-08-18 10:06:59 +0100435endmenu