blob: 20e322912a595e29bfb8f3ae0ebfda21466c02ee [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"
14 depends on I2C=y
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
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"
212 depends on I2C=y
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
Mark Brown01253502009-11-24 10:48:56 +0000233 depends on I2C=y
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
Mark Brown89b40122008-10-10 15:58:10 +0100242
243config MFD_WM8350_CONFIG_MODE_0
244 bool
245 depends on MFD_WM8350
246
247config MFD_WM8350_CONFIG_MODE_1
248 bool
249 depends on MFD_WM8350
250
251config MFD_WM8350_CONFIG_MODE_2
252 bool
253 depends on MFD_WM8350
254
255config MFD_WM8350_CONFIG_MODE_3
256 bool
257 depends on MFD_WM8350
258
Mark Brownca23f8c2008-12-18 23:12:28 +0100259config MFD_WM8351_CONFIG_MODE_0
260 bool
261 depends on MFD_WM8350
262
263config MFD_WM8351_CONFIG_MODE_1
264 bool
265 depends on MFD_WM8350
266
267config MFD_WM8351_CONFIG_MODE_2
268 bool
269 depends on MFD_WM8350
270
271config MFD_WM8351_CONFIG_MODE_3
272 bool
273 depends on MFD_WM8350
274
Mark Brown96920632008-12-18 23:09:50 +0100275config MFD_WM8352_CONFIG_MODE_0
276 bool
277 depends on MFD_WM8350
278
279config MFD_WM8352_CONFIG_MODE_1
280 bool
281 depends on MFD_WM8350
282
283config MFD_WM8352_CONFIG_MODE_2
284 bool
285 depends on MFD_WM8350
286
287config MFD_WM8352_CONFIG_MODE_3
288 bool
289 depends on MFD_WM8350
290
Mark Brownc661a0b2008-10-10 15:58:11 +0100291config MFD_WM8350_I2C
Mark Brownecf926b2010-01-05 20:40:47 +0000292 bool "Support Wolfson Microelectronics WM8350 with I2C"
Mark Brownc661a0b2008-10-10 15:58:11 +0100293 select MFD_WM8350
Mark Brownecf926b2010-01-05 20:40:47 +0000294 depends on I2C=y
Mark Brownc661a0b2008-10-10 15:58:11 +0100295 help
296 The WM8350 is an integrated audio and power management
297 subsystem with watchdog and RTC functionality for embedded
298 systems. This option enables core support for the WM8350 with
299 I2C as the control interface. Additional options must be
300 selected to enable support for the functionality of the chip.
301
Mark Brown9e501082010-01-29 18:20:29 +0000302config MFD_WM8994
303 tristate "Support Wolfson Microelectronics WM8994"
304 select MFD_CORE
305 depends on I2C
306 help
307 The WM8994 is a highly integrated hi-fi CODEC designed for
308 smartphone applicatiosn. As well as audio functionality it
309 has on board GPIO and regulator functionality which is
310 supported via the relevant subsystems. This driver provides
311 core support for the WM8994, in order to use the actual
312 functionaltiy of the device other drivers must be enabled.
313
Balaji Raof52046b2009-01-09 01:49:01 +0100314config MFD_PCF50633
315 tristate "Support for NXP PCF50633"
316 depends on I2C
317 help
318 Say yes here if you have NXP PCF50633 chip on your board.
319 This core driver provides register access and IRQ handling
320 facilities, and registers devices for the various functions
321 so that function-specific drivers can bind to them.
322
Sascha Hauer8238add2009-08-19 01:40:28 +0200323config MFD_MC13783
324 tristate "Support Freescale MC13783"
325 depends on SPI_MASTER
326 select MFD_CORE
327 help
328 Support for the Freescale (Atlas) MC13783 PMIC and audio CODEC.
329 This driver provides common support for accessing the device,
330 additional drivers must be enabled in order to use the
331 functionality of the device.
332
Balaji Rao08c3e062009-01-09 01:49:26 +0100333config PCF50633_ADC
334 tristate "Support for NXP PCF50633 ADC"
335 depends on MFD_PCF50633
336 help
337 Say yes here if you want to include support for ADC in the
338 NXP PCF50633 chip.
339
Balaji Rao6a3d1192009-01-09 01:49:37 +0100340config PCF50633_GPIO
341 tristate "Support for NXP PCF50633 GPIO"
342 depends on MFD_PCF50633
343 help
344 Say yes here if you want to include support GPIO for pins on
345 the PCF50633 chip.
346
Linus Walleij14fa5692009-05-21 23:17:06 +0200347config AB3100_CORE
Linus Walleij2071db42010-01-19 11:41:52 +0100348 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
349 depends on I2C=y
Linus Walleij14fa5692009-05-21 23:17:06 +0200350 default y if ARCH_U300
351 help
352 Select this to enable the AB3100 Mixed Signal IC core
353 functionality. This connects to a AB3100 on the I2C bus
354 and expose a number of symbols needed for dependent devices
355 to read and write registers and subscribe to events from
356 this multi-functional IC. This is needed to use other features
357 of the AB3100 such as battery-backed RTC, charging control,
358 LEDs, vibrator, system power and temperature, power management
359 and ALSA sound.
360
Linus Walleij12992dd2009-08-18 22:52:26 +0200361config AB3100_OTP
362 tristate "ST-Ericsson AB3100 OTP functions"
363 depends on AB3100_CORE
364 default y if AB3100_CORE
365 help
366 Select this to enable the AB3100 Mixed Signal IC OTP (one-time
367 programmable memory) support. This exposes a sysfs file to read
368 out OTP values.
369
Daniel Ribeiro13a09f92009-05-28 15:43:37 -0300370config EZX_PCAP
371 bool "PCAP Support"
372 depends on GENERIC_HARDIRQS && SPI_MASTER
373 help
374 This enables the PCAP ASIC present on EZX Phones. This is
375 needed for MMC, TouchScreen, Sound, USB, etc..
376
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200377config AB4500_CORE
378 tristate "ST-Ericsson's AB4500 Mixed Signal Power management chip"
379 depends on SPI
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200380 help
381 Select this option to enable access to AB4500 power management
382 chip. This connects to U8500 on the SSP/SPI bus and exports
383 read/write functions for the devices to get access to this chip.
384 This chip embeds various other multimedia funtionalities as well.
385
Richard Röjfors8edbede2010-02-04 08:18:52 -0300386config MFD_TIMBERDALE
387 tristate "Support for the Timberdale FPGA"
388 select MFD_CORE
Randy Dunlap546e29b62010-02-12 12:30:55 -0300389 depends on PCI && GPIOLIB
Richard Röjfors8edbede2010-02-04 08:18:52 -0300390 ---help---
391 This is the core driver for the timberdale FPGA. This device is a
392 multifunction device which exposes numerous platform devices.
393
394 The timberdale FPGA can be found on the Intel Atom development board
395 for in-vehicle infontainment, called Russellville.
Denis Turischeve82c60a2010-02-19 11:26:25 +0100396
397config LPC_SCH
398 tristate "Intel SCH LPC"
399 depends on PCI
400 select MFD_CORE
401 help
402 LPC bridge function of the Intel SCH provides support for
403 System Management Bus and General Purpose I/O.
404
Ben Dooksb6d64542007-02-20 13:58:01 -0800405endmenu
406
Russell Kinga4e137a2005-08-18 10:06:59 +0100407menu "Multimedia Capabilities Port drivers"
Adrian Bunkf751d502006-03-24 03:18:21 -0800408 depends on ARCH_SA1100
Russell Kinga4e137a2005-08-18 10:06:59 +0100409
410config MCP
411 tristate
412
Russell King5e742ad2005-08-18 10:08:15 +0100413# Interface drivers
414config MCP_SA11X0
415 tristate "Support SA11x0 MCP interface"
416 depends on ARCH_SA1100
417 select MCP
418
Russell King05c45ca2005-09-11 10:26:31 +0100419# Chip drivers
420config MCP_UCB1200
421 tristate "Support for UCB1200 / UCB1300"
422 depends on MCP
423
Russell Kingacb45432005-09-11 10:26:57 +0100424config MCP_UCB1200_TS
425 tristate "Touchscreen interface support"
426 depends on MCP_UCB1200 && INPUT
427
Russell Kinga4e137a2005-08-18 10:06:59 +0100428endmenu