blob: 639e1fc36a39f78e20d10d0c5e666d94bc59fcb6 [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
Grant Likely280ad7f2012-02-24 14:58:54 -0700220 select IRQ_DOMAIN
David Brownella603a7f2008-10-15 12:15:39 +0200221 help
Balaji T Ke8deb282009-12-14 00:25:31 +0100222 Say yes here if you have TWL4030 / TWL6030 family chip on your board.
David Brownella603a7f2008-10-15 12:15:39 +0200223 This core driver provides register access and IRQ handling
224 facilities, and registers devices for the various functions
225 so that function-specific drivers can bind to them.
226
227 These multi-function chips are found on many OMAP2 and OMAP3
228 boards, providing power management, RTC, GPIO, keypad, a
229 high speed USB OTG transceiver, an audio codec (on most
230 versions) and many other features.
231
Keerthyf99c1d42011-03-01 19:12:26 +0530232config TWL4030_MADC
233 tristate "Texas Instruments TWL4030 MADC"
234 depends on TWL4030_CORE
235 help
236 This driver provides support for triton TWL4030-MADC. The
237 driver supports both RT and SW conversion methods.
238
239 This driver can be built as a module. If so it will be
240 named twl4030-madc
241
Amit Kucheriaebf0bd32009-08-31 18:32:18 +0200242config TWL4030_POWER
243 bool "Support power resources on TWL4030 family chips"
244 depends on TWL4030_CORE && ARM
245 help
246 Say yes here if you want to use the power resources on the
247 TWL4030 family chips. Most of these resources are regulators,
248 which have a separate driver; some are control signals, such
249 as clock request handshaking.
250
251 This driver uses board-specific data to initialize the resources
Lucas De Marchi25985ed2011-03-30 22:57:33 -0300252 and load scripts controlling which resources are switched off/on
Amit Kucheriaebf0bd32009-08-31 18:32:18 +0200253 or reset when a sleep, wakeup or warm reset event occurs.
254
Peter Ujfalusi57fe7252011-05-31 12:02:49 +0300255config MFD_TWL4030_AUDIO
Peter Ujfalusi0b83dde2009-10-22 13:26:45 +0300256 bool
257 depends on TWL4030_CORE
258 select MFD_CORE
259 default n
260
Hemanth V31fc03d2010-07-14 12:04:56 +0200261config TWL6030_PWM
262 tristate "TWL6030 PWM (Pulse Width Modulator) Support"
263 depends on TWL4030_CORE
264 select HAVE_PWM
265 default n
266 help
267 Say yes here if you want support for TWL6030 PWM.
268 This is used to control charging LED brightness.
269
Misael Lopez Cruzf19b2822011-04-27 02:14:07 -0500270config TWL6040_CORE
271 bool
272 depends on TWL4030_CORE && GENERIC_HARDIRQS
273 select MFD_CORE
274 default n
275
Rabin Vincent27e34992010-07-02 16:52:08 +0530276config MFD_STMPE
277 bool "Support STMicroelectronics STMPE"
Viresh Kumare7899952011-11-17 11:02:21 +0530278 depends on (I2C=y || SPI_MASTER=y) && GENERIC_HARDIRQS
Rabin Vincent27e34992010-07-02 16:52:08 +0530279 select MFD_CORE
280 help
281 Support for the STMPE family of I/O Expanders from
282 STMicroelectronics.
283
284 Currently supported devices are:
285
286 STMPE811: GPIO, Touchscreen
287 STMPE1601: GPIO, Keypad
288 STMPE2401: GPIO, Keypad
289 STMPE2403: GPIO, Keypad
290
291 This driver provides common support for accessing the device,
292 additional drivers must be enabled in order to use the functionality
293 of the device. Currently available sub drivers are:
294
295 GPIO: stmpe-gpio
296 Keypad: stmpe-keypad
297 Touchscreen: stmpe-ts
298
Viresh Kumar1a6e4b72011-11-17 11:02:20 +0530299menu "STMPE Interface Drivers"
300depends on MFD_STMPE
301
302config STMPE_I2C
303 bool "STMPE I2C Inteface"
Samuel Ortizeedea802011-12-20 18:28:19 +0100304 depends on I2C=y
Viresh Kumar1a6e4b72011-11-17 11:02:20 +0530305 default y
306 help
307 This is used to enable I2C interface of STMPE
Viresh Kumare7899952011-11-17 11:02:21 +0530308
309config STMPE_SPI
310 bool "STMPE SPI Inteface"
311 depends on SPI_MASTER
312 help
313 This is used to enable SPI interface of STMPE
Viresh Kumar1a6e4b72011-11-17 11:02:20 +0530314endmenu
315
Sundar Iyerf4e8afd2010-12-13 09:33:13 +0530316config MFD_TC3589X
317 bool "Support Toshiba TC35892 and variants"
Rabin Vincentb4ecd322010-05-10 23:39:47 +0200318 depends on I2C=y && GENERIC_HARDIRQS
319 select MFD_CORE
320 help
Sundar Iyerf4e8afd2010-12-13 09:33:13 +0530321 Support for the Toshiba TC35892 and variants I/O Expander.
Rabin Vincentb4ecd322010-05-10 23:39:47 +0200322
323 This driver provides common support for accessing the device,
324 additional drivers must be enabled in order to use the
325 functionality of the device.
326
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200327config MFD_TMIO
328 bool
329 default n
330
Ian Molton1f192012008-07-15 15:09:43 +0100331config MFD_T7L66XB
332 bool "Support Toshiba T7L66XB"
Al Viro9ca68232008-11-01 18:19:59 +0000333 depends on ARM && HAVE_CLK
Ian Molton1f192012008-07-15 15:09:43 +0100334 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200335 select MFD_TMIO
Ian Molton1f192012008-07-15 15:09:43 +0100336 help
337 Support for Toshiba Mobile IO Controller T7L66XB
338
Ian Moltoncbdfb422008-07-15 15:12:52 +0100339config MFD_TC6387XB
340 bool "Support Toshiba TC6387XB"
Al Viro9ca68232008-11-01 18:19:59 +0000341 depends on ARM && HAVE_CLK
Ian Moltoncbdfb422008-07-15 15:12:52 +0100342 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200343 select MFD_TMIO
Ian Moltoncbdfb422008-07-15 15:12:52 +0100344 help
345 Support for Toshiba Mobile IO Controller TC6387XB
346
Dmitry Baryshkovd6315942008-06-22 12:01:58 +0100347config MFD_TC6393XB
348 bool "Support Toshiba TC6393XB"
Christoph Fritze959da12011-11-29 19:38:38 +0100349 depends on GPIOLIB && ARM && HAVE_CLK
Dmitry Baryshkovf024ff12008-06-27 10:37:57 +0100350 select MFD_CORE
Samuel Ortiz1c2c30a2008-08-05 19:27:58 +0200351 select MFD_TMIO
Dmitry Baryshkovd6315942008-06-22 12:01:58 +0100352 help
353 Support for Toshiba Mobile IO Controller TC6393XB
354
Samuel Ortiz8e2eaab2008-10-24 17:10:05 +0200355config PMIC_DA903X
356 bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
357 depends on I2C=y
358 help
359 Say yes here to support for Dialog Semiconductor DA9030 (a.k.a
360 ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
361 usually found on PXA processors-based platforms. This includes
362 the I2C driver and the core APIs _only_, you have to select
363 individual components like LCD backlight, voltage regulators,
364 LEDs and battery-charger under the corresponding menus.
365
Ashish Jangam84c99db2011-12-12 20:06:56 +0530366config PMIC_DA9052
367 bool
368 select MFD_CORE
369
Ashish Jangamcfe04472011-12-12 20:37:41 +0530370config MFD_DA9052_SPI
371 bool "Support Dialog Semiconductor DA9052/53 PMIC variants with SPI"
372 select REGMAP_SPI
373 select REGMAP_IRQ
374 select PMIC_DA9052
375 depends on SPI_MASTER=y
376 help
377 Support for the Dialog Semiconductor DA9052 PMIC
378 when controlled using SPI. This driver provides common support
379 for accessing the device, additional drivers must be enabled in
380 order to use the functionality of the device.
381
Ashish Jangam84c99db2011-12-12 20:06:56 +0530382config MFD_DA9052_I2C
383 bool "Support Dialog Semiconductor DA9052/53 PMIC variants with I2C"
384 select REGMAP_I2C
385 select REGMAP_IRQ
386 select PMIC_DA9052
387 depends on I2C=y
388 help
389 Support for the Dialog Semiconductor DA9052 PMIC
390 when controlled using I2C. This driver provides common support
391 for accessing the device, additional drivers must be enabled in
392 order to use the functionality of the device.
393
Michael Hennericha5736e02009-10-12 17:22:38 +0200394config PMIC_ADP5520
395 bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
396 depends on I2C=y
397 help
398 Say yes here to add support for Analog Devices AD5520 and ADP5501,
399 Multifunction Power Management IC. This includes
400 the I2C driver and the core APIs _only_, you have to select
401 individual components like LCD backlight, LEDs, GPIOs and Kepad
402 under the corresponding menus.
403
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100404config MFD_MAX8925
Haojian Zhuang1f1cf8f2010-02-05 16:07:54 +0100405 bool "Maxim Semiconductor MAX8925 PMIC Support"
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100406 depends on I2C=y && GENERIC_HARDIRQS
Haojian Zhuang1ad99892010-01-08 12:43:29 -0500407 select MFD_CORE
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100408 help
409 Say yes here to support for Maxim Semiconductor MAX8925. This is
Masanari Iida6b2aac42012-04-14 00:14:11 +0900410 a Power Management IC. This driver provides common support for
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100411 accessing the device, additional drivers must be enabled in order
412 to use the functionality of the device.
413
MyungJoo Ham527e7e92011-03-04 15:50:26 +0900414config MFD_MAX8997
415 bool "Maxim Semiconductor MAX8997/8966 PMIC Support"
416 depends on I2C=y && GENERIC_HARDIRQS
417 select MFD_CORE
418 help
Axel Lin5a924d12012-03-01 09:31:25 +0800419 Say yes here to support for Maxim Semiconductor MAX8997/8966.
MyungJoo Ham527e7e92011-03-04 15:50:26 +0900420 This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic,
421 MUIC controls on chip.
Randy Dunlapd7e8c012011-03-14 11:28:37 +0100422 This driver provides common support for accessing the device;
MyungJoo Ham527e7e92011-03-04 15:50:26 +0900423 additional drivers must be enabled in order to use the functionality
424 of the device.
425
Kyungmin Park156f2522010-06-16 09:04:16 +0200426config MFD_MAX8998
Kyungmin Parkf8539dd2010-08-23 13:46:49 +0900427 bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support"
Joonyoung Shim2c7e6f52010-09-10 18:36:39 +0200428 depends on I2C=y && GENERIC_HARDIRQS
Kyungmin Park156f2522010-06-16 09:04:16 +0200429 select MFD_CORE
430 help
Kyungmin Parkf8539dd2010-08-23 13:46:49 +0900431 Say yes here to support for Maxim Semiconductor MAX8998 and
432 National Semiconductor LP3974. This is a Power Management IC.
Masanari Iida6b2aac42012-04-14 00:14:11 +0900433 This driver provides common support for accessing the device,
Kyungmin Parkf8539dd2010-08-23 13:46:49 +0900434 additional drivers must be enabled in order to use the functionality
435 of the device.
Kyungmin Park156f2522010-06-16 09:04:16 +0200436
Sangbeom Kimc3d4d692012-01-09 00:09:09 +0100437config MFD_S5M_CORE
438 bool "SAMSUNG S5M Series Support"
439 depends on I2C=y && GENERIC_HARDIRQS
440 select MFD_CORE
441 select REGMAP_I2C
442 help
443 Support for the Samsung Electronics S5M MFD series.
Masanari Iida6b2aac42012-04-14 00:14:11 +0900444 This driver provides common support for accessing the device,
Sangbeom Kimc3d4d692012-01-09 00:09:09 +0100445 additional drivers must be enabled in order to use the functionality
446 of the device
447
Mark Brown1d9f9f02008-09-10 18:58:42 +0100448config MFD_WM8400
449 tristate "Support Wolfson Microelectronics WM8400"
Mark Brownb8380c12008-12-18 10:54:22 +0100450 select MFD_CORE
Mark Brown9c366452008-10-24 17:16:11 +0200451 depends on I2C
Mark Brown2b247d02011-08-23 18:56:19 +0100452 select REGMAP_I2C
Mark Brown1d9f9f02008-09-10 18:58:42 +0100453 help
454 Support for the Wolfson Microelecronics WM8400 PMIC and audio
Mark Brown9e5aca52009-05-29 11:34:18 +0100455 CODEC. This driver provides common support for accessing
Mark Brown1d9f9f02008-09-10 18:58:42 +0100456 the device, additional drivers must be enabled in order to use
457 the functionality of the device.
458
Mark Brownb11062b2009-07-27 14:45:58 +0100459config MFD_WM831X
Mark Browne5b48682010-10-19 23:57:56 +0200460 bool
461 depends on GENERIC_HARDIRQS
462
463config MFD_WM831X_I2C
464 bool "Support Wolfson Microelectronics WM831x/2x PMICs with I2C"
Mark Brownb11062b2009-07-27 14:45:58 +0100465 select MFD_CORE
Mark Browne5b48682010-10-19 23:57:56 +0200466 select MFD_WM831X
Mark Brown1df59812011-06-10 19:28:10 +0100467 select REGMAP_I2C
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100468 depends on I2C=y && GENERIC_HARDIRQS
Mark Brownb11062b2009-07-27 14:45:58 +0100469 help
Mark Browne5b48682010-10-19 23:57:56 +0200470 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
471 when controlled using I2C. This driver provides common support
472 for accessing the device, additional drivers must be enabled in
473 order to use the functionality of the device.
Mark Brownb11062b2009-07-27 14:45:58 +0100474
Mark Brown2aa13b92010-10-20 00:00:11 +0200475config MFD_WM831X_SPI
476 bool "Support Wolfson Microelectronics WM831x/2x PMICs with SPI"
477 select MFD_CORE
478 select MFD_WM831X
Mark Brown1df59812011-06-10 19:28:10 +0100479 select REGMAP_SPI
Mark Brown2aa13b92010-10-20 00:00:11 +0200480 depends on SPI_MASTER && GENERIC_HARDIRQS
481 help
482 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
483 when controlled using SPI. This driver provides common support
484 for accessing the device, additional drivers must be enabled in
485 order to use the functionality of the device.
486
Mark Brown89b40122008-10-10 15:58:10 +0100487config MFD_WM8350
Mark Brownecf926b2010-01-05 20:40:47 +0000488 bool
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100489 depends on GENERIC_HARDIRQS
Mark Brown89b40122008-10-10 15:58:10 +0100490
491config MFD_WM8350_CONFIG_MODE_0
492 bool
493 depends on MFD_WM8350
494
495config MFD_WM8350_CONFIG_MODE_1
496 bool
497 depends on MFD_WM8350
498
499config MFD_WM8350_CONFIG_MODE_2
500 bool
501 depends on MFD_WM8350
502
503config MFD_WM8350_CONFIG_MODE_3
504 bool
505 depends on MFD_WM8350
506
Mark Brownca23f8c2008-12-18 23:12:28 +0100507config MFD_WM8351_CONFIG_MODE_0
508 bool
509 depends on MFD_WM8350
510
511config MFD_WM8351_CONFIG_MODE_1
512 bool
513 depends on MFD_WM8350
514
515config MFD_WM8351_CONFIG_MODE_2
516 bool
517 depends on MFD_WM8350
518
519config MFD_WM8351_CONFIG_MODE_3
520 bool
521 depends on MFD_WM8350
522
Mark Brown96920632008-12-18 23:09:50 +0100523config MFD_WM8352_CONFIG_MODE_0
524 bool
525 depends on MFD_WM8350
526
527config MFD_WM8352_CONFIG_MODE_1
528 bool
529 depends on MFD_WM8350
530
531config MFD_WM8352_CONFIG_MODE_2
532 bool
533 depends on MFD_WM8350
534
535config MFD_WM8352_CONFIG_MODE_3
536 bool
537 depends on MFD_WM8350
538
Mark Brownc661a0b2008-10-10 15:58:11 +0100539config MFD_WM8350_I2C
Mark Brownecf926b2010-01-05 20:40:47 +0000540 bool "Support Wolfson Microelectronics WM8350 with I2C"
Mark Brownc661a0b2008-10-10 15:58:11 +0100541 select MFD_WM8350
Geert Uytterhoeven8d002bd2009-12-15 21:49:57 +0100542 depends on I2C=y && GENERIC_HARDIRQS
Mark Brownc661a0b2008-10-10 15:58:11 +0100543 help
544 The WM8350 is an integrated audio and power management
545 subsystem with watchdog and RTC functionality for embedded
546 systems. This option enables core support for the WM8350 with
547 I2C as the control interface. Additional options must be
548 selected to enable support for the functionality of the chip.
549
Mark Brown9e501082010-01-29 18:20:29 +0000550config MFD_WM8994
Mark Brownc9fbf7e2010-03-26 16:49:15 +0000551 bool "Support Wolfson Microelectronics WM8994"
Mark Brown9e501082010-01-29 18:20:29 +0000552 select MFD_CORE
Mark Brownd6c645fc2011-06-17 13:02:27 +0100553 select REGMAP_I2C
Mark Brown8ab30692011-10-25 10:19:04 +0200554 select REGMAP_IRQ
Mark Brownc9fbf7e2010-03-26 16:49:15 +0000555 depends on I2C=y && GENERIC_HARDIRQS
Mark Brown9e501082010-01-29 18:20:29 +0000556 help
557 The WM8994 is a highly integrated hi-fi CODEC designed for
558 smartphone applicatiosn. As well as audio functionality it
559 has on board GPIO and regulator functionality which is
560 supported via the relevant subsystems. This driver provides
561 core support for the WM8994, in order to use the actual
562 functionaltiy of the device other drivers must be enabled.
563
Balaji Raof52046b2009-01-09 01:49:01 +0100564config MFD_PCF50633
565 tristate "Support for NXP PCF50633"
566 depends on I2C
Mark Brown6e3ad112011-08-08 17:04:40 +0900567 select REGMAP_I2C
Balaji Raof52046b2009-01-09 01:49:01 +0100568 help
569 Say yes here if you have NXP PCF50633 chip on your board.
570 This core driver provides register access and IRQ handling
571 facilities, and registers devices for the various functions
572 so that function-specific drivers can bind to them.
573
Axel Lin13051342011-04-15 20:06:37 +0800574config PCF50633_ADC
575 tristate "Support for NXP PCF50633 ADC"
576 depends on MFD_PCF50633
577 help
578 Say yes here if you want to include support for ADC in the
579 NXP PCF50633 chip.
580
581config PCF50633_GPIO
582 tristate "Support for NXP PCF50633 GPIO"
583 depends on MFD_PCF50633
584 help
585 Say yes here if you want to include support GPIO for pins on
586 the PCF50633 chip.
587
Sascha Hauer8238add2009-08-19 01:40:28 +0200588config MFD_MC13783
Uwe Kleine-König8e005932010-09-28 16:37:20 +0200589 tristate
590
591config MFD_MC13XXX
592 tristate "Support Freescale MC13783 and MC13892"
Sascha Hauer8238add2009-08-19 01:40:28 +0200593 depends on SPI_MASTER
594 select MFD_CORE
Uwe Kleine-König8e005932010-09-28 16:37:20 +0200595 select MFD_MC13783
Sascha Hauer8238add2009-08-19 01:40:28 +0200596 help
Uwe Kleine-König8e005932010-09-28 16:37:20 +0200597 Support for the Freescale (Atlas) PMIC and audio CODECs
598 MC13783 and MC13892.
Sascha Hauer8238add2009-08-19 01:40:28 +0200599 This driver provides common support for accessing the device,
600 additional drivers must be enabled in order to use the
601 functionality of the device.
602
Mattias Wallinfa661252010-05-01 18:26:20 +0200603config ABX500_CORE
604 bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions"
Mattias Wallin47c16972010-09-10 17:47:56 +0200605 default y if ARCH_U300 || ARCH_U8500
Mattias Wallinfa661252010-05-01 18:26:20 +0200606 help
607 Say yes here if you have the ABX500 Mixed Signal IC family
608 chips. This core driver expose register access functions.
609 Functionality specific drivers using these functions can
610 remain unchanged when IC changes. Binding of the functions to
611 actual register access is done by the IC core driver.
612
Linus Walleij14fa5692009-05-21 23:17:06 +0200613config AB3100_CORE
Linus Walleij2071db42010-01-19 11:41:52 +0100614 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
Mattias Wallinfa661252010-05-01 18:26:20 +0200615 depends on I2C=y && ABX500_CORE
Linus Walleij8c96aef2010-08-20 10:27:12 +0200616 select MFD_CORE
Linus Walleij14fa5692009-05-21 23:17:06 +0200617 default y if ARCH_U300
618 help
619 Select this to enable the AB3100 Mixed Signal IC core
620 functionality. This connects to a AB3100 on the I2C bus
621 and expose a number of symbols needed for dependent devices
622 to read and write registers and subscribe to events from
623 this multi-functional IC. This is needed to use other features
624 of the AB3100 such as battery-backed RTC, charging control,
625 LEDs, vibrator, system power and temperature, power management
626 and ALSA sound.
627
Linus Walleij12992dd2009-08-18 22:52:26 +0200628config AB3100_OTP
629 tristate "ST-Ericsson AB3100 OTP functions"
630 depends on AB3100_CORE
631 default y if AB3100_CORE
632 help
633 Select this to enable the AB3100 Mixed Signal IC OTP (one-time
634 programmable memory) support. This exposes a sysfs file to read
635 out OTP values.
636
Daniel Ribeiro13a09f92009-05-28 15:43:37 -0300637config EZX_PCAP
638 bool "PCAP Support"
639 depends on GENERIC_HARDIRQS && SPI_MASTER
640 help
641 This enables the PCAP ASIC present on EZX Phones. This is
642 needed for MMC, TouchScreen, Sound, USB, etc..
643
Mattias Wallin3d5e2ca2011-09-22 08:22:18 +0200644config AB5500_CORE
645 bool "ST-Ericsson AB5500 Mixed Signal Power Management chip"
646 depends on ABX500_CORE && MFD_DB5500_PRCMU
647 select MFD_CORE
648 help
649 Select this option to enable access to AB5500 power management
650 chip. This connects to the db5500 chip via the I2C bus via PRCMU.
651 This chip embeds various other multimedia funtionalities as well.
652
Linus Walleij94be70d2011-09-22 08:22:33 +0200653config AB5500_DEBUG
654 bool "Enable debug info via debugfs"
655 depends on AB5500_CORE && DEBUG_FS
656 default y if DEBUG_FS
657 help
658 Select this option if you want debug information from the AB5500
659 using the debug filesystem, debugfs.
660
Rabin Vincent62579262010-05-19 11:39:02 +0200661config AB8500_CORE
662 bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
Sundar Iyer6680d942010-12-24 11:52:08 +0100663 depends on GENERIC_HARDIRQS && ABX500_CORE
Rabin Vincent62579262010-05-19 11:39:02 +0200664 select MFD_CORE
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200665 help
Rabin Vincent62579262010-05-19 11:39:02 +0200666 Select this option to enable access to AB8500 power management
Sundar Iyer6680d942010-12-24 11:52:08 +0100667 chip. This connects to U8500 either on the SSP/SPI bus (deprecated
668 since hardware version v1.0) or the I2C bus via PRCMU. It also adds
669 the irq_chip parts for handling the Mixed Signal chip events.
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200670 This chip embeds various other multimedia funtionalities as well.
671
Mattias Wallin39368ed2010-09-15 13:12:03 +0200672config AB8500_I2C_CORE
673 bool "AB8500 register access via PRCMU I2C"
Linus Walleij650c2a22011-05-15 22:53:56 +0200674 depends on AB8500_CORE && MFD_DB8500_PRCMU
Mattias Wallin39368ed2010-09-15 13:12:03 +0200675 default y
676 help
677 This enables register access to the AB8500 chip via PRCMU I2C.
678 The AB8500 chip can be accessed via SPI or I2C. On DB8500 hardware
679 the I2C bus is connected to the Power Reset
680 and Mangagement Unit, PRCMU.
681
Mattias Wallin5814fc32010-09-13 16:05:04 +0200682config AB8500_DEBUG
683 bool "Enable debug info via debugfs"
684 depends on AB8500_CORE && DEBUG_FS
685 default y if DEBUG_FS
686 help
687 Select this option if you want debug information using the debug
688 filesystem, debugfs.
689
Arun Murthydae2db32011-02-22 10:11:13 +0100690config AB8500_GPADC
691 bool "AB8500 GPADC driver"
692 depends on AB8500_CORE && REGULATOR_AB8500
693 default y
694 help
695 AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage
696
Linus Walleij650c2a22011-05-15 22:53:56 +0200697config MFD_DB8500_PRCMU
698 bool "ST-Ericsson DB8500 Power Reset Control Management Unit"
699 depends on UX500_SOC_DB8500
700 select MFD_CORE
701 help
702 Select this option to enable support for the DB8500 Power Reset
703 and Control Management Unit. This is basically an autonomous
704 system controller running an XP70 microprocessor, which is accessed
705 through a register map.
706
Linus Walleij83177972011-05-03 18:14:48 +0200707config MFD_DB5500_PRCMU
708 bool "ST-Ericsson DB5500 Power Reset Control Management Unit"
709 depends on UX500_SOC_DB5500
710 select MFD_CORE
711 help
712 Select this option to enable support for the DB5500 Power Reset
713 and Control Management Unit. This is basically an autonomous
714 system controller running an XP70 microprocessor, which is accessed
715 through a register map.
716
Andres Salomonf71e1af2010-11-26 11:52:35 +0100717config MFD_CS5535
718 tristate "Support for CS5535 and CS5536 southbridge core functions"
719 select MFD_CORE
Andres Salomon15b7cf12011-03-27 21:26:03 -0700720 depends on PCI && X86
Andres Salomonf71e1af2010-11-26 11:52:35 +0100721 ---help---
722 This is the core driver for CS5535/CS5536 MFD functions. This is
723 necessary for using the board's GPIO and MFGPT functionality.
724
Richard Röjfors8edbede2010-02-04 08:18:52 -0300725config MFD_TIMBERDALE
726 tristate "Support for the Timberdale FPGA"
727 select MFD_CORE
Randy Dunlap546e29b62010-02-12 12:30:55 -0300728 depends on PCI && GPIOLIB
Richard Röjfors8edbede2010-02-04 08:18:52 -0300729 ---help---
730 This is the core driver for the timberdale FPGA. This device is a
731 multifunction device which exposes numerous platform devices.
732
733 The timberdale FPGA can be found on the Intel Atom development board
734 for in-vehicle infontainment, called Russellville.
Denis Turischeve82c60a2010-02-19 11:26:25 +0100735
736config LPC_SCH
737 tristate "Intel SCH LPC"
738 depends on PCI
739 select MFD_CORE
740 help
741 LPC bridge function of the Intel SCH provides support for
742 System Management Bus and General Purpose I/O.
743
Florian Fainellie090d502010-03-21 01:06:05 +0100744config MFD_RDC321X
745 tristate "Support for RDC-R321x southbridge"
746 select MFD_CORE
747 depends on PCI
748 help
749 Say yes here if you want to have support for the RDC R-321x SoC
750 southbridge which provides access to GPIOs and Watchdog using the
751 southbridge PCI device configuration space.
752
Ira W. Snyderbd358132010-04-07 09:43:00 +0200753config MFD_JANZ_CMODIO
754 tristate "Support for Janz CMOD-IO PCI MODULbus Carrier Board"
755 select MFD_CORE
756 depends on PCI
757 help
758 This is the core driver for the Janz CMOD-IO PCI MODULbus
759 carrier board. This device is a PCI to MODULbus bridge which may
760 host many different types of MODULbus daughterboards, including
761 CAN and GPIO controllers.
762
Lars-Peter Clausen91f4deb2010-07-12 03:48:08 +0200763config MFD_JZ4740_ADC
Lars-Peter Clausen914e6d42011-06-03 03:14:26 +0200764 bool "Support for the JZ4740 SoC ADC core"
Lars-Peter Clausen91f4deb2010-07-12 03:48:08 +0200765 select MFD_CORE
Lars-Peter Clausen914e6d42011-06-03 03:14:26 +0200766 select GENERIC_IRQ_CHIP
Lars-Peter Clausen91f4deb2010-07-12 03:48:08 +0200767 depends on MACH_JZ4740
768 help
769 Say yes here if you want support for the ADC unit in the JZ4740 SoC.
770 This driver is necessary for jz4740-battery and jz4740-hwmon driver.
771
Daniel Drake375fc772010-09-30 21:55:41 +0100772config MFD_VX855
773 tristate "Support for VIA VX855/VX875 integrated south bridge"
774 depends on PCI
775 select MFD_CORE
776 help
777 Say yes here to enable support for various functions of the
778 VIA VX855/VX875 south bridge. You will need to enable the vx855_spi
779 and/or vx855_gpio drivers for this to do anything useful.
780
Matti Aaltonen383268a2010-12-10 11:41:33 -0300781config MFD_WL1273_CORE
Matti Aaltonen94fd5b72011-03-01 10:10:35 -0300782 tristate "Support for TI WL1273 FM radio."
Matti Aaltonen383268a2010-12-10 11:41:33 -0300783 depends on I2C
784 select MFD_CORE
785 default n
786 help
787 This is the core driver for the TI WL1273 FM radio. This MFD
788 driver connects the radio-wl1273 V4L2 module and the wl1273
789 audio codec.
790
Keshava Munegowda17cdd292011-03-01 20:08:17 +0530791config MFD_OMAP_USB_HOST
792 bool "Support OMAP USBHS core driver"
793 depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3
794 default y
795 help
796 This is the core driver for the OAMP EHCI and OHCI drivers.
797 This MFD driver does the required setup functionalities for
798 OMAP USB Host drivers.
799
Abhijeet Dharmapurikarcbdb53e2011-04-05 14:40:52 -0700800config MFD_PM8XXX
801 tristate
802
803config MFD_PM8921_CORE
804 tristate "Qualcomm PM8921 PMIC chip"
805 depends on MSM_SSBI
806 select MFD_CORE
807 select MFD_PM8XXX
808 help
809 If you say yes to this option, support will be included for the
810 built-in PM8921 PMIC chip.
811
812 This is required if your board has a PM8921 and uses its features,
813 such as: MPPs, GPIOs, regulators, interrupts, and PWM.
814
815 Say M here if you want to include support for PM8921 chip as a module.
816 This will build a module called "pm8921-core".
817
Abhijeet Dharmapurikarc013f0a2011-04-05 14:40:53 -0700818config MFD_PM8XXX_IRQ
819 bool "Support for Qualcomm PM8xxx IRQ features"
820 depends on MFD_PM8XXX
821 default y if MFD_PM8XXX
822 help
823 This is the IRQ driver for Qualcomm PM 8xxx PMIC chips.
824
825 This is required to use certain other PM 8xxx features, such as GPIO
826 and MPP.
827
Axel Lin8509e142011-06-23 10:15:51 +0800828config TPS65911_COMPARATOR
829 tristate
830
Venu Byravarasu3c33be062012-03-16 11:10:19 +0530831config MFD_TPS65090
832 bool "TPS65090 Power Management chips"
833 depends on I2C=y && GENERIC_HARDIRQS
834 select MFD_CORE
835 select REGMAP_I2C
836 help
837 If you say yes here you get support for the TPS65090 series of
838 Power Management chips.
839 This driver provides common support for accessing the device,
840 additional drivers must be enabled in order to use the
841 functionality of the device.
842
Jin Park09d62922011-07-04 19:48:12 +0200843config MFD_AAT2870_CORE
844 bool "Support for the AnalogicTech AAT2870"
845 select MFD_CORE
846 depends on I2C=y && GPIOLIB
847 help
848 If you say yes here you get support for the AAT2870.
849 This driver provides common support for accessing the device,
850 additional drivers must be enabled in order to use the
851 functionality of the device.
852
Mika Westerberg1f5a3712011-09-21 13:03:07 +0200853config MFD_INTEL_MSIC
854 bool "Support for Intel MSIC"
855 depends on INTEL_SCU_IPC
856 select MFD_CORE
857 help
858 Select this option to enable access to Intel MSIC (Avatele
859 Passage) chip. This chip embeds audio, battery, GPIO, etc.
860 devices used in Intel Medfield platforms.
861
Laxman Dewangan1b1247d2012-02-28 18:35:17 +0530862config MFD_RC5T583
863 bool "Ricoh RC5T583 Power Management system device"
Laxman Dewangan5364d0b82012-03-19 11:44:55 +0530864 depends on I2C=y && GENERIC_HARDIRQS
Laxman Dewangan1b1247d2012-02-28 18:35:17 +0530865 select MFD_CORE
866 select REGMAP_I2C
867 help
868 Select this option to get support for the RICOH583 Power
869 Management system device.
870 This driver provides common support for accessing the device
871 through i2c interface. The device supports multiple sub-devices
872 like GPIO, interrupts, RTC, LDO and DCDC regulators, onkey.
873 Additional drivers must be enabled in order to use the
874 different functionality of the device.
875
Ying-Chun Liu (PaulLiu)75060a12012-03-16 21:12:32 +0100876config MFD_ANATOP
877 bool "Support for Freescale i.MX on-chip ANATOP controller"
878 depends on SOC_IMX6Q
879 help
880 Select this option to enable Freescale i.MX on-chip ANATOP
881 MFD controller. This controller embeds regulator and
882 thermal devices for Freescale i.MX platforms.
883
Arnd Bergmann8a0a8e82011-09-02 16:43:36 +0200884endmenu
885endif
Ben Dooksb6d64542007-02-20 13:58:01 -0800886
Russell Kinga4e137a2005-08-18 10:06:59 +0100887menu "Multimedia Capabilities Port drivers"
Adrian Bunkf751d502006-03-24 03:18:21 -0800888 depends on ARCH_SA1100
Russell Kinga4e137a2005-08-18 10:06:59 +0100889
890config MCP
891 tristate
892
Russell King5e742ad2005-08-18 10:08:15 +0100893# Interface drivers
894config MCP_SA11X0
895 tristate "Support SA11x0 MCP interface"
896 depends on ARCH_SA1100
897 select MCP
898
Russell King05c45ca2005-09-11 10:26:31 +0100899# Chip drivers
900config MCP_UCB1200
Russell Kinga3364402012-01-21 14:58:28 +0000901 bool "Support for UCB1200 / UCB1300"
902 depends on MCP_SA11X0
903 select MCP
Russell King05c45ca2005-09-11 10:26:31 +0100904
Russell Kingacb45432005-09-11 10:26:57 +0100905config MCP_UCB1200_TS
906 tristate "Touchscreen interface support"
907 depends on MCP_UCB1200 && INPUT
908
Russell Kinga4e137a2005-08-18 10:06:59 +0100909endmenu