blob: 16178e1d2ab47cc724c7e82bc4444e41ada6f650 [file] [log] [blame]
Russell Kinga4e137a2005-08-18 10:06:59 +01001#
2# Multifunction miscellaneous devices
3#
4
Arnd Bergmann8a0a8e82011-09-02 16:43:36 +02005if HAS_IOMEM
6menu "Multifunction device drivers"
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
Jett.Zhoub46a36c2011-11-11 15:38:27 +080015 select REGMAP_I2C
Haojian Zhuang2cc50be2010-01-06 17:07:13 -050016 select MFD_CORE
17 help
18 This supports for Marvell 88PM8606/88PM8607 Power Management IC.
19 This includes the I2C driver and the core APIs _only_, you have to
20 select individual components like voltage regulators, RTC and
21 battery-charger under the corresponding menus.
22
Ben Dooksb6d64542007-02-20 13:58:01 -080023config MFD_SM501
24 tristate "Support for Silicon Motion SM501"
25 ---help---
26 This is the core driver for the Silicon Motion SM501 multimedia
27 companion chip. This device is a multifunction device which may
Matt LaPlante01dd2fb2007-10-20 01:34:40 +020028 provide numerous interfaces including USB host controller, USB gadget,
29 asynchronous serial ports, audio functions, and a dual display video
Ben Dooksb6d64542007-02-20 13:58:01 -080030 interface. The device may be connected by PCI or local bus with
31 varying functions enabled.
32
Ben Dooksf61be272008-07-25 01:45:59 -070033config MFD_SM501_GPIO
34 bool "Export GPIO via GPIO layer"
Samuel Ortiz2eedd602008-09-25 00:39:05 +020035 depends on MFD_SM501 && GPIOLIB
Ben Dooksf61be272008-07-25 01:45:59 -070036 ---help---
37 This option uses the gpio library layer to export the 64 GPIO
38 lines on the SM501. The platform data is used to supply the
39 base number for the first GPIO line to register.
40
Samuel Ortizfa9ff4b2008-02-07 00:14:49 -080041config MFD_ASIC3
42 bool "Support for Compaq ASIC3"
Samuel Ortiz2eedd602008-09-25 00:39:05 +020043 depends on GENERIC_HARDIRQS && GPIOLIB && ARM
Philipp Zabel9461f652009-06-15 12:10:24 +020044 select MFD_CORE
Samuel Ortizfa9ff4b2008-02-07 00:14:49 -080045 ---help---
46 This driver supports the ASIC3 multifunction chip found on many
47 PDAs (mainly iPAQ and HTC based ones)
48
Miguel Aguilarca263082010-03-11 09:32:21 -060049config MFD_DAVINCI_VOICECODEC
50 tristate
51 select MFD_CORE
52
David Brownell0931a4c2008-12-22 12:05:27 +010053config MFD_DM355EVM_MSP
54 bool "DaVinci DM355 EVM microcontroller"
Samuel Ortiz1819ebc2010-09-20 00:19:27 +020055 depends on I2C=y && MACH_DAVINCI_DM355_EVM
David Brownell0931a4c2008-12-22 12:05:27 +010056 help
57 This driver supports the MSP430 microcontroller used on these
58 boards. MSP430 firmware manages resets and power sequencing,
59 inputs from buttons and the IR remote, LEDs, an RTC, and more.
60
Cyril Chemparathy03df0f62011-01-18 19:21:35 +000061config MFD_TI_SSP
62 tristate "TI Sequencer Serial Port support"
63 depends on ARCH_DAVINCI_TNETV107X
64 select MFD_CORE
65 ---help---
66 Say Y here if you want support for the Sequencer Serial Port
67 in a Texas Instruments TNETV107X SoC.
68
69 To compile this driver as a module, choose M here: the
70 module will be called ti-ssp.
71
Philipp Zabela1635b82008-04-09 19:20:34 +010072config HTC_EGPIO
73 bool "HTC EGPIO support"
Michael Buesch7444a722008-07-25 01:46:11 -070074 depends on GENERIC_HARDIRQS && GPIOLIB && ARM
Philipp Zabela1635b82008-04-09 19:20:34 +010075 help
76 This driver supports the CPLD egpio chip present on
77 several HTC phones. It provides basic support for input
78 pins, output pins, and irqs.
79
Philipp Zabel5dc33392008-04-12 13:25:41 +010080config HTC_PASIC3
81 tristate "HTC PASIC3 LED/DS1WM chip support"
Philipp Zabel0254a8f2009-02-17 10:06:45 +010082 select MFD_CORE
Philipp Zabel5dc33392008-04-12 13:25:41 +010083 help
84 This core driver provides register access for the LED/DS1WM
85 chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
86 HTC Magician devices, respectively. Actual functionality is
87 handled by the leds-pasic3 and ds1wm drivers.
88
Cory Maccarrone6048a3d2010-01-19 11:22:45 +010089config HTC_I2CPLD
90 bool "HTC I2C PLD chip support"
Randy Dunlapbef3e202010-01-20 19:55:34 -080091 depends on I2C=y && GPIOLIB
Cory Maccarrone6048a3d2010-01-19 11:22:45 +010092 help
93 If you say yes here you get support for the supposed CPLD
94 found on omap850 HTC devices like the HTC Wizard and HTC Herald.
95 This device provides input and output GPIOs through an I2C
96 interface to one or more sub-chips.
97
Marek Vašutd9105c22008-08-03 21:34:08 +010098config UCB1400_CORE
99 tristate "Philips UCB1400 Core driver"
Randy Dunlape4831802008-10-15 13:29:07 +0200100 depends on AC97_BUS
Andrew Morton5a49a542008-10-15 13:30:47 +0200101 depends on GPIOLIB
Marek Vašutd9105c22008-08-03 21:34:08 +0100102 help
103 This enables support for the Philips UCB1400 core functions.
104 The UCB1400 is an AC97 audio codec.
105
106 To compile this driver as a module, choose M here: the
107 module will be called ucb1400_core.
108
Linus Walleij798a8ee2011-03-09 13:02:38 +0100109config TPS6105X
110 tristate "TPS61050/61052 Boost Converters"
111 depends on I2C
Linus Walleij2edd3b62011-03-09 12:02:55 +0000112 select REGULATOR
Guenter Roeckfc498fa2011-03-24 12:12:47 -0700113 select MFD_CORE
Linus Walleij2edd3b62011-03-09 12:02:55 +0000114 select REGULATOR_FIXED_VOLTAGE
Linus Walleij798a8ee2011-03-09 13:02:38 +0100115 help
116 This option enables a driver for the TP61050/TPS61052
117 high-power "white LED driver". This boost converter is
118 sometimes used for other things than white LEDs, and
119 also contains a GPIO pin.
120
David Brownell87c13492008-12-22 12:16:27 +0100121config TPS65010
122 tristate "TPS6501x Power Management chips"
123 depends on I2C && GPIOLIB
124 default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
125 help
126 If you say yes here you get support for the TPS6501x series of
127 Power Management chips. These include voltage regulators,
128 lithium ion/polymer battery charging, and other features that
129 are often used in portable devices like cell phones and cameras.
130
131 This driver can also be built as a module. If so, the module
132 will be called tps65010.
133
Todd Fischer31dd6a22010-04-08 09:04:55 +0200134config TPS6507X
135 tristate "TPS6507x Power Management / Touch Screen chips"
136 select MFD_CORE
137 depends on I2C
138 help
139 If you say yes here you get support for the TPS6507x series of
140 Power Management / Touch Screen chips. These include voltage
141 regulators, lithium ion/polymer battery charging, touch screen
142 and other features that are often used in portable devices.
143 This driver can also be built as a module. If so, the module
144 will be called tps6507x.
145
AnilKumar Chd48f4112012-01-11 16:11:41 +0530146config MFD_TPS65217
147 tristate "TPS65217 Power Management / White LED chips"
148 depends on I2C
149 select MFD_CORE
150 select REGMAP_I2C
151 help
152 If you say yes here you get support for the TPS65217 series of
153 Power Management / White LED chips.
154 These include voltage regulators, lithium ion/polymer battery
155 charger, wled and other features that are often used in portable
156 devices.
157
158 This driver can also be built as a module. If so, the module
159 will be called tps65217.
160
Axel Lin37df0032011-04-15 20:04:45 +0800161config MFD_TPS6586X
162 bool "TPS6586x Power Management chips"
163 depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS
164 select MFD_CORE
165 help
166 If you say yes here you get support for the TPS6586X series of
167 Power Management chips.
168 This driver provides common support for accessing the device,
169 additional drivers must be enabled in order to use the
170 functionality of the device.
171
172 This driver can also be built as a module. If so, the module
173 will be called tps6586x.
174
Linus Walleij54f323b2011-07-04 17:34:16 +0200175config MFD_TPS65910
176 bool "TPS65910 Power Management chip"
177 depends on I2C=y && GPIOLIB
178 select MFD_CORE
179 select GPIO_TPS65910
Laxman Dewangandc9913a2012-02-21 18:21:34 +0530180 select REGMAP_I2C
Linus Walleij54f323b2011-07-04 17:34:16 +0200181 help
182 if you say yes here you get support for the TPS65910 series of
183 Power Management chips.
184
Margarita Olaya36e52872011-06-09 14:50:00 -0500185config MFD_TPS65912
Mark Brown56088012011-06-22 14:53:58 +0100186 bool
Margarita Olaya36e52872011-06-09 14:50:00 -0500187 depends on GPIOLIB
188
189config MFD_TPS65912_I2C
Axel Lin231dd9c2012-02-15 16:05:24 +0800190 bool "TPS65912 Power Management chip with I2C"
Margarita Olaya36e52872011-06-09 14:50:00 -0500191 select MFD_CORE
192 select MFD_TPS65912
193 depends on I2C=y && GPIOLIB
194 help
195 If you say yes here you get support for the TPS65912 series of
196 PM chips with I2C interface.
197
198config MFD_TPS65912_SPI
199 bool "TPS65912 Power Management chip with SPI"
200 select MFD_CORE
201 select MFD_TPS65912
202 depends on SPI_MASTER && GPIOLIB
203 help
204 If you say yes here you get support for the TPS65912 series of
205 PM chips with SPI interface.
206
David Brownell88e75cc2008-12-22 12:18:02 +0100207config MENELAUS
208 bool "Texas Instruments TWL92330/Menelaus PM chip"
Tony Lindgren088ef952010-02-12 12:26:47 -0800209 depends on I2C=y && ARCH_OMAP2
David Brownell88e75cc2008-12-22 12:18:02 +0100210 help
211 If you say yes here you get support for the Texas Instruments
212 TWL92330/Menelaus Power Management chip. This include voltage
Matt LaPlante692105b2009-01-26 11:12:25 +0100213 regulators, Dual slot memory card transceivers, real-time clock
David Brownell88e75cc2008-12-22 12:18:02 +0100214 and other features that are often used in portable devices like
215 cell phones and PDAs.
216
David Brownella603a7f2008-10-15 12:15:39 +0200217config TWL4030_CORE
Balaji T Ke8deb282009-12-14 00:25:31 +0100218 bool "Texas Instruments TWL4030/TWL5030/TWL6030/TPS659x0 Support"
Russell King62525472012-02-07 09:47:21 +0000219 depends on I2C=y && GENERIC_HARDIRQS
David Brownella603a7f2008-10-15 12:15:39 +0200220 help
Balaji T Ke8deb282009-12-14 00:25:31 +0100221 Say yes here if you have TWL4030 / TWL6030 family chip on your board.
David Brownella603a7f2008-10-15 12:15:39 +0200222 This core driver provides register access and IRQ handling
223 facilities, and registers devices for the various functions
224 so that function-specific drivers can bind to them.
225
226 These multi-function chips are found on many OMAP2 and OMAP3
227 boards, providing power management, RTC, GPIO, keypad, a
228 high speed USB OTG transceiver, an audio codec (on most
229 versions) and many other features.
230
Keerthyf99c1d42011-03-01 19:12:26 +0530231config TWL4030_MADC
232 tristate "Texas Instruments TWL4030 MADC"
233 depends on TWL4030_CORE
234 help
235 This driver provides support for triton TWL4030-MADC. The
236 driver supports both RT and SW conversion methods.
237
238 This driver can be built as a module. If so it will be
239 named twl4030-madc
240
Amit Kucheriaebf0bd32009-08-31 18:32:18 +0200241config TWL4030_POWER
242 bool "Support power resources on TWL4030 family chips"
243 depends on TWL4030_CORE && ARM
244 help
245 Say yes here if you want to use the power resources on the
246 TWL4030 family chips. Most of these resources are regulators,
247 which have a separate driver; some are control signals, such
248 as clock request handshaking.
249
250 This driver uses board-specific data to initialize the resources
Lucas De Marchi25985ed2011-03-30 22:57:33 -0300251 and load scripts controlling which resources are switched off/on
Amit Kucheriaebf0bd32009-08-31 18:32:18 +0200252 or reset when a sleep, wakeup or warm reset event occurs.
253
Peter Ujfalusi57fe7252011-05-31 12:02:49 +0300254config MFD_TWL4030_AUDIO
Peter Ujfalusi0b83dde2009-10-22 13:26:45 +0300255 bool
256 depends on TWL4030_CORE
257 select MFD_CORE
258 default n
259
Hemanth V31fc03d2010-07-14 12:04:56 +0200260config TWL6030_PWM
261 tristate "TWL6030 PWM (Pulse Width Modulator) Support"
262 depends on TWL4030_CORE
263 select HAVE_PWM
264 default n
265 help
266 Say yes here if you want support for TWL6030 PWM.
267 This is used to control charging LED brightness.
268
Misael Lopez Cruzf19b2822011-04-27 02:14:07 -0500269config TWL6040_CORE
270 bool
271 depends on TWL4030_CORE && GENERIC_HARDIRQS
272 select MFD_CORE
273 default n
274
Rabin Vincent27e34992010-07-02 16:52:08 +0530275config MFD_STMPE
276 bool "Support STMicroelectronics STMPE"
Viresh Kumare7899952011-11-17 11:02:21 +0530277 depends on (I2C=y || SPI_MASTER=y) && GENERIC_HARDIRQS
Rabin Vincent27e34992010-07-02 16:52:08 +0530278 select MFD_CORE
279 help
280 Support for the STMPE family of I/O Expanders from
281 STMicroelectronics.
282
283 Currently supported devices are:
284
285 STMPE811: GPIO, Touchscreen
286 STMPE1601: GPIO, Keypad
287 STMPE2401: GPIO, Keypad
288 STMPE2403: GPIO, Keypad
289
290 This driver provides common support for accessing the device,
291 additional drivers must be enabled in order to use the functionality
292 of the device. Currently available sub drivers are:
293
294 GPIO: stmpe-gpio
295 Keypad: stmpe-keypad
296 Touchscreen: stmpe-ts
297
Viresh Kumar1a6e4b72011-11-17 11:02:20 +0530298menu "STMPE Interface Drivers"
299depends on MFD_STMPE
300
301config STMPE_I2C
302 bool "STMPE I2C Inteface"
Samuel Ortizeedea802011-12-20 18:28:19 +0100303 depends on I2C=y
Viresh Kumar1a6e4b72011-11-17 11:02:20 +0530304 default y
305 help
306 This is used to enable I2C interface of STMPE
Viresh Kumare7899952011-11-17 11:02:21 +0530307
308config STMPE_SPI
309 bool "STMPE SPI Inteface"
310 depends on SPI_MASTER
311 help
312 This is used to enable SPI interface of STMPE
Viresh Kumar1a6e4b72011-11-17 11:02:20 +0530313endmenu
314
Sundar Iyerf4e8afd2010-12-13 09:33:13 +0530315config MFD_TC3589X
316 bool "Support Toshiba TC35892 and variants"
Rabin Vincentb4ecd322010-05-10 23:39:47 +0200317 depends on I2C=y && GENERIC_HARDIRQS
318 select MFD_CORE
319 help
Sundar Iyerf4e8afd2010-12-13 09:33:13 +0530320 Support for the Toshiba TC35892 and variants I/O Expander.
Rabin Vincentb4ecd322010-05-10 23:39:47 +0200321
322 This driver provides common support for accessing the device,
323 additional drivers must be enabled in order to use the
324 functionality of the device.
325
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200326config MFD_TMIO
327 bool
328 default n
329
Ian Molton1f192012008-07-15 15:09:43 +0100330config MFD_T7L66XB
331 bool "Support Toshiba T7L66XB"
Al Viro9ca68232008-11-01 18:19:59 +0000332 depends on ARM && HAVE_CLK
Ian Molton1f192012008-07-15 15:09:43 +0100333 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200334 select MFD_TMIO
Ian Molton1f192012008-07-15 15:09:43 +0100335 help
336 Support for Toshiba Mobile IO Controller T7L66XB
337
Ian Moltoncbdfb422008-07-15 15:12:52 +0100338config MFD_TC6387XB
339 bool "Support Toshiba TC6387XB"
Al Viro9ca68232008-11-01 18:19:59 +0000340 depends on ARM && HAVE_CLK
Ian Moltoncbdfb422008-07-15 15:12:52 +0100341 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200342 select MFD_TMIO
Ian Moltoncbdfb422008-07-15 15:12:52 +0100343 help
344 Support for Toshiba Mobile IO Controller TC6387XB
345
Dmitry Baryshkovd6315942008-06-22 12:01:58 +0100346config MFD_TC6393XB
347 bool "Support Toshiba TC6393XB"
Christoph Fritze959da12011-11-29 19:38:38 +0100348 depends on GPIOLIB && ARM && HAVE_CLK
Dmitry Baryshkovf024ff12008-06-27 10:37:57 +0100349 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200350 select MFD_TMIO
Dmitry Baryshkovd6315942008-06-22 12:01:58 +0100351 help
352 Support for Toshiba Mobile IO Controller TC6393XB
353
Samuel Ortiz8e2eaab2008-10-24 17:10:05 +0200354config PMIC_DA903X
355 bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
356 depends on I2C=y
357 help
358 Say yes here to support for Dialog Semiconductor DA9030 (a.k.a
359 ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
360 usually found on PXA processors-based platforms. This includes
361 the I2C driver and the core APIs _only_, you have to select
362 individual components like LCD backlight, voltage regulators,
363 LEDs and battery-charger under the corresponding menus.
364
Ashish Jangam84c99db2011-12-12 20:06:56 +0530365config PMIC_DA9052
366 bool
367 select MFD_CORE
368
Ashish Jangamcfe04472011-12-12 20:37:41 +0530369config MFD_DA9052_SPI
370 bool "Support Dialog Semiconductor DA9052/53 PMIC variants with SPI"
371 select REGMAP_SPI
372 select REGMAP_IRQ
373 select PMIC_DA9052
374 depends on SPI_MASTER=y
375 help
376 Support for the Dialog Semiconductor DA9052 PMIC
377 when controlled using SPI. This driver provides common support
378 for accessing the device, additional drivers must be enabled in
379 order to use the functionality of the device.
380
Ashish Jangam84c99db2011-12-12 20:06:56 +0530381config MFD_DA9052_I2C
382 bool "Support Dialog Semiconductor DA9052/53 PMIC variants with I2C"
383 select REGMAP_I2C
384 select REGMAP_IRQ
385 select PMIC_DA9052
386 depends on I2C=y
387 help
388 Support for the Dialog Semiconductor DA9052 PMIC
389 when controlled using I2C. This driver provides common support
390 for accessing the device, additional drivers must be enabled in
391 order to use the functionality of the device.
392
Michael Hennericha5736e02009-10-12 17:22:38 +0200393config PMIC_ADP5520
394 bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
395 depends on I2C=y
396 help
397 Say yes here to add support for Analog Devices AD5520 and ADP5501,
398 Multifunction Power Management IC. This includes
399 the I2C driver and the core APIs _only_, you have to select
400 individual components like LCD backlight, LEDs, GPIOs and Kepad
401 under the corresponding menus.
402
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100403config MFD_MAX8925
Haojian Zhuang1f1cf8f2010-02-05 16:07:54 +0100404 bool "Maxim Semiconductor MAX8925 PMIC Support"
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100405 depends on I2C=y && GENERIC_HARDIRQS
Haojian Zhuang1ad99892010-01-08 12:43:29 -0500406 select MFD_CORE
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100407 help
408 Say yes here to support for Maxim Semiconductor MAX8925. This is
409 a Power Management IC. This driver provies common support for
410 accessing the device, additional drivers must be enabled in order
411 to use the functionality of the device.
412
MyungJoo Ham527e7e92011-03-04 15:50:26 +0900413config MFD_MAX8997
414 bool "Maxim Semiconductor MAX8997/8966 PMIC Support"
415 depends on I2C=y && GENERIC_HARDIRQS
416 select MFD_CORE
417 help
418 Say yes here to support for Maxim Semiconductor MAX8998/8966.
419 This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic,
420 MUIC controls on chip.
Randy Dunlapd7e8c012011-03-14 11:28:37 +0100421 This driver provides common support for accessing the device;
MyungJoo Ham527e7e92011-03-04 15:50:26 +0900422 additional drivers must be enabled in order to use the functionality
423 of the device.
424
Kyungmin Park156f2522010-06-16 09:04:16 +0200425config MFD_MAX8998
Kyungmin Parkf8539dd2010-08-23 13:46:49 +0900426 bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support"
Joonyoung Shim2c7e6f52010-09-10 18:36:39 +0200427 depends on I2C=y && GENERIC_HARDIRQS
Kyungmin Park156f2522010-06-16 09:04:16 +0200428 select MFD_CORE
429 help
Kyungmin Parkf8539dd2010-08-23 13:46:49 +0900430 Say yes here to support for Maxim Semiconductor MAX8998 and
431 National Semiconductor LP3974. This is a Power Management IC.
432 This driver provies common support for accessing the device,
433 additional drivers must be enabled in order to use the functionality
434 of the device.
Kyungmin Park156f2522010-06-16 09:04:16 +0200435
Sangbeom Kimc3d4d692012-01-09 00:09:09 +0100436config MFD_S5M_CORE
437 bool "SAMSUNG S5M Series Support"
438 depends on I2C=y && GENERIC_HARDIRQS
439 select MFD_CORE
440 select REGMAP_I2C
441 help
442 Support for the Samsung Electronics S5M MFD series.
443 This driver provies common support for accessing the device,
444 additional drivers must be enabled in order to use the functionality
445 of the device
446
Mark Brown1d9f9f02008-09-10 18:58:42 +0100447config MFD_WM8400
448 tristate "Support Wolfson Microelectronics WM8400"
Mark Brownb8380c12008-12-18 10:54:22 +0100449 select MFD_CORE
Mark Brown9c366452008-10-24 17:16:11 +0200450 depends on I2C
Mark Brown2b247d02011-08-23 18:56:19 +0100451 select REGMAP_I2C
Mark Brown1d9f9f02008-09-10 18:58:42 +0100452 help
453 Support for the Wolfson Microelecronics WM8400 PMIC and audio
Mark Brown9e5aca52009-05-29 11:34:18 +0100454 CODEC. This driver provides common support for accessing
Mark Brown1d9f9f02008-09-10 18:58:42 +0100455 the device, additional drivers must be enabled in order to use
456 the functionality of the device.
457
Mark Brownb11062b2009-07-27 14:45:58 +0100458config MFD_WM831X
Mark Browne5b48682010-10-19 23:57:56 +0200459 bool
460 depends on GENERIC_HARDIRQS
461
462config MFD_WM831X_I2C
463 bool "Support Wolfson Microelectronics WM831x/2x PMICs with I2C"
Mark Brownb11062b2009-07-27 14:45:58 +0100464 select MFD_CORE
Mark Browne5b48682010-10-19 23:57:56 +0200465 select MFD_WM831X
Mark Brown1df59812011-06-10 19:28:10 +0100466 select REGMAP_I2C
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100467 depends on I2C=y && GENERIC_HARDIRQS
Mark Brownb11062b2009-07-27 14:45:58 +0100468 help
Mark Browne5b48682010-10-19 23:57:56 +0200469 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
470 when controlled using I2C. This driver provides common support
471 for accessing the device, additional drivers must be enabled in
472 order to use the functionality of the device.
Mark Brownb11062b2009-07-27 14:45:58 +0100473
Mark Brown2aa13b92010-10-20 00:00:11 +0200474config MFD_WM831X_SPI
475 bool "Support Wolfson Microelectronics WM831x/2x PMICs with SPI"
476 select MFD_CORE
477 select MFD_WM831X
Mark Brown1df59812011-06-10 19:28:10 +0100478 select REGMAP_SPI
Mark Brown2aa13b92010-10-20 00:00:11 +0200479 depends on SPI_MASTER && GENERIC_HARDIRQS
480 help
481 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
482 when controlled using SPI. This driver provides common support
483 for accessing the device, additional drivers must be enabled in
484 order to use the functionality of the device.
485
Mark Brown89b40122008-10-10 15:58:10 +0100486config MFD_WM8350
Mark Brownecf926b2010-01-05 20:40:47 +0000487 bool
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100488 depends on GENERIC_HARDIRQS
Mark Brown89b40122008-10-10 15:58:10 +0100489
490config MFD_WM8350_CONFIG_MODE_0
491 bool
492 depends on MFD_WM8350
493
494config MFD_WM8350_CONFIG_MODE_1
495 bool
496 depends on MFD_WM8350
497
498config MFD_WM8350_CONFIG_MODE_2
499 bool
500 depends on MFD_WM8350
501
502config MFD_WM8350_CONFIG_MODE_3
503 bool
504 depends on MFD_WM8350
505
Mark Brownca23f8c2008-12-18 23:12:28 +0100506config MFD_WM8351_CONFIG_MODE_0
507 bool
508 depends on MFD_WM8350
509
510config MFD_WM8351_CONFIG_MODE_1
511 bool
512 depends on MFD_WM8350
513
514config MFD_WM8351_CONFIG_MODE_2
515 bool
516 depends on MFD_WM8350
517
518config MFD_WM8351_CONFIG_MODE_3
519 bool
520 depends on MFD_WM8350
521
Mark Brown96920632008-12-18 23:09:50 +0100522config MFD_WM8352_CONFIG_MODE_0
523 bool
524 depends on MFD_WM8350
525
526config MFD_WM8352_CONFIG_MODE_1
527 bool
528 depends on MFD_WM8350
529
530config MFD_WM8352_CONFIG_MODE_2
531 bool
532 depends on MFD_WM8350
533
534config MFD_WM8352_CONFIG_MODE_3
535 bool
536 depends on MFD_WM8350
537
Mark Brownc661a0b2008-10-10 15:58:11 +0100538config MFD_WM8350_I2C
Mark Brownecf926b2010-01-05 20:40:47 +0000539 bool "Support Wolfson Microelectronics WM8350 with I2C"
Mark Brownc661a0b2008-10-10 15:58:11 +0100540 select MFD_WM8350
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100541 depends on I2C=y && GENERIC_HARDIRQS
Mark Brownc661a0b2008-10-10 15:58:11 +0100542 help
543 The WM8350 is an integrated audio and power management
544 subsystem with watchdog and RTC functionality for embedded
545 systems. This option enables core support for the WM8350 with
546 I2C as the control interface. Additional options must be
547 selected to enable support for the functionality of the chip.
548
Mark Brown9e501082010-01-29 18:20:29 +0000549config MFD_WM8994
Mark Brownc9fbf7e2010-03-26 16:49:15 +0000550 bool "Support Wolfson Microelectronics WM8994"
Mark Brown9e501082010-01-29 18:20:29 +0000551 select MFD_CORE
Mark Brownd6c645fc2011-06-17 13:02:27 +0100552 select REGMAP_I2C
Mark Brown8ab30692011-10-25 10:19:04 +0200553 select REGMAP_IRQ
Mark Brownc9fbf7e2010-03-26 16:49:15 +0000554 depends on I2C=y && GENERIC_HARDIRQS
Mark Brown9e501082010-01-29 18:20:29 +0000555 help
556 The WM8994 is a highly integrated hi-fi CODEC designed for
557 smartphone applicatiosn. As well as audio functionality it
558 has on board GPIO and regulator functionality which is
559 supported via the relevant subsystems. This driver provides
560 core support for the WM8994, in order to use the actual
561 functionaltiy of the device other drivers must be enabled.
562
Balaji Raof52046b2009-01-09 01:49:01 +0100563config MFD_PCF50633
564 tristate "Support for NXP PCF50633"
565 depends on I2C
Mark Brown6e3ad112011-08-08 17:04:40 +0900566 select REGMAP_I2C
Balaji Raof52046b2009-01-09 01:49:01 +0100567 help
568 Say yes here if you have NXP PCF50633 chip on your board.
569 This core driver provides register access and IRQ handling
570 facilities, and registers devices for the various functions
571 so that function-specific drivers can bind to them.
572
Axel Lin13051342011-04-15 20:06:37 +0800573config PCF50633_ADC
574 tristate "Support for NXP PCF50633 ADC"
575 depends on MFD_PCF50633
576 help
577 Say yes here if you want to include support for ADC in the
578 NXP PCF50633 chip.
579
580config PCF50633_GPIO
581 tristate "Support for NXP PCF50633 GPIO"
582 depends on MFD_PCF50633
583 help
584 Say yes here if you want to include support GPIO for pins on
585 the PCF50633 chip.
586
Sascha Hauer8238add2009-08-19 01:40:28 +0200587config MFD_MC13783
Uwe Kleine-König8e005932010-09-28 16:37:20 +0200588 tristate
589
590config MFD_MC13XXX
591 tristate "Support Freescale MC13783 and MC13892"
Sascha Hauer8238add2009-08-19 01:40:28 +0200592 depends on SPI_MASTER
593 select MFD_CORE
Uwe Kleine-König8e005932010-09-28 16:37:20 +0200594 select MFD_MC13783
Sascha Hauer8238add2009-08-19 01:40:28 +0200595 help
Uwe Kleine-König8e005932010-09-28 16:37:20 +0200596 Support for the Freescale (Atlas) PMIC and audio CODECs
597 MC13783 and MC13892.
Sascha Hauer8238add2009-08-19 01:40:28 +0200598 This driver provides common support for accessing the device,
599 additional drivers must be enabled in order to use the
600 functionality of the device.
601
Mattias Wallinfa661252010-05-01 18:26:20 +0200602config ABX500_CORE
603 bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions"
Mattias Wallin47c16972010-09-10 17:47:56 +0200604 default y if ARCH_U300 || ARCH_U8500
Mattias Wallinfa661252010-05-01 18:26:20 +0200605 help
606 Say yes here if you have the ABX500 Mixed Signal IC family
607 chips. This core driver expose register access functions.
608 Functionality specific drivers using these functions can
609 remain unchanged when IC changes. Binding of the functions to
610 actual register access is done by the IC core driver.
611
Linus Walleij14fa5692009-05-21 23:17:06 +0200612config AB3100_CORE
Linus Walleij2071db42010-01-19 11:41:52 +0100613 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
Mattias Wallinfa661252010-05-01 18:26:20 +0200614 depends on I2C=y && ABX500_CORE
Linus Walleij8c96aef2010-08-20 10:27:12 +0200615 select MFD_CORE
Linus Walleij14fa5692009-05-21 23:17:06 +0200616 default y if ARCH_U300
617 help
618 Select this to enable the AB3100 Mixed Signal IC core
619 functionality. This connects to a AB3100 on the I2C bus
620 and expose a number of symbols needed for dependent devices
621 to read and write registers and subscribe to events from
622 this multi-functional IC. This is needed to use other features
623 of the AB3100 such as battery-backed RTC, charging control,
624 LEDs, vibrator, system power and temperature, power management
625 and ALSA sound.
626
Linus Walleij12992dd2009-08-18 22:52:26 +0200627config AB3100_OTP
628 tristate "ST-Ericsson AB3100 OTP functions"
629 depends on AB3100_CORE
630 default y if AB3100_CORE
631 help
632 Select this to enable the AB3100 Mixed Signal IC OTP (one-time
633 programmable memory) support. This exposes a sysfs file to read
634 out OTP values.
635
Daniel Ribeiro13a09f92009-05-28 15:43:37 -0300636config EZX_PCAP
637 bool "PCAP Support"
638 depends on GENERIC_HARDIRQS && SPI_MASTER
639 help
640 This enables the PCAP ASIC present on EZX Phones. This is
641 needed for MMC, TouchScreen, Sound, USB, etc..
642
Mattias Wallin3d5e2ca2011-09-22 08:22:18 +0200643config AB5500_CORE
644 bool "ST-Ericsson AB5500 Mixed Signal Power Management chip"
645 depends on ABX500_CORE && MFD_DB5500_PRCMU
646 select MFD_CORE
647 help
648 Select this option to enable access to AB5500 power management
649 chip. This connects to the db5500 chip via the I2C bus via PRCMU.
650 This chip embeds various other multimedia funtionalities as well.
651
Linus Walleij94be70d2011-09-22 08:22:33 +0200652config AB5500_DEBUG
653 bool "Enable debug info via debugfs"
654 depends on AB5500_CORE && DEBUG_FS
655 default y if DEBUG_FS
656 help
657 Select this option if you want debug information from the AB5500
658 using the debug filesystem, debugfs.
659
Rabin Vincent62579262010-05-19 11:39:02 +0200660config AB8500_CORE
661 bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
Sundar Iyer6680d942010-12-24 11:52:08 +0100662 depends on GENERIC_HARDIRQS && ABX500_CORE
Rabin Vincent62579262010-05-19 11:39:02 +0200663 select MFD_CORE
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200664 help
Rabin Vincent62579262010-05-19 11:39:02 +0200665 Select this option to enable access to AB8500 power management
Sundar Iyer6680d942010-12-24 11:52:08 +0100666 chip. This connects to U8500 either on the SSP/SPI bus (deprecated
667 since hardware version v1.0) or the I2C bus via PRCMU. It also adds
668 the irq_chip parts for handling the Mixed Signal chip events.
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200669 This chip embeds various other multimedia funtionalities as well.
670
Mattias Wallin39368ed2010-09-15 13:12:03 +0200671config AB8500_I2C_CORE
672 bool "AB8500 register access via PRCMU I2C"
Linus Walleij650c2a22011-05-15 22:53:56 +0200673 depends on AB8500_CORE && MFD_DB8500_PRCMU
Mattias Wallin39368ed2010-09-15 13:12:03 +0200674 default y
675 help
676 This enables register access to the AB8500 chip via PRCMU I2C.
677 The AB8500 chip can be accessed via SPI or I2C. On DB8500 hardware
678 the I2C bus is connected to the Power Reset
679 and Mangagement Unit, PRCMU.
680
Mattias Wallin5814fc32010-09-13 16:05:04 +0200681config AB8500_DEBUG
682 bool "Enable debug info via debugfs"
683 depends on AB8500_CORE && DEBUG_FS
684 default y if DEBUG_FS
685 help
686 Select this option if you want debug information using the debug
687 filesystem, debugfs.
688
Arun Murthydae2db32011-02-22 10:11:13 +0100689config AB8500_GPADC
690 bool "AB8500 GPADC driver"
691 depends on AB8500_CORE && REGULATOR_AB8500
692 default y
693 help
694 AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage
695
Linus Walleij650c2a22011-05-15 22:53:56 +0200696config MFD_DB8500_PRCMU
697 bool "ST-Ericsson DB8500 Power Reset Control Management Unit"
698 depends on UX500_SOC_DB8500
699 select MFD_CORE
700 help
701 Select this option to enable support for the DB8500 Power Reset
702 and Control Management Unit. This is basically an autonomous
703 system controller running an XP70 microprocessor, which is accessed
704 through a register map.
705
Linus Walleij83177972011-05-03 18:14:48 +0200706config MFD_DB5500_PRCMU
707 bool "ST-Ericsson DB5500 Power Reset Control Management Unit"
708 depends on UX500_SOC_DB5500
709 select MFD_CORE
710 help
711 Select this option to enable support for the DB5500 Power Reset
712 and Control Management Unit. This is basically an autonomous
713 system controller running an XP70 microprocessor, which is accessed
714 through a register map.
715
Andres Salomonf71e1af2010-11-26 11:52:35 +0100716config MFD_CS5535
717 tristate "Support for CS5535 and CS5536 southbridge core functions"
718 select MFD_CORE
Andres Salomon15b7cf12011-03-27 21:26:03 -0700719 depends on PCI && X86
Andres Salomonf71e1af2010-11-26 11:52:35 +0100720 ---help---
721 This is the core driver for CS5535/CS5536 MFD functions. This is
722 necessary for using the board's GPIO and MFGPT functionality.
723
Richard Röjfors8edbede2010-02-04 08:18:52 -0300724config MFD_TIMBERDALE
725 tristate "Support for the Timberdale FPGA"
726 select MFD_CORE
Randy Dunlap546e29b62010-02-12 12:30:55 -0300727 depends on PCI && GPIOLIB
Richard Röjfors8edbede2010-02-04 08:18:52 -0300728 ---help---
729 This is the core driver for the timberdale FPGA. This device is a
730 multifunction device which exposes numerous platform devices.
731
732 The timberdale FPGA can be found on the Intel Atom development board
733 for in-vehicle infontainment, called Russellville.
Denis Turischeve82c60a2010-02-19 11:26:25 +0100734
735config LPC_SCH
736 tristate "Intel SCH LPC"
737 depends on PCI
738 select MFD_CORE
739 help
740 LPC bridge function of the Intel SCH provides support for
741 System Management Bus and General Purpose I/O.
742
Florian Fainellie090d502010-03-21 01:06:05 +0100743config MFD_RDC321X
744 tristate "Support for RDC-R321x southbridge"
745 select MFD_CORE
746 depends on PCI
747 help
748 Say yes here if you want to have support for the RDC R-321x SoC
749 southbridge which provides access to GPIOs and Watchdog using the
750 southbridge PCI device configuration space.
751
Ira W. Snyderbd358132010-04-07 09:43:00 +0200752config MFD_JANZ_CMODIO
753 tristate "Support for Janz CMOD-IO PCI MODULbus Carrier Board"
754 select MFD_CORE
755 depends on PCI
756 help
757 This is the core driver for the Janz CMOD-IO PCI MODULbus
758 carrier board. This device is a PCI to MODULbus bridge which may
759 host many different types of MODULbus daughterboards, including
760 CAN and GPIO controllers.
761
Lars-Peter Clausen91f4deb2010-07-12 03:48:08 +0200762config MFD_JZ4740_ADC
Lars-Peter Clausen914e6d42011-06-03 03:14:26 +0200763 bool "Support for the JZ4740 SoC ADC core"
Lars-Peter Clausen91f4deb2010-07-12 03:48:08 +0200764 select MFD_CORE
Lars-Peter Clausen914e6d42011-06-03 03:14:26 +0200765 select GENERIC_IRQ_CHIP
Lars-Peter Clausen91f4deb2010-07-12 03:48:08 +0200766 depends on MACH_JZ4740
767 help
768 Say yes here if you want support for the ADC unit in the JZ4740 SoC.
769 This driver is necessary for jz4740-battery and jz4740-hwmon driver.
770
Daniel Drake375fc772010-09-30 21:55:41 +0100771config MFD_VX855
772 tristate "Support for VIA VX855/VX875 integrated south bridge"
773 depends on PCI
774 select MFD_CORE
775 help
776 Say yes here to enable support for various functions of the
777 VIA VX855/VX875 south bridge. You will need to enable the vx855_spi
778 and/or vx855_gpio drivers for this to do anything useful.
779
Matti Aaltonen383268a2010-12-10 11:41:33 -0300780config MFD_WL1273_CORE
Matti Aaltonen94fd5b72011-03-01 10:10:35 -0300781 tristate "Support for TI WL1273 FM radio."
Matti Aaltonen383268a2010-12-10 11:41:33 -0300782 depends on I2C
783 select MFD_CORE
784 default n
785 help
786 This is the core driver for the TI WL1273 FM radio. This MFD
787 driver connects the radio-wl1273 V4L2 module and the wl1273
788 audio codec.
789
Keshava Munegowda17cdd292011-03-01 20:08:17 +0530790config MFD_OMAP_USB_HOST
791 bool "Support OMAP USBHS core driver"
792 depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3
793 default y
794 help
795 This is the core driver for the OAMP EHCI and OHCI drivers.
796 This MFD driver does the required setup functionalities for
797 OMAP USB Host drivers.
798
Abhijeet Dharmapurikarcbdb53e2011-04-05 14:40:52 -0700799config MFD_PM8XXX
800 tristate
801
802config MFD_PM8921_CORE
803 tristate "Qualcomm PM8921 PMIC chip"
804 depends on MSM_SSBI
805 select MFD_CORE
806 select MFD_PM8XXX
807 help
808 If you say yes to this option, support will be included for the
809 built-in PM8921 PMIC chip.
810
811 This is required if your board has a PM8921 and uses its features,
812 such as: MPPs, GPIOs, regulators, interrupts, and PWM.
813
814 Say M here if you want to include support for PM8921 chip as a module.
815 This will build a module called "pm8921-core".
816
Abhijeet Dharmapurikarc013f0a2011-04-05 14:40:53 -0700817config MFD_PM8XXX_IRQ
818 bool "Support for Qualcomm PM8xxx IRQ features"
819 depends on MFD_PM8XXX
820 default y if MFD_PM8XXX
821 help
822 This is the IRQ driver for Qualcomm PM 8xxx PMIC chips.
823
824 This is required to use certain other PM 8xxx features, such as GPIO
825 and MPP.
826
Axel Lin8509e142011-06-23 10:15:51 +0800827config TPS65911_COMPARATOR
828 tristate
829
Jin Park09d62922011-07-04 19:48:12 +0200830config MFD_AAT2870_CORE
831 bool "Support for the AnalogicTech AAT2870"
832 select MFD_CORE
833 depends on I2C=y && GPIOLIB
834 help
835 If you say yes here you get support for the AAT2870.
836 This driver provides common support for accessing the device,
837 additional drivers must be enabled in order to use the
838 functionality of the device.
839
Mika Westerberg1f5a3712011-09-21 13:03:07 +0200840config MFD_INTEL_MSIC
841 bool "Support for Intel MSIC"
842 depends on INTEL_SCU_IPC
843 select MFD_CORE
844 help
845 Select this option to enable access to Intel MSIC (Avatele
846 Passage) chip. This chip embeds audio, battery, GPIO, etc.
847 devices used in Intel Medfield platforms.
848
Arnd Bergmann8a0a8e82011-09-02 16:43:36 +0200849endmenu
850endif
Ben Dooksb6d64542007-02-20 13:58:01 -0800851
Russell Kinga4e137a2005-08-18 10:06:59 +0100852menu "Multimedia Capabilities Port drivers"
Adrian Bunkf751d502006-03-24 03:18:21 -0800853 depends on ARCH_SA1100
Russell Kinga4e137a2005-08-18 10:06:59 +0100854
855config MCP
856 tristate
857
Russell King5e742ad2005-08-18 10:08:15 +0100858# Interface drivers
859config MCP_SA11X0
860 tristate "Support SA11x0 MCP interface"
861 depends on ARCH_SA1100
862 select MCP
863
Russell King05c45ca2005-09-11 10:26:31 +0100864# Chip drivers
865config MCP_UCB1200
866 tristate "Support for UCB1200 / UCB1300"
867 depends on MCP
868
Russell Kingacb45432005-09-11 10:26:57 +0100869config MCP_UCB1200_TS
870 tristate "Touchscreen interface support"
871 depends on MCP_UCB1200 && INPUT
872
Russell Kinga4e137a2005-08-18 10:06:59 +0100873endmenu