blob: 2a5a0b78f84eacf4a203d2cc088cc9894772cc1d [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
David Brownell0931a4c2008-12-22 12:05:27 +010056config 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
Philipp Zabela1635b82008-04-09 19:20:34 +010064config HTC_EGPIO
65 bool "HTC EGPIO support"
Michael Buesch7444a722008-07-25 01:46:11 -070066 depends on GENERIC_HARDIRQS && GPIOLIB && ARM
Philipp Zabela1635b82008-04-09 19:20:34 +010067 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
Philipp Zabel5dc33392008-04-12 13:25:41 +010072config HTC_PASIC3
73 tristate "HTC PASIC3 LED/DS1WM chip support"
Philipp Zabel0254a8f2009-02-17 10:06:45 +010074 select MFD_CORE
Philipp Zabel5dc33392008-04-12 13:25:41 +010075 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
Cory Maccarrone6048a3d2010-01-19 11:22:45 +010081config HTC_I2CPLD
82 bool "HTC I2C PLD chip support"
Randy Dunlapbef3e202010-01-20 19:55:34 -080083 depends on I2C=y && GPIOLIB
Cory Maccarrone6048a3d2010-01-19 11:22:45 +010084 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
Marek Vašutd9105c22008-08-03 21:34:08 +010090config UCB1400_CORE
91 tristate "Philips UCB1400 Core driver"
Randy Dunlape4831802008-10-15 13:29:07 +020092 depends on AC97_BUS
Andrew Morton5a49a542008-10-15 13:30:47 +020093 depends on GPIOLIB
Marek Vašutd9105c22008-08-03 21:34:08 +010094 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
David Brownell87c13492008-12-22 12:16:27 +0100101config 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
David Brownell88e75cc2008-12-22 12:18:02 +0100114config MENELAUS
115 bool "Texas Instruments TWL92330/Menelaus PM chip"
Tony Lindgren088ef952010-02-12 12:26:47 -0800116 depends on I2C=y && ARCH_OMAP2
David Brownell88e75cc2008-12-22 12:18:02 +0100117 help
118 If you say yes here you get support for the Texas Instruments
119 TWL92330/Menelaus Power Management chip. This include voltage
Matt LaPlante692105b2009-01-26 11:12:25 +0100120 regulators, Dual slot memory card transceivers, real-time clock
David Brownell88e75cc2008-12-22 12:18:02 +0100121 and other features that are often used in portable devices like
122 cell phones and PDAs.
123
David Brownella603a7f2008-10-15 12:15:39 +0200124config TWL4030_CORE
Balaji T Ke8deb282009-12-14 00:25:31 +0100125 bool "Texas Instruments TWL4030/TWL5030/TWL6030/TPS659x0 Support"
David Brownell67460a72008-12-01 00:35:33 +0100126 depends on I2C=y && GENERIC_HARDIRQS
David Brownella603a7f2008-10-15 12:15:39 +0200127 help
Balaji T Ke8deb282009-12-14 00:25:31 +0100128 Say yes here if you have TWL4030 / TWL6030 family chip on your board.
David Brownella603a7f2008-10-15 12:15:39 +0200129 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
Amit Kucheriaebf0bd32009-08-31 18:32:18 +0200138config 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
Peter Ujfalusi0b83dde2009-10-22 13:26:45 +0300151config TWL4030_CODEC
152 bool
153 depends on TWL4030_CORE
154 select MFD_CORE
155 default n
156
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200157config MFD_TMIO
158 bool
159 default n
160
Ian Molton1f192012008-07-15 15:09:43 +0100161config MFD_T7L66XB
162 bool "Support Toshiba T7L66XB"
Al Viro9ca68232008-11-01 18:19:59 +0000163 depends on ARM && HAVE_CLK
Ian Molton1f192012008-07-15 15:09:43 +0100164 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200165 select MFD_TMIO
Ian Molton1f192012008-07-15 15:09:43 +0100166 help
167 Support for Toshiba Mobile IO Controller T7L66XB
168
Ian Moltoncbdfb422008-07-15 15:12:52 +0100169config MFD_TC6387XB
170 bool "Support Toshiba TC6387XB"
Al Viro9ca68232008-11-01 18:19:59 +0000171 depends on ARM && HAVE_CLK
Ian Moltoncbdfb422008-07-15 15:12:52 +0100172 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200173 select MFD_TMIO
Ian Moltoncbdfb422008-07-15 15:12:52 +0100174 help
175 Support for Toshiba Mobile IO Controller TC6387XB
176
Dmitry Baryshkovd6315942008-06-22 12:01:58 +0100177config MFD_TC6393XB
178 bool "Support Toshiba TC6393XB"
Adrian Bunk8d25b362008-07-26 02:38:00 +0300179 depends on GPIOLIB && ARM
Dmitry Baryshkovf024ff12008-06-27 10:37:57 +0100180 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200181 select MFD_TMIO
Dmitry Baryshkovd6315942008-06-22 12:01:58 +0100182 help
183 Support for Toshiba Mobile IO Controller TC6393XB
184
Samuel Ortiz8e2eaab2008-10-24 17:10:05 +0200185config 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
Michael Hennericha5736e02009-10-12 17:22:38 +0200196config 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
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100206config MFD_MAX8925
Haojian Zhuang1f1cf8f2010-02-05 16:07:54 +0100207 bool "Maxim Semiconductor MAX8925 PMIC Support"
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100208 depends on I2C=y && GENERIC_HARDIRQS
Haojian Zhuang1ad99892010-01-08 12:43:29 -0500209 select MFD_CORE
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100210 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
Mark Brown1d9f9f02008-09-10 18:58:42 +0100216config MFD_WM8400
217 tristate "Support Wolfson Microelectronics WM8400"
Mark Brownb8380c12008-12-18 10:54:22 +0100218 select MFD_CORE
Mark Brown9c366452008-10-24 17:16:11 +0200219 depends on I2C
Mark Brown1d9f9f02008-09-10 18:58:42 +0100220 help
221 Support for the Wolfson Microelecronics WM8400 PMIC and audio
Mark Brown9e5aca52009-05-29 11:34:18 +0100222 CODEC. This driver provides common support for accessing
Mark Brown1d9f9f02008-09-10 18:58:42 +0100223 the device, additional drivers must be enabled in order to use
224 the functionality of the device.
225
Mark Brownb11062b2009-07-27 14:45:58 +0100226config MFD_WM831X
Mark Brown6e401732009-11-23 13:42:34 +0000227 bool "Support Wolfson Microelectronics WM831x/2x PMICs"
Mark Brownb11062b2009-07-27 14:45:58 +0100228 select MFD_CORE
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100229 depends on I2C=y && GENERIC_HARDIRQS
Mark Brownb11062b2009-07-27 14:45:58 +0100230 help
Mark Brownd4e0a892009-10-01 15:41:07 +0100231 Support for the Wolfson Microelecronics WM831x and WM832x PMICs.
232 This driver provides common support for accessing the device,
Mark Brownb11062b2009-07-27 14:45:58 +0100233 additional drivers must be enabled in order to use the
234 functionality of the device.
235
Mark Brown89b40122008-10-10 15:58:10 +0100236config MFD_WM8350
Mark Brownecf926b2010-01-05 20:40:47 +0000237 bool
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100238 depends on GENERIC_HARDIRQS
Mark Brown89b40122008-10-10 15:58:10 +0100239
240config MFD_WM8350_CONFIG_MODE_0
241 bool
242 depends on MFD_WM8350
243
244config MFD_WM8350_CONFIG_MODE_1
245 bool
246 depends on MFD_WM8350
247
248config MFD_WM8350_CONFIG_MODE_2
249 bool
250 depends on MFD_WM8350
251
252config MFD_WM8350_CONFIG_MODE_3
253 bool
254 depends on MFD_WM8350
255
Mark Brownca23f8c2008-12-18 23:12:28 +0100256config MFD_WM8351_CONFIG_MODE_0
257 bool
258 depends on MFD_WM8350
259
260config MFD_WM8351_CONFIG_MODE_1
261 bool
262 depends on MFD_WM8350
263
264config MFD_WM8351_CONFIG_MODE_2
265 bool
266 depends on MFD_WM8350
267
268config MFD_WM8351_CONFIG_MODE_3
269 bool
270 depends on MFD_WM8350
271
Mark Brown96920632008-12-18 23:09:50 +0100272config MFD_WM8352_CONFIG_MODE_0
273 bool
274 depends on MFD_WM8350
275
276config MFD_WM8352_CONFIG_MODE_1
277 bool
278 depends on MFD_WM8350
279
280config MFD_WM8352_CONFIG_MODE_2
281 bool
282 depends on MFD_WM8350
283
284config MFD_WM8352_CONFIG_MODE_3
285 bool
286 depends on MFD_WM8350
287
Mark Brownc661a0b2008-10-10 15:58:11 +0100288config MFD_WM8350_I2C
Mark Brownecf926b2010-01-05 20:40:47 +0000289 bool "Support Wolfson Microelectronics WM8350 with I2C"
Mark Brownc661a0b2008-10-10 15:58:11 +0100290 select MFD_WM8350
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100291 depends on I2C=y && GENERIC_HARDIRQS
Mark Brownc661a0b2008-10-10 15:58:11 +0100292 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
Mark Brown9e501082010-01-29 18:20:29 +0000299config 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
Balaji Raof52046b2009-01-09 01:49:01 +0100311config 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
Sascha Hauer8238add2009-08-19 01:40:28 +0200320config 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
Balaji Rao08c3e062009-01-09 01:49:26 +0100330config 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
Balaji Rao6a3d1192009-01-09 01:49:37 +0100337config 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
Linus Walleij14fa5692009-05-21 23:17:06 +0200344config AB3100_CORE
Linus Walleij2071db42010-01-19 11:41:52 +0100345 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
346 depends on I2C=y
Linus Walleij14fa5692009-05-21 23:17:06 +0200347 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
Linus Walleij12992dd2009-08-18 22:52:26 +0200358config 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
Daniel Ribeiro13a09f92009-05-28 15:43:37 -0300367config 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
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200374config AB4500_CORE
375 tristate "ST-Ericsson's AB4500 Mixed Signal Power management chip"
376 depends on SPI
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200377 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
Richard Röjfors8edbede2010-02-04 08:18:52 -0300383config MFD_TIMBERDALE
384 tristate "Support for the Timberdale FPGA"
385 select MFD_CORE
Randy Dunlap546e29b62010-02-12 12:30:55 -0300386 depends on PCI && GPIOLIB
Richard Röjfors8edbede2010-02-04 08:18:52 -0300387 ---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.
Denis Turischeve82c60a2010-02-19 11:26:25 +0100393
394config 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
Ben Dooksb6d64542007-02-20 13:58:01 -0800402endmenu
403
Russell Kinga4e137a2005-08-18 10:06:59 +0100404menu "Multimedia Capabilities Port drivers"
Adrian Bunkf751d502006-03-24 03:18:21 -0800405 depends on ARCH_SA1100
Russell Kinga4e137a2005-08-18 10:06:59 +0100406
407config MCP
408 tristate
409
Russell King5e742ad2005-08-18 10:08:15 +0100410# Interface drivers
411config MCP_SA11X0
412 tristate "Support SA11x0 MCP interface"
413 depends on ARCH_SA1100
414 select MCP
415
Russell King05c45ca2005-09-11 10:26:31 +0100416# Chip drivers
417config MCP_UCB1200
418 tristate "Support for UCB1200 / UCB1300"
419 depends on MCP
420
Russell Kingacb45432005-09-11 10:26:57 +0100421config MCP_UCB1200_TS
422 tristate "Touchscreen interface support"
423 depends on MCP_UCB1200 && INPUT
424
Russell Kinga4e137a2005-08-18 10:06:59 +0100425endmenu