blob: de3e74cde51c425625b56e16a40db92ee14b91dd [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
52 ---help---
53 This driver supports the SDHI hardware block found in many
54 SuperH Mobile SoCs.
55
Miguel Aguilarca263082010-03-11 09:32:21 -060056config MFD_DAVINCI_VOICECODEC
57 tristate
58 select MFD_CORE
59
David Brownell0931a4c2008-12-22 12:05:27 +010060config MFD_DM355EVM_MSP
61 bool "DaVinci DM355 EVM microcontroller"
62 depends on I2C && MACH_DAVINCI_DM355_EVM
63 help
64 This driver supports the MSP430 microcontroller used on these
65 boards. MSP430 firmware manages resets and power sequencing,
66 inputs from buttons and the IR remote, LEDs, an RTC, and more.
67
Philipp Zabela1635b82008-04-09 19:20:34 +010068config HTC_EGPIO
69 bool "HTC EGPIO support"
Michael Buesch7444a722008-07-25 01:46:11 -070070 depends on GENERIC_HARDIRQS && GPIOLIB && ARM
Philipp Zabela1635b82008-04-09 19:20:34 +010071 help
72 This driver supports the CPLD egpio chip present on
73 several HTC phones. It provides basic support for input
74 pins, output pins, and irqs.
75
Philipp Zabel5dc33392008-04-12 13:25:41 +010076config HTC_PASIC3
77 tristate "HTC PASIC3 LED/DS1WM chip support"
Philipp Zabel0254a8f2009-02-17 10:06:45 +010078 select MFD_CORE
Philipp Zabel5dc33392008-04-12 13:25:41 +010079 help
80 This core driver provides register access for the LED/DS1WM
81 chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
82 HTC Magician devices, respectively. Actual functionality is
83 handled by the leds-pasic3 and ds1wm drivers.
84
Cory Maccarrone6048a3d2010-01-19 11:22:45 +010085config HTC_I2CPLD
86 bool "HTC I2C PLD chip support"
Randy Dunlapbef3e202010-01-20 19:55:34 -080087 depends on I2C=y && GPIOLIB
Cory Maccarrone6048a3d2010-01-19 11:22:45 +010088 help
89 If you say yes here you get support for the supposed CPLD
90 found on omap850 HTC devices like the HTC Wizard and HTC Herald.
91 This device provides input and output GPIOs through an I2C
92 interface to one or more sub-chips.
93
Marek Vašutd9105c22008-08-03 21:34:08 +010094config UCB1400_CORE
95 tristate "Philips UCB1400 Core driver"
Randy Dunlape4831802008-10-15 13:29:07 +020096 depends on AC97_BUS
Andrew Morton5a49a542008-10-15 13:30:47 +020097 depends on GPIOLIB
Marek Vašutd9105c22008-08-03 21:34:08 +010098 help
99 This enables support for the Philips UCB1400 core functions.
100 The UCB1400 is an AC97 audio codec.
101
102 To compile this driver as a module, choose M here: the
103 module will be called ucb1400_core.
104
David Brownell87c13492008-12-22 12:16:27 +0100105config TPS65010
106 tristate "TPS6501x Power Management chips"
107 depends on I2C && GPIOLIB
108 default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
109 help
110 If you say yes here you get support for the TPS6501x series of
111 Power Management chips. These include voltage regulators,
112 lithium ion/polymer battery charging, and other features that
113 are often used in portable devices like cell phones and cameras.
114
115 This driver can also be built as a module. If so, the module
116 will be called tps65010.
117
David Brownell88e75cc2008-12-22 12:18:02 +0100118config MENELAUS
119 bool "Texas Instruments TWL92330/Menelaus PM chip"
Tony Lindgren088ef952010-02-12 12:26:47 -0800120 depends on I2C=y && ARCH_OMAP2
David Brownell88e75cc2008-12-22 12:18:02 +0100121 help
122 If you say yes here you get support for the Texas Instruments
123 TWL92330/Menelaus Power Management chip. This include voltage
Matt LaPlante692105b2009-01-26 11:12:25 +0100124 regulators, Dual slot memory card transceivers, real-time clock
David Brownell88e75cc2008-12-22 12:18:02 +0100125 and other features that are often used in portable devices like
126 cell phones and PDAs.
127
David Brownella603a7f2008-10-15 12:15:39 +0200128config TWL4030_CORE
Balaji T Ke8deb282009-12-14 00:25:31 +0100129 bool "Texas Instruments TWL4030/TWL5030/TWL6030/TPS659x0 Support"
David Brownell67460a72008-12-01 00:35:33 +0100130 depends on I2C=y && GENERIC_HARDIRQS
David Brownella603a7f2008-10-15 12:15:39 +0200131 help
Balaji T Ke8deb282009-12-14 00:25:31 +0100132 Say yes here if you have TWL4030 / TWL6030 family chip on your board.
David Brownella603a7f2008-10-15 12:15:39 +0200133 This core driver provides register access and IRQ handling
134 facilities, and registers devices for the various functions
135 so that function-specific drivers can bind to them.
136
137 These multi-function chips are found on many OMAP2 and OMAP3
138 boards, providing power management, RTC, GPIO, keypad, a
139 high speed USB OTG transceiver, an audio codec (on most
140 versions) and many other features.
141
Amit Kucheriaebf0bd32009-08-31 18:32:18 +0200142config TWL4030_POWER
143 bool "Support power resources on TWL4030 family chips"
144 depends on TWL4030_CORE && ARM
145 help
146 Say yes here if you want to use the power resources on the
147 TWL4030 family chips. Most of these resources are regulators,
148 which have a separate driver; some are control signals, such
149 as clock request handshaking.
150
151 This driver uses board-specific data to initialize the resources
152 and load scripts controling which resources are switched off/on
153 or reset when a sleep, wakeup or warm reset event occurs.
154
Peter Ujfalusi0b83dde2009-10-22 13:26:45 +0300155config TWL4030_CODEC
156 bool
157 depends on TWL4030_CORE
158 select MFD_CORE
159 default n
160
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200161config MFD_TMIO
162 bool
163 default n
164
Ian Molton1f192012008-07-15 15:09:43 +0100165config MFD_T7L66XB
166 bool "Support Toshiba T7L66XB"
Al Viro9ca68232008-11-01 18:19:59 +0000167 depends on ARM && HAVE_CLK
Ian Molton1f192012008-07-15 15:09:43 +0100168 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200169 select MFD_TMIO
Ian Molton1f192012008-07-15 15:09:43 +0100170 help
171 Support for Toshiba Mobile IO Controller T7L66XB
172
Ian Moltoncbdfb422008-07-15 15:12:52 +0100173config MFD_TC6387XB
174 bool "Support Toshiba TC6387XB"
Al Viro9ca68232008-11-01 18:19:59 +0000175 depends on ARM && HAVE_CLK
Ian Moltoncbdfb422008-07-15 15:12:52 +0100176 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200177 select MFD_TMIO
Ian Moltoncbdfb422008-07-15 15:12:52 +0100178 help
179 Support for Toshiba Mobile IO Controller TC6387XB
180
Dmitry Baryshkovd6315942008-06-22 12:01:58 +0100181config MFD_TC6393XB
182 bool "Support Toshiba TC6393XB"
Adrian Bunk8d25b362008-07-26 02:38:00 +0300183 depends on GPIOLIB && ARM
Dmitry Baryshkovf024ff12008-06-27 10:37:57 +0100184 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200185 select MFD_TMIO
Dmitry Baryshkovd6315942008-06-22 12:01:58 +0100186 help
187 Support for Toshiba Mobile IO Controller TC6393XB
188
Samuel Ortiz8e2eaab2008-10-24 17:10:05 +0200189config PMIC_DA903X
190 bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
191 depends on I2C=y
192 help
193 Say yes here to support for Dialog Semiconductor DA9030 (a.k.a
194 ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
195 usually found on PXA processors-based platforms. This includes
196 the I2C driver and the core APIs _only_, you have to select
197 individual components like LCD backlight, voltage regulators,
198 LEDs and battery-charger under the corresponding menus.
199
Michael Hennericha5736e02009-10-12 17:22:38 +0200200config PMIC_ADP5520
201 bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
202 depends on I2C=y
203 help
204 Say yes here to add support for Analog Devices AD5520 and ADP5501,
205 Multifunction Power Management IC. This includes
206 the I2C driver and the core APIs _only_, you have to select
207 individual components like LCD backlight, LEDs, GPIOs and Kepad
208 under the corresponding menus.
209
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100210config MFD_MAX8925
Haojian Zhuang1f1cf8f2010-02-05 16:07:54 +0100211 bool "Maxim Semiconductor MAX8925 PMIC Support"
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100212 depends on I2C=y && GENERIC_HARDIRQS
Haojian Zhuang1ad99892010-01-08 12:43:29 -0500213 select MFD_CORE
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100214 help
215 Say yes here to support for Maxim Semiconductor MAX8925. This is
216 a Power Management IC. This driver provies common support for
217 accessing the device, additional drivers must be enabled in order
218 to use the functionality of the device.
219
Mark Brown1d9f9f02008-09-10 18:58:42 +0100220config MFD_WM8400
221 tristate "Support Wolfson Microelectronics WM8400"
Mark Brownb8380c12008-12-18 10:54:22 +0100222 select MFD_CORE
Mark Brown9c366452008-10-24 17:16:11 +0200223 depends on I2C
Mark Brown1d9f9f02008-09-10 18:58:42 +0100224 help
225 Support for the Wolfson Microelecronics WM8400 PMIC and audio
Mark Brown9e5aca52009-05-29 11:34:18 +0100226 CODEC. This driver provides common support for accessing
Mark Brown1d9f9f02008-09-10 18:58:42 +0100227 the device, additional drivers must be enabled in order to use
228 the functionality of the device.
229
Mark Brownb11062b2009-07-27 14:45:58 +0100230config MFD_WM831X
Mark Brown6e401732009-11-23 13:42:34 +0000231 bool "Support Wolfson Microelectronics WM831x/2x PMICs"
Mark Brownb11062b2009-07-27 14:45:58 +0100232 select MFD_CORE
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100233 depends on I2C=y && GENERIC_HARDIRQS
Mark Brownb11062b2009-07-27 14:45:58 +0100234 help
Mark Brownd4e0a892009-10-01 15:41:07 +0100235 Support for the Wolfson Microelecronics WM831x and WM832x PMICs.
236 This driver provides common support for accessing the device,
Mark Brownb11062b2009-07-27 14:45:58 +0100237 additional drivers must be enabled in order to use the
238 functionality of the device.
239
Mark Brown89b40122008-10-10 15:58:10 +0100240config MFD_WM8350
Mark Brownecf926b2010-01-05 20:40:47 +0000241 bool
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100242 depends on GENERIC_HARDIRQS
Mark Brown89b40122008-10-10 15:58:10 +0100243
244config MFD_WM8350_CONFIG_MODE_0
245 bool
246 depends on MFD_WM8350
247
248config MFD_WM8350_CONFIG_MODE_1
249 bool
250 depends on MFD_WM8350
251
252config MFD_WM8350_CONFIG_MODE_2
253 bool
254 depends on MFD_WM8350
255
256config MFD_WM8350_CONFIG_MODE_3
257 bool
258 depends on MFD_WM8350
259
Mark Brownca23f8c2008-12-18 23:12:28 +0100260config MFD_WM8351_CONFIG_MODE_0
261 bool
262 depends on MFD_WM8350
263
264config MFD_WM8351_CONFIG_MODE_1
265 bool
266 depends on MFD_WM8350
267
268config MFD_WM8351_CONFIG_MODE_2
269 bool
270 depends on MFD_WM8350
271
272config MFD_WM8351_CONFIG_MODE_3
273 bool
274 depends on MFD_WM8350
275
Mark Brown96920632008-12-18 23:09:50 +0100276config MFD_WM8352_CONFIG_MODE_0
277 bool
278 depends on MFD_WM8350
279
280config MFD_WM8352_CONFIG_MODE_1
281 bool
282 depends on MFD_WM8350
283
284config MFD_WM8352_CONFIG_MODE_2
285 bool
286 depends on MFD_WM8350
287
288config MFD_WM8352_CONFIG_MODE_3
289 bool
290 depends on MFD_WM8350
291
Mark Brownc661a0b2008-10-10 15:58:11 +0100292config MFD_WM8350_I2C
Mark Brownecf926b2010-01-05 20:40:47 +0000293 bool "Support Wolfson Microelectronics WM8350 with I2C"
Mark Brownc661a0b2008-10-10 15:58:11 +0100294 select MFD_WM8350
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100295 depends on I2C=y && GENERIC_HARDIRQS
Mark Brownc661a0b2008-10-10 15:58:11 +0100296 help
297 The WM8350 is an integrated audio and power management
298 subsystem with watchdog and RTC functionality for embedded
299 systems. This option enables core support for the WM8350 with
300 I2C as the control interface. Additional options must be
301 selected to enable support for the functionality of the chip.
302
Mark Brown9e501082010-01-29 18:20:29 +0000303config MFD_WM8994
Mark Brownc9fbf7e2010-03-26 16:49:15 +0000304 bool "Support Wolfson Microelectronics WM8994"
Mark Brown9e501082010-01-29 18:20:29 +0000305 select MFD_CORE
Mark Brownc9fbf7e2010-03-26 16:49:15 +0000306 depends on I2C=y && GENERIC_HARDIRQS
Mark Brown9e501082010-01-29 18:20:29 +0000307 help
308 The WM8994 is a highly integrated hi-fi CODEC designed for
309 smartphone applicatiosn. As well as audio functionality it
310 has on board GPIO and regulator functionality which is
311 supported via the relevant subsystems. This driver provides
312 core support for the WM8994, in order to use the actual
313 functionaltiy of the device other drivers must be enabled.
314
Balaji Raof52046b2009-01-09 01:49:01 +0100315config MFD_PCF50633
316 tristate "Support for NXP PCF50633"
317 depends on I2C
318 help
319 Say yes here if you have NXP PCF50633 chip on your board.
320 This core driver provides register access and IRQ handling
321 facilities, and registers devices for the various functions
322 so that function-specific drivers can bind to them.
323
Sascha Hauer8238add2009-08-19 01:40:28 +0200324config MFD_MC13783
325 tristate "Support Freescale MC13783"
326 depends on SPI_MASTER
327 select MFD_CORE
328 help
329 Support for the Freescale (Atlas) MC13783 PMIC and audio CODEC.
330 This driver provides common support for accessing the device,
331 additional drivers must be enabled in order to use the
332 functionality of the device.
333
Balaji Rao08c3e062009-01-09 01:49:26 +0100334config PCF50633_ADC
335 tristate "Support for NXP PCF50633 ADC"
336 depends on MFD_PCF50633
337 help
338 Say yes here if you want to include support for ADC in the
339 NXP PCF50633 chip.
340
Balaji Rao6a3d1192009-01-09 01:49:37 +0100341config PCF50633_GPIO
342 tristate "Support for NXP PCF50633 GPIO"
343 depends on MFD_PCF50633
344 help
345 Say yes here if you want to include support GPIO for pins on
346 the PCF50633 chip.
347
Linus Walleij14fa5692009-05-21 23:17:06 +0200348config AB3100_CORE
Linus Walleij2071db42010-01-19 11:41:52 +0100349 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
350 depends on I2C=y
Linus Walleij14fa5692009-05-21 23:17:06 +0200351 default y if ARCH_U300
352 help
353 Select this to enable the AB3100 Mixed Signal IC core
354 functionality. This connects to a AB3100 on the I2C bus
355 and expose a number of symbols needed for dependent devices
356 to read and write registers and subscribe to events from
357 this multi-functional IC. This is needed to use other features
358 of the AB3100 such as battery-backed RTC, charging control,
359 LEDs, vibrator, system power and temperature, power management
360 and ALSA sound.
361
Linus Walleij12992dd2009-08-18 22:52:26 +0200362config AB3100_OTP
363 tristate "ST-Ericsson AB3100 OTP functions"
364 depends on AB3100_CORE
365 default y if AB3100_CORE
366 help
367 Select this to enable the AB3100 Mixed Signal IC OTP (one-time
368 programmable memory) support. This exposes a sysfs file to read
369 out OTP values.
370
Daniel Ribeiro13a09f92009-05-28 15:43:37 -0300371config EZX_PCAP
372 bool "PCAP Support"
373 depends on GENERIC_HARDIRQS && SPI_MASTER
374 help
375 This enables the PCAP ASIC present on EZX Phones. This is
376 needed for MMC, TouchScreen, Sound, USB, etc..
377
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200378config AB4500_CORE
379 tristate "ST-Ericsson's AB4500 Mixed Signal Power management chip"
380 depends on SPI
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200381 help
382 Select this option to enable access to AB4500 power management
383 chip. This connects to U8500 on the SSP/SPI bus and exports
384 read/write functions for the devices to get access to this chip.
385 This chip embeds various other multimedia funtionalities as well.
386
Richard Röjfors8edbede2010-02-04 08:18:52 -0300387config MFD_TIMBERDALE
388 tristate "Support for the Timberdale FPGA"
389 select MFD_CORE
Randy Dunlap546e29b62010-02-12 12:30:55 -0300390 depends on PCI && GPIOLIB
Richard Röjfors8edbede2010-02-04 08:18:52 -0300391 ---help---
392 This is the core driver for the timberdale FPGA. This device is a
393 multifunction device which exposes numerous platform devices.
394
395 The timberdale FPGA can be found on the Intel Atom development board
396 for in-vehicle infontainment, called Russellville.
Denis Turischeve82c60a2010-02-19 11:26:25 +0100397
398config LPC_SCH
399 tristate "Intel SCH LPC"
400 depends on PCI
401 select MFD_CORE
402 help
403 LPC bridge function of the Intel SCH provides support for
404 System Management Bus and General Purpose I/O.
405
Ben Dooksb6d64542007-02-20 13:58:01 -0800406endmenu
407
Russell Kinga4e137a2005-08-18 10:06:59 +0100408menu "Multimedia Capabilities Port drivers"
Adrian Bunkf751d502006-03-24 03:18:21 -0800409 depends on ARCH_SA1100
Russell Kinga4e137a2005-08-18 10:06:59 +0100410
411config MCP
412 tristate
413
Russell King5e742ad2005-08-18 10:08:15 +0100414# Interface drivers
415config MCP_SA11X0
416 tristate "Support SA11x0 MCP interface"
417 depends on ARCH_SA1100
418 select MCP
419
Russell King05c45ca2005-09-11 10:26:31 +0100420# Chip drivers
421config MCP_UCB1200
422 tristate "Support for UCB1200 / UCB1300"
423 depends on MCP
424
Russell Kingacb45432005-09-11 10:26:57 +0100425config MCP_UCB1200_TS
426 tristate "Touchscreen interface support"
427 depends on MCP_UCB1200 && INPUT
428
Russell Kinga4e137a2005-08-18 10:06:59 +0100429endmenu