blob: f94036a4f33d82cbbfb1835ebd03452e4568e44e [file] [log] [blame]
Russell Kinga4e137a2005-08-18 10:06:59 +01001#
2# Multifunction miscellaneous devices
3#
4
Randy Dunlap38270642010-05-11 01:07:34 +02005menuconfig MFD_SUPPORT
6 bool "Multifunction device drivers"
Martin Schwidefskye25df122007-05-10 15:45:57 +02007 depends on HAS_IOMEM
Randy Dunlap38270642010-05-11 01:07:34 +02008 default y
9 help
Samuel Ortiz15742c82010-06-19 02:29:24 +020010 Multifunction devices embed several functions (e.g. GPIOs,
11 touchscreens, keyboards, current regulators, power management chips,
12 etc...) in one single integrated circuit. They usually talk to the
13 main CPU through one or more IRQ lines and low speed data busses (SPI,
14 I2C, etc..). They appear as one single device to the main system
15 through the data bus and the MFD framework allows for sub devices
16 (a.k.a. functions) to appear as discrete platform devices.
17 MFDs are typically found on embedded platforms.
18
19 This option alone does not add any kernel code.
Randy Dunlap38270642010-05-11 01:07:34 +020020
21if MFD_SUPPORT
Ben Dooksb6d64542007-02-20 13:58:01 -080022
Dmitry Baryshkovaa613de2008-06-27 10:37:19 +010023config MFD_CORE
24 tristate
25 default n
26
Haojian Zhuang2cc50be2010-01-06 17:07:13 -050027config MFD_88PM860X
28 bool "Support Marvell 88PM8606/88PM8607"
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +010029 depends on I2C=y && GENERIC_HARDIRQS
Haojian Zhuang2cc50be2010-01-06 17:07:13 -050030 select MFD_CORE
31 help
32 This supports for Marvell 88PM8606/88PM8607 Power Management IC.
33 This includes the I2C driver and the core APIs _only_, you have to
34 select individual components like voltage regulators, RTC and
35 battery-charger under the corresponding menus.
36
Ben Dooksb6d64542007-02-20 13:58:01 -080037config MFD_SM501
38 tristate "Support for Silicon Motion SM501"
39 ---help---
40 This is the core driver for the Silicon Motion SM501 multimedia
41 companion chip. This device is a multifunction device which may
Matt LaPlante01dd2fb2007-10-20 01:34:40 +020042 provide numerous interfaces including USB host controller, USB gadget,
43 asynchronous serial ports, audio functions, and a dual display video
Ben Dooksb6d64542007-02-20 13:58:01 -080044 interface. The device may be connected by PCI or local bus with
45 varying functions enabled.
46
Ben Dooksf61be272008-07-25 01:45:59 -070047config MFD_SM501_GPIO
48 bool "Export GPIO via GPIO layer"
Samuel Ortiz2eedd602008-09-25 00:39:05 +020049 depends on MFD_SM501 && GPIOLIB
Ben Dooksf61be272008-07-25 01:45:59 -070050 ---help---
51 This option uses the gpio library layer to export the 64 GPIO
52 lines on the SM501. The platform data is used to supply the
53 base number for the first GPIO line to register.
54
Samuel Ortizfa9ff4b2008-02-07 00:14:49 -080055config MFD_ASIC3
56 bool "Support for Compaq ASIC3"
Samuel Ortiz2eedd602008-09-25 00:39:05 +020057 depends on GENERIC_HARDIRQS && GPIOLIB && ARM
Philipp Zabel9461f652009-06-15 12:10:24 +020058 select MFD_CORE
Samuel Ortizfa9ff4b2008-02-07 00:14:49 -080059 ---help---
60 This driver supports the ASIC3 multifunction chip found on many
61 PDAs (mainly iPAQ and HTC based ones)
62
Miguel Aguilarca263082010-03-11 09:32:21 -060063config MFD_DAVINCI_VOICECODEC
64 tristate
65 select MFD_CORE
66
David Brownell0931a4c2008-12-22 12:05:27 +010067config MFD_DM355EVM_MSP
68 bool "DaVinci DM355 EVM microcontroller"
Samuel Ortiz1819ebc2010-09-20 00:19:27 +020069 depends on I2C=y && MACH_DAVINCI_DM355_EVM
David Brownell0931a4c2008-12-22 12:05:27 +010070 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
Cyril Chemparathy03df0f62011-01-18 19:21:35 +000075config MFD_TI_SSP
76 tristate "TI Sequencer Serial Port support"
77 depends on ARCH_DAVINCI_TNETV107X
78 select MFD_CORE
79 ---help---
80 Say Y here if you want support for the Sequencer Serial Port
81 in a Texas Instruments TNETV107X SoC.
82
83 To compile this driver as a module, choose M here: the
84 module will be called ti-ssp.
85
Philipp Zabela1635b82008-04-09 19:20:34 +010086config HTC_EGPIO
87 bool "HTC EGPIO support"
Michael Buesch7444a722008-07-25 01:46:11 -070088 depends on GENERIC_HARDIRQS && GPIOLIB && ARM
Philipp Zabela1635b82008-04-09 19:20:34 +010089 help
90 This driver supports the CPLD egpio chip present on
91 several HTC phones. It provides basic support for input
92 pins, output pins, and irqs.
93
Philipp Zabel5dc33392008-04-12 13:25:41 +010094config HTC_PASIC3
95 tristate "HTC PASIC3 LED/DS1WM chip support"
Philipp Zabel0254a8f2009-02-17 10:06:45 +010096 select MFD_CORE
Philipp Zabel5dc33392008-04-12 13:25:41 +010097 help
98 This core driver provides register access for the LED/DS1WM
99 chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
100 HTC Magician devices, respectively. Actual functionality is
101 handled by the leds-pasic3 and ds1wm drivers.
102
Cory Maccarrone6048a3d2010-01-19 11:22:45 +0100103config HTC_I2CPLD
104 bool "HTC I2C PLD chip support"
Randy Dunlapbef3e202010-01-20 19:55:34 -0800105 depends on I2C=y && GPIOLIB
Cory Maccarrone6048a3d2010-01-19 11:22:45 +0100106 help
107 If you say yes here you get support for the supposed CPLD
108 found on omap850 HTC devices like the HTC Wizard and HTC Herald.
109 This device provides input and output GPIOs through an I2C
110 interface to one or more sub-chips.
111
Marek Vašutd9105c22008-08-03 21:34:08 +0100112config UCB1400_CORE
113 tristate "Philips UCB1400 Core driver"
Randy Dunlape4831802008-10-15 13:29:07 +0200114 depends on AC97_BUS
Andrew Morton5a49a542008-10-15 13:30:47 +0200115 depends on GPIOLIB
Marek Vašutd9105c22008-08-03 21:34:08 +0100116 help
117 This enables support for the Philips UCB1400 core functions.
118 The UCB1400 is an AC97 audio codec.
119
120 To compile this driver as a module, choose M here: the
121 module will be called ucb1400_core.
122
Linus Walleij798a8ee2011-03-09 13:02:38 +0100123config TPS6105X
124 tristate "TPS61050/61052 Boost Converters"
125 depends on I2C
Linus Walleij2edd3b62011-03-09 12:02:55 +0000126 select REGULATOR
Guenter Roeckfc498fa2011-03-24 12:12:47 -0700127 select MFD_CORE
Linus Walleij2edd3b62011-03-09 12:02:55 +0000128 select REGULATOR_FIXED_VOLTAGE
Linus Walleij798a8ee2011-03-09 13:02:38 +0100129 help
130 This option enables a driver for the TP61050/TPS61052
131 high-power "white LED driver". This boost converter is
132 sometimes used for other things than white LEDs, and
133 also contains a GPIO pin.
134
David Brownell87c13492008-12-22 12:16:27 +0100135config TPS65010
136 tristate "TPS6501x Power Management chips"
137 depends on I2C && GPIOLIB
138 default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
139 help
140 If you say yes here you get support for the TPS6501x series of
141 Power Management chips. These include voltage regulators,
142 lithium ion/polymer battery charging, and other features that
143 are often used in portable devices like cell phones and cameras.
144
145 This driver can also be built as a module. If so, the module
146 will be called tps65010.
147
Todd Fischer31dd6a22010-04-08 09:04:55 +0200148config TPS6507X
149 tristate "TPS6507x Power Management / Touch Screen chips"
150 select MFD_CORE
151 depends on I2C
152 help
153 If you say yes here you get support for the TPS6507x series of
154 Power Management / Touch Screen chips. These include voltage
155 regulators, lithium ion/polymer battery charging, touch screen
156 and other features that are often used in portable devices.
157 This driver can also be built as a module. If so, the module
158 will be called tps6507x.
159
Axel Lin37df0032011-04-15 20:04:45 +0800160config MFD_TPS6586X
161 bool "TPS6586x Power Management chips"
162 depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS
163 select MFD_CORE
164 help
165 If you say yes here you get support for the TPS6586X series of
166 Power Management chips.
167 This driver provides common support for accessing the device,
168 additional drivers must be enabled in order to use the
169 functionality of the device.
170
171 This driver can also be built as a module. If so, the module
172 will be called tps6586x.
173
Margarita Olaya36e52872011-06-09 14:50:00 -0500174config MFD_TPS65912
175 bool "TPS65912 PMIC"
176 depends on GPIOLIB
177
178config MFD_TPS65912_I2C
179 bool "TPS95612 Power Management chip with I2C"
180 select MFD_CORE
181 select MFD_TPS65912
182 depends on I2C=y && GPIOLIB
183 help
184 If you say yes here you get support for the TPS65912 series of
185 PM chips with I2C interface.
186
187config MFD_TPS65912_SPI
188 bool "TPS65912 Power Management chip with SPI"
189 select MFD_CORE
190 select MFD_TPS65912
191 depends on SPI_MASTER && GPIOLIB
192 help
193 If you say yes here you get support for the TPS65912 series of
194 PM chips with SPI interface.
195
David Brownell88e75cc2008-12-22 12:18:02 +0100196config MENELAUS
197 bool "Texas Instruments TWL92330/Menelaus PM chip"
Tony Lindgren088ef952010-02-12 12:26:47 -0800198 depends on I2C=y && ARCH_OMAP2
David Brownell88e75cc2008-12-22 12:18:02 +0100199 help
200 If you say yes here you get support for the Texas Instruments
201 TWL92330/Menelaus Power Management chip. This include voltage
Matt LaPlante692105b2009-01-26 11:12:25 +0100202 regulators, Dual slot memory card transceivers, real-time clock
David Brownell88e75cc2008-12-22 12:18:02 +0100203 and other features that are often used in portable devices like
204 cell phones and PDAs.
205
David Brownella603a7f2008-10-15 12:15:39 +0200206config TWL4030_CORE
Balaji T Ke8deb282009-12-14 00:25:31 +0100207 bool "Texas Instruments TWL4030/TWL5030/TWL6030/TPS659x0 Support"
David Brownell67460a72008-12-01 00:35:33 +0100208 depends on I2C=y && GENERIC_HARDIRQS
David Brownella603a7f2008-10-15 12:15:39 +0200209 help
Balaji T Ke8deb282009-12-14 00:25:31 +0100210 Say yes here if you have TWL4030 / TWL6030 family chip on your board.
David Brownella603a7f2008-10-15 12:15:39 +0200211 This core driver provides register access and IRQ handling
212 facilities, and registers devices for the various functions
213 so that function-specific drivers can bind to them.
214
215 These multi-function chips are found on many OMAP2 and OMAP3
216 boards, providing power management, RTC, GPIO, keypad, a
217 high speed USB OTG transceiver, an audio codec (on most
218 versions) and many other features.
219
Keerthyf99c1d42011-03-01 19:12:26 +0530220config TWL4030_MADC
221 tristate "Texas Instruments TWL4030 MADC"
222 depends on TWL4030_CORE
223 help
224 This driver provides support for triton TWL4030-MADC. The
225 driver supports both RT and SW conversion methods.
226
227 This driver can be built as a module. If so it will be
228 named twl4030-madc
229
Amit Kucheriaebf0bd32009-08-31 18:32:18 +0200230config TWL4030_POWER
231 bool "Support power resources on TWL4030 family chips"
232 depends on TWL4030_CORE && ARM
233 help
234 Say yes here if you want to use the power resources on the
235 TWL4030 family chips. Most of these resources are regulators,
236 which have a separate driver; some are control signals, such
237 as clock request handshaking.
238
239 This driver uses board-specific data to initialize the resources
Lucas De Marchi25985ed2011-03-30 22:57:33 -0300240 and load scripts controlling which resources are switched off/on
Amit Kucheriaebf0bd32009-08-31 18:32:18 +0200241 or reset when a sleep, wakeup or warm reset event occurs.
242
Peter Ujfalusi57fe7252011-05-31 12:02:49 +0300243config MFD_TWL4030_AUDIO
Peter Ujfalusi0b83dde2009-10-22 13:26:45 +0300244 bool
245 depends on TWL4030_CORE
246 select MFD_CORE
247 default n
248
Hemanth V31fc03d2010-07-14 12:04:56 +0200249config TWL6030_PWM
250 tristate "TWL6030 PWM (Pulse Width Modulator) Support"
251 depends on TWL4030_CORE
252 select HAVE_PWM
253 default n
254 help
255 Say yes here if you want support for TWL6030 PWM.
256 This is used to control charging LED brightness.
257
Misael Lopez Cruzf19b2822011-04-27 02:14:07 -0500258config TWL6040_CORE
259 bool
260 depends on TWL4030_CORE && GENERIC_HARDIRQS
261 select MFD_CORE
262 default n
263
Rabin Vincent27e34992010-07-02 16:52:08 +0530264config MFD_STMPE
265 bool "Support STMicroelectronics STMPE"
266 depends on I2C=y && GENERIC_HARDIRQS
267 select MFD_CORE
268 help
269 Support for the STMPE family of I/O Expanders from
270 STMicroelectronics.
271
272 Currently supported devices are:
273
274 STMPE811: GPIO, Touchscreen
275 STMPE1601: GPIO, Keypad
276 STMPE2401: GPIO, Keypad
277 STMPE2403: GPIO, Keypad
278
279 This driver provides common support for accessing the device,
280 additional drivers must be enabled in order to use the functionality
281 of the device. Currently available sub drivers are:
282
283 GPIO: stmpe-gpio
284 Keypad: stmpe-keypad
285 Touchscreen: stmpe-ts
286
Sundar Iyerf4e8afd2010-12-13 09:33:13 +0530287config MFD_TC3589X
288 bool "Support Toshiba TC35892 and variants"
Rabin Vincentb4ecd322010-05-10 23:39:47 +0200289 depends on I2C=y && GENERIC_HARDIRQS
290 select MFD_CORE
291 help
Sundar Iyerf4e8afd2010-12-13 09:33:13 +0530292 Support for the Toshiba TC35892 and variants I/O Expander.
Rabin Vincentb4ecd322010-05-10 23:39:47 +0200293
294 This driver provides common support for accessing the device,
295 additional drivers must be enabled in order to use the
296 functionality of the device.
297
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200298config MFD_TMIO
299 bool
300 default n
301
Ian Molton1f192012008-07-15 15:09:43 +0100302config MFD_T7L66XB
303 bool "Support Toshiba T7L66XB"
Al Viro9ca68232008-11-01 18:19:59 +0000304 depends on ARM && HAVE_CLK
Ian Molton1f192012008-07-15 15:09:43 +0100305 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200306 select MFD_TMIO
Ian Molton1f192012008-07-15 15:09:43 +0100307 help
308 Support for Toshiba Mobile IO Controller T7L66XB
309
Ian Moltoncbdfb422008-07-15 15:12:52 +0100310config MFD_TC6387XB
311 bool "Support Toshiba TC6387XB"
Al Viro9ca68232008-11-01 18:19:59 +0000312 depends on ARM && HAVE_CLK
Ian Moltoncbdfb422008-07-15 15:12:52 +0100313 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200314 select MFD_TMIO
Ian Moltoncbdfb422008-07-15 15:12:52 +0100315 help
316 Support for Toshiba Mobile IO Controller TC6387XB
317
Dmitry Baryshkovd6315942008-06-22 12:01:58 +0100318config MFD_TC6393XB
319 bool "Support Toshiba TC6393XB"
Adrian Bunk8d25b362008-07-26 02:38:00 +0300320 depends on GPIOLIB && ARM
Dmitry Baryshkovf024ff12008-06-27 10:37:57 +0100321 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200322 select MFD_TMIO
Dmitry Baryshkovd6315942008-06-22 12:01:58 +0100323 help
324 Support for Toshiba Mobile IO Controller TC6393XB
325
Samuel Ortiz8e2eaab2008-10-24 17:10:05 +0200326config PMIC_DA903X
327 bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
328 depends on I2C=y
329 help
330 Say yes here to support for Dialog Semiconductor DA9030 (a.k.a
331 ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
332 usually found on PXA processors-based platforms. This includes
333 the I2C driver and the core APIs _only_, you have to select
334 individual components like LCD backlight, voltage regulators,
335 LEDs and battery-charger under the corresponding menus.
336
Michael Hennericha5736e02009-10-12 17:22:38 +0200337config PMIC_ADP5520
338 bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
339 depends on I2C=y
340 help
341 Say yes here to add support for Analog Devices AD5520 and ADP5501,
342 Multifunction Power Management IC. This includes
343 the I2C driver and the core APIs _only_, you have to select
344 individual components like LCD backlight, LEDs, GPIOs and Kepad
345 under the corresponding menus.
346
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100347config MFD_MAX8925
Haojian Zhuang1f1cf8f2010-02-05 16:07:54 +0100348 bool "Maxim Semiconductor MAX8925 PMIC Support"
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100349 depends on I2C=y && GENERIC_HARDIRQS
Haojian Zhuang1ad99892010-01-08 12:43:29 -0500350 select MFD_CORE
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100351 help
352 Say yes here to support for Maxim Semiconductor MAX8925. This is
353 a Power Management IC. This driver provies common support for
354 accessing the device, additional drivers must be enabled in order
355 to use the functionality of the device.
356
MyungJoo Ham527e7e92011-03-04 15:50:26 +0900357config MFD_MAX8997
358 bool "Maxim Semiconductor MAX8997/8966 PMIC Support"
359 depends on I2C=y && GENERIC_HARDIRQS
360 select MFD_CORE
361 help
362 Say yes here to support for Maxim Semiconductor MAX8998/8966.
363 This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic,
364 MUIC controls on chip.
Randy Dunlapd7e8c012011-03-14 11:28:37 +0100365 This driver provides common support for accessing the device;
MyungJoo Ham527e7e92011-03-04 15:50:26 +0900366 additional drivers must be enabled in order to use the functionality
367 of the device.
368
Kyungmin Park156f2522010-06-16 09:04:16 +0200369config MFD_MAX8998
Kyungmin Parkf8539dd2010-08-23 13:46:49 +0900370 bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support"
Joonyoung Shim2c7e6f52010-09-10 18:36:39 +0200371 depends on I2C=y && GENERIC_HARDIRQS
Kyungmin Park156f2522010-06-16 09:04:16 +0200372 select MFD_CORE
373 help
Kyungmin Parkf8539dd2010-08-23 13:46:49 +0900374 Say yes here to support for Maxim Semiconductor MAX8998 and
375 National Semiconductor LP3974. This is a Power Management IC.
376 This driver provies common support for accessing the device,
377 additional drivers must be enabled in order to use the functionality
378 of the device.
Kyungmin Park156f2522010-06-16 09:04:16 +0200379
Mark Brown1d9f9f02008-09-10 18:58:42 +0100380config MFD_WM8400
381 tristate "Support Wolfson Microelectronics WM8400"
Mark Brownb8380c12008-12-18 10:54:22 +0100382 select MFD_CORE
Mark Brown9c366452008-10-24 17:16:11 +0200383 depends on I2C
Mark Brown1d9f9f02008-09-10 18:58:42 +0100384 help
385 Support for the Wolfson Microelecronics WM8400 PMIC and audio
Mark Brown9e5aca52009-05-29 11:34:18 +0100386 CODEC. This driver provides common support for accessing
Mark Brown1d9f9f02008-09-10 18:58:42 +0100387 the device, additional drivers must be enabled in order to use
388 the functionality of the device.
389
Mark Brownb11062b2009-07-27 14:45:58 +0100390config MFD_WM831X
Mark Browne5b48682010-10-19 23:57:56 +0200391 bool
392 depends on GENERIC_HARDIRQS
393
394config MFD_WM831X_I2C
395 bool "Support Wolfson Microelectronics WM831x/2x PMICs with I2C"
Mark Brownb11062b2009-07-27 14:45:58 +0100396 select MFD_CORE
Mark Browne5b48682010-10-19 23:57:56 +0200397 select MFD_WM831X
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100398 depends on I2C=y && GENERIC_HARDIRQS
Mark Brownb11062b2009-07-27 14:45:58 +0100399 help
Mark Browne5b48682010-10-19 23:57:56 +0200400 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
401 when controlled using I2C. This driver provides common support
402 for accessing the device, additional drivers must be enabled in
403 order to use the functionality of the device.
Mark Brownb11062b2009-07-27 14:45:58 +0100404
Mark Brown2aa13b92010-10-20 00:00:11 +0200405config MFD_WM831X_SPI
406 bool "Support Wolfson Microelectronics WM831x/2x PMICs with SPI"
407 select MFD_CORE
408 select MFD_WM831X
409 depends on SPI_MASTER && GENERIC_HARDIRQS
410 help
411 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
412 when controlled using SPI. This driver provides common support
413 for accessing the device, additional drivers must be enabled in
414 order to use the functionality of the device.
415
Mark Brown89b40122008-10-10 15:58:10 +0100416config MFD_WM8350
Mark Brownecf926b2010-01-05 20:40:47 +0000417 bool
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100418 depends on GENERIC_HARDIRQS
Mark Brown89b40122008-10-10 15:58:10 +0100419
420config MFD_WM8350_CONFIG_MODE_0
421 bool
422 depends on MFD_WM8350
423
424config MFD_WM8350_CONFIG_MODE_1
425 bool
426 depends on MFD_WM8350
427
428config MFD_WM8350_CONFIG_MODE_2
429 bool
430 depends on MFD_WM8350
431
432config MFD_WM8350_CONFIG_MODE_3
433 bool
434 depends on MFD_WM8350
435
Mark Brownca23f8c2008-12-18 23:12:28 +0100436config MFD_WM8351_CONFIG_MODE_0
437 bool
438 depends on MFD_WM8350
439
440config MFD_WM8351_CONFIG_MODE_1
441 bool
442 depends on MFD_WM8350
443
444config MFD_WM8351_CONFIG_MODE_2
445 bool
446 depends on MFD_WM8350
447
448config MFD_WM8351_CONFIG_MODE_3
449 bool
450 depends on MFD_WM8350
451
Mark Brown96920632008-12-18 23:09:50 +0100452config MFD_WM8352_CONFIG_MODE_0
453 bool
454 depends on MFD_WM8350
455
456config MFD_WM8352_CONFIG_MODE_1
457 bool
458 depends on MFD_WM8350
459
460config MFD_WM8352_CONFIG_MODE_2
461 bool
462 depends on MFD_WM8350
463
464config MFD_WM8352_CONFIG_MODE_3
465 bool
466 depends on MFD_WM8350
467
Mark Brownc661a0b2008-10-10 15:58:11 +0100468config MFD_WM8350_I2C
Mark Brownecf926b2010-01-05 20:40:47 +0000469 bool "Support Wolfson Microelectronics WM8350 with I2C"
Mark Brownc661a0b2008-10-10 15:58:11 +0100470 select MFD_WM8350
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100471 depends on I2C=y && GENERIC_HARDIRQS
Mark Brownc661a0b2008-10-10 15:58:11 +0100472 help
473 The WM8350 is an integrated audio and power management
474 subsystem with watchdog and RTC functionality for embedded
475 systems. This option enables core support for the WM8350 with
476 I2C as the control interface. Additional options must be
477 selected to enable support for the functionality of the chip.
478
Mark Brown9e501082010-01-29 18:20:29 +0000479config MFD_WM8994
Mark Brownc9fbf7e2010-03-26 16:49:15 +0000480 bool "Support Wolfson Microelectronics WM8994"
Mark Brown9e501082010-01-29 18:20:29 +0000481 select MFD_CORE
Mark Brownc9fbf7e2010-03-26 16:49:15 +0000482 depends on I2C=y && GENERIC_HARDIRQS
Mark Brown9e501082010-01-29 18:20:29 +0000483 help
484 The WM8994 is a highly integrated hi-fi CODEC designed for
485 smartphone applicatiosn. As well as audio functionality it
486 has on board GPIO and regulator functionality which is
487 supported via the relevant subsystems. This driver provides
488 core support for the WM8994, in order to use the actual
489 functionaltiy of the device other drivers must be enabled.
490
Balaji Raof52046b2009-01-09 01:49:01 +0100491config MFD_PCF50633
492 tristate "Support for NXP PCF50633"
493 depends on I2C
494 help
495 Say yes here if you have NXP PCF50633 chip on your board.
496 This core driver provides register access and IRQ handling
497 facilities, and registers devices for the various functions
498 so that function-specific drivers can bind to them.
499
Axel Lin13051342011-04-15 20:06:37 +0800500config PCF50633_ADC
501 tristate "Support for NXP PCF50633 ADC"
502 depends on MFD_PCF50633
503 help
504 Say yes here if you want to include support for ADC in the
505 NXP PCF50633 chip.
506
507config PCF50633_GPIO
508 tristate "Support for NXP PCF50633 GPIO"
509 depends on MFD_PCF50633
510 help
511 Say yes here if you want to include support GPIO for pins on
512 the PCF50633 chip.
513
Sascha Hauer8238add2009-08-19 01:40:28 +0200514config MFD_MC13783
Uwe Kleine-König8e005932010-09-28 16:37:20 +0200515 tristate
516
517config MFD_MC13XXX
518 tristate "Support Freescale MC13783 and MC13892"
Sascha Hauer8238add2009-08-19 01:40:28 +0200519 depends on SPI_MASTER
520 select MFD_CORE
Uwe Kleine-König8e005932010-09-28 16:37:20 +0200521 select MFD_MC13783
Sascha Hauer8238add2009-08-19 01:40:28 +0200522 help
Uwe Kleine-König8e005932010-09-28 16:37:20 +0200523 Support for the Freescale (Atlas) PMIC and audio CODECs
524 MC13783 and MC13892.
Sascha Hauer8238add2009-08-19 01:40:28 +0200525 This driver provides common support for accessing the device,
526 additional drivers must be enabled in order to use the
527 functionality of the device.
528
Mattias Wallinfa661252010-05-01 18:26:20 +0200529config ABX500_CORE
530 bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions"
Mattias Wallin47c16972010-09-10 17:47:56 +0200531 default y if ARCH_U300 || ARCH_U8500
Mattias Wallinfa661252010-05-01 18:26:20 +0200532 help
533 Say yes here if you have the ABX500 Mixed Signal IC family
534 chips. This core driver expose register access functions.
535 Functionality specific drivers using these functions can
536 remain unchanged when IC changes. Binding of the functions to
537 actual register access is done by the IC core driver.
538
Linus Walleij14fa5692009-05-21 23:17:06 +0200539config AB3100_CORE
Linus Walleij2071db42010-01-19 11:41:52 +0100540 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
Mattias Wallinfa661252010-05-01 18:26:20 +0200541 depends on I2C=y && ABX500_CORE
Linus Walleij8c96aef2010-08-20 10:27:12 +0200542 select MFD_CORE
Linus Walleij14fa5692009-05-21 23:17:06 +0200543 default y if ARCH_U300
544 help
545 Select this to enable the AB3100 Mixed Signal IC core
546 functionality. This connects to a AB3100 on the I2C bus
547 and expose a number of symbols needed for dependent devices
548 to read and write registers and subscribe to events from
549 this multi-functional IC. This is needed to use other features
550 of the AB3100 such as battery-backed RTC, charging control,
551 LEDs, vibrator, system power and temperature, power management
552 and ALSA sound.
553
Linus Walleij12992dd2009-08-18 22:52:26 +0200554config AB3100_OTP
555 tristate "ST-Ericsson AB3100 OTP functions"
556 depends on AB3100_CORE
557 default y if AB3100_CORE
558 help
559 Select this to enable the AB3100 Mixed Signal IC OTP (one-time
560 programmable memory) support. This exposes a sysfs file to read
561 out OTP values.
562
Daniel Ribeiro13a09f92009-05-28 15:43:37 -0300563config EZX_PCAP
564 bool "PCAP Support"
565 depends on GENERIC_HARDIRQS && SPI_MASTER
566 help
567 This enables the PCAP ASIC present on EZX Phones. This is
568 needed for MMC, TouchScreen, Sound, USB, etc..
569
Rabin Vincent62579262010-05-19 11:39:02 +0200570config AB8500_CORE
571 bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
Sundar Iyer6680d942010-12-24 11:52:08 +0100572 depends on GENERIC_HARDIRQS && ABX500_CORE
Rabin Vincent62579262010-05-19 11:39:02 +0200573 select MFD_CORE
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200574 help
Rabin Vincent62579262010-05-19 11:39:02 +0200575 Select this option to enable access to AB8500 power management
Sundar Iyer6680d942010-12-24 11:52:08 +0100576 chip. This connects to U8500 either on the SSP/SPI bus (deprecated
577 since hardware version v1.0) or the I2C bus via PRCMU. It also adds
578 the irq_chip parts for handling the Mixed Signal chip events.
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200579 This chip embeds various other multimedia funtionalities as well.
580
Mattias Wallin39368ed2010-09-15 13:12:03 +0200581config AB8500_I2C_CORE
582 bool "AB8500 register access via PRCMU I2C"
Linus Walleij650c2a22011-05-15 22:53:56 +0200583 depends on AB8500_CORE && MFD_DB8500_PRCMU
Mattias Wallin39368ed2010-09-15 13:12:03 +0200584 default y
585 help
586 This enables register access to the AB8500 chip via PRCMU I2C.
587 The AB8500 chip can be accessed via SPI or I2C. On DB8500 hardware
588 the I2C bus is connected to the Power Reset
589 and Mangagement Unit, PRCMU.
590
Mattias Wallin5814fc32010-09-13 16:05:04 +0200591config AB8500_DEBUG
592 bool "Enable debug info via debugfs"
593 depends on AB8500_CORE && DEBUG_FS
594 default y if DEBUG_FS
595 help
596 Select this option if you want debug information using the debug
597 filesystem, debugfs.
598
Arun Murthydae2db32011-02-22 10:11:13 +0100599config AB8500_GPADC
600 bool "AB8500 GPADC driver"
601 depends on AB8500_CORE && REGULATOR_AB8500
602 default y
603 help
604 AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage
605
Mattias Wallin09bcb3f2010-05-11 00:25:29 +0200606config AB3550_CORE
607 bool "ST-Ericsson AB3550 Mixed Signal Circuit core functions"
608 select MFD_CORE
609 depends on I2C=y && GENERIC_HARDIRQS && ABX500_CORE
610 help
611 Select this to enable the AB3550 Mixed Signal IC core
612 functionality. This connects to a AB3550 on the I2C bus
613 and expose a number of symbols needed for dependent devices
614 to read and write registers and subscribe to events from
615 this multi-functional IC. This is needed to use other features
616 of the AB3550 such as battery-backed RTC, charging control,
617 LEDs, vibrator, system power and temperature, power management
618 and ALSA sound.
619
Linus Walleij650c2a22011-05-15 22:53:56 +0200620config MFD_DB8500_PRCMU
621 bool "ST-Ericsson DB8500 Power Reset Control Management Unit"
622 depends on UX500_SOC_DB8500
623 select MFD_CORE
624 help
625 Select this option to enable support for the DB8500 Power Reset
626 and Control Management Unit. This is basically an autonomous
627 system controller running an XP70 microprocessor, which is accessed
628 through a register map.
629
Linus Walleij83177972011-05-03 18:14:48 +0200630config MFD_DB5500_PRCMU
631 bool "ST-Ericsson DB5500 Power Reset Control Management Unit"
632 depends on UX500_SOC_DB5500
633 select MFD_CORE
634 help
635 Select this option to enable support for the DB5500 Power Reset
636 and Control Management Unit. This is basically an autonomous
637 system controller running an XP70 microprocessor, which is accessed
638 through a register map.
639
Andres Salomonf71e1af2010-11-26 11:52:35 +0100640config MFD_CS5535
641 tristate "Support for CS5535 and CS5536 southbridge core functions"
642 select MFD_CORE
Andres Salomon15b7cf12011-03-27 21:26:03 -0700643 depends on PCI && X86
Andres Salomonf71e1af2010-11-26 11:52:35 +0100644 ---help---
645 This is the core driver for CS5535/CS5536 MFD functions. This is
646 necessary for using the board's GPIO and MFGPT functionality.
647
Richard Röjfors8edbede2010-02-04 08:18:52 -0300648config MFD_TIMBERDALE
649 tristate "Support for the Timberdale FPGA"
650 select MFD_CORE
Randy Dunlap546e29b62010-02-12 12:30:55 -0300651 depends on PCI && GPIOLIB
Richard Röjfors8edbede2010-02-04 08:18:52 -0300652 ---help---
653 This is the core driver for the timberdale FPGA. This device is a
654 multifunction device which exposes numerous platform devices.
655
656 The timberdale FPGA can be found on the Intel Atom development board
657 for in-vehicle infontainment, called Russellville.
Denis Turischeve82c60a2010-02-19 11:26:25 +0100658
659config LPC_SCH
660 tristate "Intel SCH LPC"
661 depends on PCI
662 select MFD_CORE
663 help
664 LPC bridge function of the Intel SCH provides support for
665 System Management Bus and General Purpose I/O.
666
Florian Fainellie090d502010-03-21 01:06:05 +0100667config MFD_RDC321X
668 tristate "Support for RDC-R321x southbridge"
669 select MFD_CORE
670 depends on PCI
671 help
672 Say yes here if you want to have support for the RDC R-321x SoC
673 southbridge which provides access to GPIOs and Watchdog using the
674 southbridge PCI device configuration space.
675
Ira W. Snyderbd358132010-04-07 09:43:00 +0200676config MFD_JANZ_CMODIO
677 tristate "Support for Janz CMOD-IO PCI MODULbus Carrier Board"
678 select MFD_CORE
679 depends on PCI
680 help
681 This is the core driver for the Janz CMOD-IO PCI MODULbus
682 carrier board. This device is a PCI to MODULbus bridge which may
683 host many different types of MODULbus daughterboards, including
684 CAN and GPIO controllers.
685
Lars-Peter Clausen91f4deb2010-07-12 03:48:08 +0200686config MFD_JZ4740_ADC
Lars-Peter Clausen914e6d42011-06-03 03:14:26 +0200687 bool "Support for the JZ4740 SoC ADC core"
Lars-Peter Clausen91f4deb2010-07-12 03:48:08 +0200688 select MFD_CORE
Lars-Peter Clausen914e6d42011-06-03 03:14:26 +0200689 select GENERIC_IRQ_CHIP
Lars-Peter Clausen91f4deb2010-07-12 03:48:08 +0200690 depends on MACH_JZ4740
691 help
692 Say yes here if you want support for the ADC unit in the JZ4740 SoC.
693 This driver is necessary for jz4740-battery and jz4740-hwmon driver.
694
Daniel Drake375fc772010-09-30 21:55:41 +0100695config MFD_VX855
696 tristate "Support for VIA VX855/VX875 integrated south bridge"
697 depends on PCI
698 select MFD_CORE
699 help
700 Say yes here to enable support for various functions of the
701 VIA VX855/VX875 south bridge. You will need to enable the vx855_spi
702 and/or vx855_gpio drivers for this to do anything useful.
703
Matti Aaltonen383268a2010-12-10 11:41:33 -0300704config MFD_WL1273_CORE
Matti Aaltonen94fd5b72011-03-01 10:10:35 -0300705 tristate "Support for TI WL1273 FM radio."
Matti Aaltonen383268a2010-12-10 11:41:33 -0300706 depends on I2C
707 select MFD_CORE
708 default n
709 help
710 This is the core driver for the TI WL1273 FM radio. This MFD
711 driver connects the radio-wl1273 V4L2 module and the wl1273
712 audio codec.
713
Keshava Munegowda17cdd292011-03-01 20:08:17 +0530714config MFD_OMAP_USB_HOST
715 bool "Support OMAP USBHS core driver"
716 depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3
717 default y
718 help
719 This is the core driver for the OAMP EHCI and OHCI drivers.
720 This MFD driver does the required setup functionalities for
721 OMAP USB Host drivers.
722
Abhijeet Dharmapurikarcbdb53e2011-04-05 14:40:52 -0700723config MFD_PM8XXX
724 tristate
725
726config MFD_PM8921_CORE
727 tristate "Qualcomm PM8921 PMIC chip"
728 depends on MSM_SSBI
729 select MFD_CORE
730 select MFD_PM8XXX
731 help
732 If you say yes to this option, support will be included for the
733 built-in PM8921 PMIC chip.
734
735 This is required if your board has a PM8921 and uses its features,
736 such as: MPPs, GPIOs, regulators, interrupts, and PWM.
737
738 Say M here if you want to include support for PM8921 chip as a module.
739 This will build a module called "pm8921-core".
740
Abhijeet Dharmapurikarc013f0a2011-04-05 14:40:53 -0700741config MFD_PM8XXX_IRQ
742 bool "Support for Qualcomm PM8xxx IRQ features"
743 depends on MFD_PM8XXX
744 default y if MFD_PM8XXX
745 help
746 This is the IRQ driver for Qualcomm PM 8xxx PMIC chips.
747
748 This is required to use certain other PM 8xxx features, such as GPIO
749 and MPP.
750
Graeme Gregory27c67502011-05-02 16:19:46 -0500751config MFD_TPS65910
Jorge Eduardo Candelariaaec519b2011-05-10 12:30:36 -0500752 bool "TPS65910 Power Management chip"
Liam Girdwood66c500f2011-05-27 22:13:08 +0100753 depends on I2C=y && GPIOLIB
Graeme Gregory27c67502011-05-02 16:19:46 -0500754 select MFD_CORE
Jorge Eduardo Candelaria83545d82011-05-16 18:35:37 -0500755 select GPIO_TPS65910
Graeme Gregory27c67502011-05-02 16:19:46 -0500756 help
757 if you say yes here you get support for the TPS65910 series of
758 Power Management chips.
759
Axel Lin8509e142011-06-23 10:15:51 +0800760config TPS65911_COMPARATOR
761 tristate
762
Randy Dunlap38270642010-05-11 01:07:34 +0200763endif # MFD_SUPPORT
Ben Dooksb6d64542007-02-20 13:58:01 -0800764
Russell Kinga4e137a2005-08-18 10:06:59 +0100765menu "Multimedia Capabilities Port drivers"
Adrian Bunkf751d502006-03-24 03:18:21 -0800766 depends on ARCH_SA1100
Russell Kinga4e137a2005-08-18 10:06:59 +0100767
768config MCP
769 tristate
770
Russell King5e742ad2005-08-18 10:08:15 +0100771# Interface drivers
772config MCP_SA11X0
773 tristate "Support SA11x0 MCP interface"
774 depends on ARCH_SA1100
775 select MCP
776
Russell King05c45ca2005-09-11 10:26:31 +0100777# Chip drivers
778config MCP_UCB1200
779 tristate "Support for UCB1200 / UCB1300"
780 depends on MCP
781
Russell Kingacb45432005-09-11 10:26:57 +0100782config MCP_UCB1200_TS
783 tristate "Touchscreen interface support"
784 depends on MCP_UCB1200 && INPUT
785
Russell Kinga4e137a2005-08-18 10:06:59 +0100786endmenu