blob: 87cee680783ae665144e2818b67dc92f40ac32eb [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
Lee Jonesc94bb232012-06-29 19:01:03 +020010 select IRQ_DOMAIN
Dmitry Baryshkovaa613de2008-06-27 10:37:19 +010011 default n
12
Samuel Ortizab85b1202013-04-09 14:40:09 +020013config MFD_CS5535
14 tristate "AMD CS5535 and CS5536 southbridge core functions"
Haojian Zhuang2cc50be2010-01-06 17:07:13 -050015 select MFD_CORE
Jean Delvarec03842d2014-06-16 13:54:15 +020016 depends on PCI && (X86_32 || (X86 && COMPILE_TEST))
Samuel Ortizab85b1202013-04-09 14:40:09 +020017 ---help---
18 This is the core driver for CS5535/CS5536 MFD functions. This is
19 necessary for using the board's GPIO and MFGPT functionality.
Haojian Zhuang2cc50be2010-01-06 17:07:13 -050020
Samuel Ortizab85b1202013-04-09 14:40:09 +020021config MFD_AS3711
22 bool "AMS AS3711"
23 select MFD_CORE
Qiao Zhou70c6cce2012-07-09 14:37:32 +080024 select REGMAP_I2C
25 select REGMAP_IRQ
Martin Schwidefsky0244ad02013-08-30 09:39:53 +020026 depends on I2C=y
Russell Kinga4e137a2005-08-18 10:06:59 +010027 help
Samuel Ortizab85b1202013-04-09 14:40:09 +020028 Support for the AS3711 PMIC from AMS
29
Laxman Dewangand460a6f2013-10-22 13:08:46 +053030config MFD_AS3722
31 bool "ams AS3722 Power Management IC"
32 select MFD_CORE
33 select REGMAP_I2C
34 select REGMAP_IRQ
Michal Marek72ac0122013-11-18 18:25:59 +010035 depends on I2C=y && OF
Laxman Dewangand460a6f2013-10-22 13:08:46 +053036 help
37 The ams AS3722 is a compact system PMU suitable for mobile phones,
38 tablets etc. It has 4 DC/DC step-down regulators, 3 DC/DC step-down
39 controllers, 11 LDOs, RTC, automatic battery, temperature and
40 over current monitoring, GPIOs, ADC and a watchdog.
41
Samuel Ortizab85b1202013-04-09 14:40:09 +020042config PMIC_ADP5520
43 bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
44 depends on I2C=y
45 help
46 Say yes here to add support for Analog Devices AD5520 and ADP5501,
47 Multifunction Power Management IC. This includes
48 the I2C driver and the core APIs _only_, you have to select
49 individual components like LCD backlight, LEDs, GPIOs and Kepad
50 under the corresponding menus.
51
52config MFD_AAT2870_CORE
53 bool "AnalogicTech AAT2870"
54 select MFD_CORE
Geert Uytterhoeven6fafecc2015-05-05 18:32:27 +020055 depends on I2C=y
56 depends on GPIOLIB || COMPILE_TEST
Samuel Ortizab85b1202013-04-09 14:40:09 +020057 help
58 If you say yes here you get support for the AAT2870.
59 This driver provides common support for accessing the device,
60 additional drivers must be enabled in order to use the
61 functionality of the device.
Ben Dooksb6d64542007-02-20 13:58:01 -080062
Cyrille Pitchen5c41f112015-09-28 11:13:26 +020063config MFD_ATMEL_FLEXCOM
64 tristate "Atmel Flexcom (Flexible Serial Communication Unit)"
65 select MFD_CORE
66 depends on OF
67 help
68 Select this to get support for Atmel Flexcom. This is a wrapper
69 which embeds a SPI controller, a I2C controller and a USART. Only
70 one function can be used at a time. The choice is done at boot time
71 by the probe function of this MFD driver according to a device tree
72 property.
73
Boris Brezillon2c86e9f2014-10-06 15:48:43 +020074config MFD_ATMEL_HLCDC
Boris Brezillon292aabb2014-12-01 11:52:36 +010075 tristate "Atmel HLCDC (High-end LCD Controller)"
Boris Brezillon2c86e9f2014-10-06 15:48:43 +020076 select MFD_CORE
77 select REGMAP_MMIO
78 depends on OF
Boris Brezillon292aabb2014-12-01 11:52:36 +010079 help
80 If you say yes here you get support for the HLCDC block.
81 This driver provides common support for accessing the device,
82 additional drivers must be enabled in order to use the
83 functionality of the device.
Boris Brezillon2c86e9f2014-10-06 15:48:43 +020084
Matt Porter037b60f22014-03-11 19:33:54 -040085config MFD_BCM590XX
86 tristate "Broadcom BCM590xx PMUs"
87 select MFD_CORE
88 select REGMAP_I2C
89 depends on I2C
90 help
91 Support for the BCM590xx PMUs from Broadcom
92
Carlo Caionecfb61a42014-05-01 14:29:27 +020093config MFD_AXP20X
Chen-Yu Tsai4fd41152016-02-12 10:02:42 +080094 tristate
Carlo Caionecfb61a42014-05-01 14:29:27 +020095 select MFD_CORE
Carlo Caionecfb61a42014-05-01 14:29:27 +020096 select REGMAP_IRQ
Chen-Yu Tsai4fd41152016-02-12 10:02:42 +080097
98config MFD_AXP20X_I2C
99 tristate "X-Powers AXP series PMICs with I2C"
100 select MFD_AXP20X
101 select REGMAP_I2C
102 depends on I2C
Carlo Caionecfb61a42014-05-01 14:29:27 +0200103 help
Chen-Yu Tsai4fd41152016-02-12 10:02:42 +0800104 If you say Y here you get support for the X-Powers AXP series power
105 management ICs (PMICs) controlled with I2C.
Carlo Caionecfb61a42014-05-01 14:29:27 +0200106 This driver include only the core APIs. You have to select individual
107 components like regulators or the PEK (Power Enable Key) under the
108 corresponding menus.
109
Chen-Yu Tsai02071f02016-02-12 10:02:44 +0800110config MFD_AXP20X_RSB
111 tristate "X-Powers AXP series PMICs with RSB"
112 select MFD_AXP20X
113 depends on SUNXI_RSB
114 help
115 If you say Y here you get support for the X-Powers AXP series power
116 management ICs (PMICs) controlled with RSB.
Simon Glass4ab61742013-02-25 14:08:37 -0800117 This driver include only the core APIs. You have to select individual
118 components like regulators or the PEK (Power Enable Key) under the
Geert Uytterhoevenfc83f582013-05-06 09:46:29 +0200119 corresponding menus.
Simon Glass4ab61742013-02-25 14:08:37 -0800120
Qiao Zhou70c6cce2012-07-09 14:37:32 +0800121config MFD_CROS_EC
Simon Glass89969002013-02-25 14:08:38 -0800122 tristate "ChromeOS Embedded Controller"
123 select MFD_CORE
Javier Martinez Canillas062476f2015-06-09 13:04:44 +0200124 select CHROME_PLATFORMS
125 select CROS_EC_PROTO
Javier Martinez Canillasb9124a52015-08-19 13:19:53 +0200126 depends on X86 || ARM || COMPILE_TEST
Russell Kinga4e137a2005-08-18 10:06:59 +0100127 help
128 If you say Y here you get support for the ChromeOS Embedded
129 Controller (EC) providing keyboard, battery and power services.
Ben Dooksb6d64542007-02-20 13:58:01 -0800130 You also need to enable the driver for the bus you are using. The
131 protocol for talking to the EC is defined by the bus driver.
132
Simon Glass89969002013-02-25 14:08:38 -0800133config MFD_CROS_EC_I2C
134 tristate "ChromeOS Embedded Controller (I2C)"
Javier Martinez Canillasda935c02015-08-19 13:19:56 +0200135 depends on MFD_CROS_EC && I2C
Ben Dooksb6d64542007-02-20 13:58:01 -0800136
Wei WANG67d16a42012-11-09 20:53:33 +0800137 help
Simon Glass89969002013-02-25 14:08:38 -0800138 If you say Y here, you get support for talking to the ChromeOS
139 EC through an I2C bus. This uses a simple byte-level protocol with
140 a checksum. Failing accesses will be retried three times to
141 improve reliability.
142
Simon Glassa17d94f2013-02-25 14:08:39 -0800143config MFD_CROS_EC_SPI
144 tristate "ChromeOS Embedded Controller (SPI)"
Javier Martinez Canillasda935c02015-08-19 13:19:56 +0200145 depends on MFD_CROS_EC && SPI
Simon Glassa17d94f2013-02-25 14:08:39 -0800146
147 ---help---
148 If you say Y here, you get support for talking to the ChromeOS EC
149 through a SPI bus, using a byte-level protocol. Since the EC's
150 response time cannot be guaranteed, we support ignoring
151 'pre-amble' bytes before the response actually starts.
Wei WANG67d16a42012-11-09 20:53:33 +0800152
Samuel Ortizfa9ff4b2008-02-07 00:14:49 -0800153config MFD_ASIC3
Samuel Ortizab85b1202013-04-09 14:40:09 +0200154 bool "Compaq ASIC3"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200155 depends on GPIOLIB && ARM
Philipp Zabel9461f652009-06-15 12:10:24 +0200156 select MFD_CORE
Samuel Ortizfa9ff4b2008-02-07 00:14:49 -0800157 ---help---
158 This driver supports the ASIC3 multifunction chip found on many
159 PDAs (mainly iPAQ and HTC based ones)
160
Samuel Ortizab85b1202013-04-09 14:40:09 +0200161config PMIC_DA903X
162 bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
163 depends on I2C=y
164 help
Laszlo Papp921a1b02014-02-11 04:50:51 +0000165 Say yes here to add support for Dialog Semiconductor DA9030 (a.k.a
Samuel Ortizab85b1202013-04-09 14:40:09 +0200166 ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
167 usually found on PXA processors-based platforms. This includes
168 the I2C driver and the core APIs _only_, you have to select
169 individual components like LCD backlight, voltage regulators,
170 LEDs and battery-charger under the corresponding menus.
171
172config PMIC_DA9052
173 bool
174 select MFD_CORE
175
176config MFD_DA9052_SPI
177 bool "Dialog Semiconductor DA9052/53 PMIC variants with SPI"
178 select REGMAP_SPI
179 select REGMAP_IRQ
180 select PMIC_DA9052
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200181 depends on SPI_MASTER=y
Samuel Ortizab85b1202013-04-09 14:40:09 +0200182 help
183 Support for the Dialog Semiconductor DA9052 PMIC
184 when controlled using SPI. This driver provides common support
185 for accessing the device, additional drivers must be enabled in
186 order to use the functionality of the device.
187
188config MFD_DA9052_I2C
189 bool "Dialog Semiconductor DA9052/53 PMIC variants with I2C"
190 select REGMAP_I2C
191 select REGMAP_IRQ
192 select PMIC_DA9052
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200193 depends on I2C=y
Samuel Ortizab85b1202013-04-09 14:40:09 +0200194 help
195 Support for the Dialog Semiconductor DA9052 PMIC
196 when controlled using I2C. This driver provides common support
197 for accessing the device, additional drivers must be enabled in
198 order to use the functionality of the device.
199
200config MFD_DA9055
201 bool "Dialog Semiconductor DA9055 PMIC Support"
202 select REGMAP_I2C
203 select REGMAP_IRQ
204 select MFD_CORE
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200205 depends on I2C=y
Samuel Ortizab85b1202013-04-09 14:40:09 +0200206 help
207 Say yes here for support of Dialog Semiconductor DA9055. This is
208 a Power Management IC. This driver provides common support for
209 accessing the device as well as the I2C interface to the chip itself.
210 Additional drivers must be enabled in order to use the functionality
211 of the device.
212
213 This driver can be built as a module. If built as a module it will be
214 called "da9055"
215
S Twiss9b40b032015-07-01 14:11:32 +0100216config MFD_DA9062
217 tristate "Dialog Semiconductor DA9062 PMIC Support"
218 select MFD_CORE
219 select REGMAP_I2C
220 select REGMAP_IRQ
Axel Linc2e04af2016-01-21 08:49:31 +0800221 depends on I2C
S Twiss9b40b032015-07-01 14:11:32 +0100222 help
223 Say yes here for support for the Dialog Semiconductor DA9062 PMIC.
224 This includes the I2C driver and core APIs.
225 Additional drivers must be enabled in order to use the functionality
226 of the device.
227
Krystian Garbaciak8e685482013-07-29 19:00:43 +0200228config MFD_DA9063
Geert Uytterhoeven8726cac2015-12-07 17:16:43 +0100229 tristate "Dialog Semiconductor DA9063 PMIC Support"
Krystian Garbaciak8e685482013-07-29 19:00:43 +0200230 select MFD_CORE
231 select REGMAP_I2C
232 select REGMAP_IRQ
Axel Linc2e04af2016-01-21 08:49:31 +0800233 depends on I2C
Krystian Garbaciak8e685482013-07-29 19:00:43 +0200234 help
235 Say yes here for support for the Dialog Semiconductor DA9063 PMIC.
236 This includes the I2C driver and core APIs.
237 Additional drivers must be enabled in order to use the functionality
238 of the device.
239
Adam Thomsonb8fce552014-12-22 16:51:06 +0000240config MFD_DA9150
241 tristate "Dialog Semiconductor DA9150 Charger Fuel-Gauge chip"
Axel Linc2e04af2016-01-21 08:49:31 +0800242 depends on I2C
Adam Thomsonb8fce552014-12-22 16:51:06 +0000243 select MFD_CORE
244 select REGMAP_I2C
245 select REGMAP_IRQ
246 help
247 This adds support for the DA9150 integrated charger and fuel-gauge
248 chip. This driver provides common support for accessing the device.
249 Additional drivers must be enabled in order to use the specific
250 features of the device.
251
Octavian Purdila338a1282014-11-06 15:48:03 +0200252config MFD_DLN2
253 tristate "Diolan DLN2 support"
254 select MFD_CORE
255 depends on USB
256 help
257 This adds support for Diolan USB-I2C/SPI/GPIO Master Adapter
258 DLN-2. Additional drivers such as I2C_DLN2, GPIO_DLN2,
259 etc. must be enabled in order to use the functionality of
260 the device.
261
Samuel Ortizab85b1202013-04-09 14:40:09 +0200262config MFD_MC13XXX
263 tristate
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200264 depends on (SPI_MASTER || I2C)
Samuel Ortizab85b1202013-04-09 14:40:09 +0200265 select MFD_CORE
Alexander Shiyan10f9eda2014-06-18 21:05:40 +0400266 select REGMAP_IRQ
David Brownell0931a4c2008-12-22 12:05:27 +0100267 help
Samuel Ortizab85b1202013-04-09 14:40:09 +0200268 Enable support for the Freescale MC13783 and MC13892 PMICs.
269 This driver provides common support for accessing the device,
270 additional drivers must be enabled in order to use the
271 functionality of the device.
David Brownell0931a4c2008-12-22 12:05:27 +0100272
Samuel Ortizab85b1202013-04-09 14:40:09 +0200273config MFD_MC13XXX_SPI
274 tristate "Freescale MC13783 and MC13892 SPI interface"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200275 depends on SPI_MASTER
Samuel Ortizab85b1202013-04-09 14:40:09 +0200276 select REGMAP_SPI
277 select MFD_MC13XXX
Patil, Rachna01636eb2012-10-16 12:55:43 +0530278 help
Samuel Ortizab85b1202013-04-09 14:40:09 +0200279 Select this if your MC13xxx is connected via an SPI bus.
280
281config MFD_MC13XXX_I2C
282 tristate "Freescale MC13892 I2C interface"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200283 depends on I2C
Samuel Ortizab85b1202013-04-09 14:40:09 +0200284 select REGMAP_I2C
285 select MFD_MC13XXX
286 help
287 Select this if your MC13xxx is connected via an I2C bus.
Patil, Rachna01636eb2012-10-16 12:55:43 +0530288
Markus Pargmanne2fccf52015-12-14 14:53:50 +0100289config MFD_MX25_TSADC
290 tristate "Freescale i.MX25 integrated Touchscreen and ADC unit"
291 select REGMAP_MMIO
292 depends on (SOC_IMX25 && OF) || COMPILE_TEST
293 help
294 Enable support for the integrated Touchscreen and ADC unit of the
295 i.MX25 processors. They consist of a conversion queue for general
296 purpose ADC and a queue for Touchscreens.
297
Guodong Xu8bdf87b2014-09-01 16:28:34 +0800298config MFD_HI6421_PMIC
299 tristate "HiSilicon Hi6421 PMU/Codec IC"
300 depends on OF
301 select MFD_CORE
302 select REGMAP_MMIO
303 help
304 Add support for HiSilicon Hi6421 PMIC. Hi6421 includes multi-
305 functions, such as regulators, RTC, codec, Coulomb counter, etc.
306 This driver includes core APIs _only_. You have to select
307 individul components like voltage regulators under corresponding
308 menus in order to enable them.
309 We communicate with the Hi6421 via memory-mapped I/O.
310
Philipp Zabela1635b82008-04-09 19:20:34 +0100311config HTC_EGPIO
312 bool "HTC EGPIO support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200313 depends on GPIOLIB && ARM
Philipp Zabela1635b82008-04-09 19:20:34 +0100314 help
315 This driver supports the CPLD egpio chip present on
316 several HTC phones. It provides basic support for input
317 pins, output pins, and irqs.
318
Philipp Zabel5dc33392008-04-12 13:25:41 +0100319config HTC_PASIC3
320 tristate "HTC PASIC3 LED/DS1WM chip support"
Philipp Zabel0254a8f2009-02-17 10:06:45 +0100321 select MFD_CORE
Philipp Zabel5dc33392008-04-12 13:25:41 +0100322 help
323 This core driver provides register access for the LED/DS1WM
324 chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
325 HTC Magician devices, respectively. Actual functionality is
326 handled by the leds-pasic3 and ds1wm drivers.
327
Cory Maccarrone6048a3d2010-01-19 11:22:45 +0100328config HTC_I2CPLD
329 bool "HTC I2C PLD chip support"
Randy Dunlapbef3e202010-01-20 19:55:34 -0800330 depends on I2C=y && GPIOLIB
Cory Maccarrone6048a3d2010-01-19 11:22:45 +0100331 help
332 If you say yes here you get support for the supposed CPLD
333 found on omap850 HTC devices like the HTC Wizard and HTC Herald.
334 This device provides input and output GPIOs through an I2C
335 interface to one or more sub-chips.
336
Raymond Tan60ae5b92015-02-02 10:52:51 +0800337config MFD_INTEL_QUARK_I2C_GPIO
338 tristate "Intel Quark MFD I2C GPIO"
339 depends on PCI
340 depends on X86
341 depends on COMMON_CLK
342 select MFD_CORE
343 help
344 This MFD provides support for I2C and GPIO that exist only
345 in a single PCI device. It splits the 2 IO devices to
346 their respective IO driver.
347 The GPIO exports a total amount of 8 interrupt-capable GPIOs.
348
Samuel Ortizab85b1202013-04-09 14:40:09 +0200349config LPC_ICH
350 tristate "Intel ICH LPC"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200351 depends on PCI
Johan Hovold16c5c022012-05-03 12:26:36 +0200352 select MFD_CORE
Johan Hovold16c5c022012-05-03 12:26:36 +0200353 help
Samuel Ortizab85b1202013-04-09 14:40:09 +0200354 The LPC bridge function of the Intel ICH provides support for
355 many functional units. This driver provides needed support for
356 other drivers to control these functions, currently GPIO and
357 watchdog.
Johan Hovold16c5c022012-05-03 12:26:36 +0200358
Samuel Ortizab85b1202013-04-09 14:40:09 +0200359config LPC_SCH
360 tristate "Intel SCH LPC"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200361 depends on PCI
Guenter Roeckfc498fa2011-03-24 12:12:47 -0700362 select MFD_CORE
Linus Walleij798a8ee2011-03-09 13:02:38 +0100363 help
Samuel Ortizab85b1202013-04-09 14:40:09 +0200364 LPC bridge function of the Intel SCH provides support for
365 System Management Bus and General Purpose I/O.
Linus Walleij798a8ee2011-03-09 13:02:38 +0100366
Zhu, Lejun7cf0a662014-06-03 13:26:03 +0800367config INTEL_SOC_PMIC
368 bool "Support for Intel Atom SoC PMIC"
Shobhit Kumar04cbfe62015-07-22 14:01:44 +0530369 depends on GPIOLIB
Zhu, Lejun7cf0a662014-06-03 13:26:03 +0800370 depends on I2C=y
371 select MFD_CORE
372 select REGMAP_I2C
373 select REGMAP_IRQ
374 help
375 Select this option to enable support for the PMIC device
376 on some Intel SoC systems. The PMIC provides ADC, GPIO,
377 thermal, charger and related power management functions
378 on these systems.
379
Andy Shevchenko4b45efe2015-07-27 18:04:03 +0300380config MFD_INTEL_LPSS
381 tristate
382 select COMMON_CLK
383 select MFD_CORE
384
385config MFD_INTEL_LPSS_ACPI
386 tristate "Intel Low Power Subsystem support in ACPI mode"
387 select MFD_INTEL_LPSS
388 depends on X86 && ACPI
389 help
390 This driver supports Intel Low Power Subsystem (LPSS) devices such as
391 I2C, SPI and HS-UART starting from Intel Sunrisepoint (Intel Skylake
392 PCH) in ACPI mode.
393
394config MFD_INTEL_LPSS_PCI
395 tristate "Intel Low Power Subsystem support in PCI mode"
396 select MFD_INTEL_LPSS
397 depends on X86 && PCI
398 help
399 This driver supports Intel Low Power Subsystem (LPSS) devices such as
400 I2C, SPI and HS-UART starting from Intel Sunrisepoint (Intel Skylake
401 PCH) in PCI mode.
402
Samuel Ortizab85b1202013-04-09 14:40:09 +0200403config MFD_INTEL_MSIC
404 bool "Intel MSIC"
405 depends on INTEL_SCU_IPC
Todd Fischer31dd6a22010-04-08 09:04:55 +0200406 select MFD_CORE
Todd Fischer31dd6a22010-04-08 09:04:55 +0200407 help
Samuel Ortizab85b1202013-04-09 14:40:09 +0200408 Select this option to enable access to Intel MSIC (Avatele
409 Passage) chip. This chip embeds audio, battery, GPIO, etc.
410 devices used in Intel Medfield platforms.
Todd Fischer31dd6a22010-04-08 09:04:55 +0200411
Linus Walleijdcc21cc2014-04-03 17:45:15 +0200412config MFD_IPAQ_MICRO
413 bool "Atmel Micro ASIC (iPAQ h3100/h3600/h3700) Support"
414 depends on SA1100_H3100 || SA1100_H3600
415 select MFD_CORE
416 help
417 Select this to get support for the Microcontroller found in
418 the Compaq iPAQ handheld computers. This is an Atmel
419 AT90LS8535 microcontroller flashed with a special iPAQ
420 firmware using the custom protocol implemented in this driver.
421
Samuel Ortizab85b1202013-04-09 14:40:09 +0200422config MFD_JANZ_CMODIO
423 tristate "Janz CMOD-IO PCI MODULbus Carrier Board"
AnilKumar Chd48f4112012-01-11 16:11:41 +0530424 select MFD_CORE
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200425 depends on PCI
AnilKumar Chd48f4112012-01-11 16:11:41 +0530426 help
Samuel Ortizab85b1202013-04-09 14:40:09 +0200427 This is the core driver for the Janz CMOD-IO PCI MODULbus
428 carrier board. This device is a PCI to MODULbus bridge which may
429 host many different types of MODULbus daughterboards, including
430 CAN and GPIO controllers.
AnilKumar Chd48f4112012-01-11 16:11:41 +0530431
Samuel Ortizab85b1202013-04-09 14:40:09 +0200432config MFD_JZ4740_ADC
433 bool "Janz JZ4740 ADC core"
434 select MFD_CORE
435 select GENERIC_IRQ_CHIP
436 depends on MACH_JZ4740
437 help
438 Say yes here if you want support for the ADC unit in the JZ4740 SoC.
439 This driver is necessary for jz4740-battery and jz4740-hwmon driver.
AnilKumar Chd48f4112012-01-11 16:11:41 +0530440
Kevin Strasser43620a12013-06-23 21:00:03 -0700441config MFD_KEMPLD
442 tristate "Kontron module PLD device"
443 select MFD_CORE
444 help
445 This is the core driver for the PLD (Programmable Logic Device) found
446 on some Kontron ETX and COMexpress (ETXexpress) modules. The PLD
447 device may provide functions like watchdog, GPIO, UART and I2C bus.
448
449 The following modules are supported:
Michael Brunner18ca2ba2015-07-14 13:20:50 +0200450 * COMe-bBL6
Michael Brunnera3ee7502014-02-24 08:53:46 +0100451 * COMe-bHL6
Kevin Strasser43620a12013-06-23 21:00:03 -0700452 * COMe-bIP#
453 * COMe-bPC2 (ETXexpress-PC)
454 * COMe-bSC# (ETXexpress-SC T#)
Michael Brunnerfb358e42015-01-27 11:05:49 +0100455 * COMe-cBL6
Michael Brunnera3ee7502014-02-24 08:53:46 +0100456 * COMe-cBT6
Michael Brunner18ca2ba2015-07-14 13:20:50 +0200457 * COMe-cBW6
Kevin Strasser43620a12013-06-23 21:00:03 -0700458 * COMe-cCT6
459 * COMe-cDC2 (microETXexpress-DC)
Michael Brunnera3ee7502014-02-24 08:53:46 +0100460 * COMe-cHL6
Kevin Strasser43620a12013-06-23 21:00:03 -0700461 * COMe-cPC2 (microETXexpress-PC)
Michael Brunnera3ee7502014-02-24 08:53:46 +0100462 * COMe-mBT10
Kevin Strasser43620a12013-06-23 21:00:03 -0700463 * COMe-mCT10
Michael Brunnera3ee7502014-02-24 08:53:46 +0100464 * COMe-mTT10 (nanoETXexpress-TT)
Kevin Strasser43620a12013-06-23 21:00:03 -0700465 * ETX-OH
466
467 This driver can also be built as a module. If so, the module
468 will be called kempld-core.
469
Samuel Ortizab85b1202013-04-09 14:40:09 +0200470config MFD_88PM800
471 tristate "Marvell 88PM800"
Axel Linc2e04af2016-01-21 08:49:31 +0800472 depends on I2C
Laxman Dewangandc9913a2012-02-21 18:21:34 +0530473 select REGMAP_I2C
AnilKumar Chee487112012-12-10 16:44:56 +0530474 select REGMAP_IRQ
Margarita Olaya36e52872011-06-09 14:50:00 -0500475 select MFD_CORE
Margarita Olaya36e52872011-06-09 14:50:00 -0500476 help
Samuel Ortizab85b1202013-04-09 14:40:09 +0200477 This supports for Marvell 88PM800 Power Management IC.
478 This includes the I2C driver and the core APIs _only_, you have to
479 select individual components like voltage regulators, RTC and
480 battery-charger under the corresponding menus.
Margarita Olaya36e52872011-06-09 14:50:00 -0500481
Samuel Ortizab85b1202013-04-09 14:40:09 +0200482config MFD_88PM805
483 tristate "Marvell 88PM805"
Axel Linc2e04af2016-01-21 08:49:31 +0800484 depends on I2C
Laxman Dewanganedd7eab2012-11-14 21:09:28 +0530485 select REGMAP_I2C
Axel Linc2ace4f2012-12-05 21:19:48 +0800486 select REGMAP_IRQ
Samuel Ortizab85b1202013-04-09 14:40:09 +0200487 select MFD_CORE
Laxman Dewanganedd7eab2012-11-14 21:09:28 +0530488 help
Samuel Ortizab85b1202013-04-09 14:40:09 +0200489 This supports for Marvell 88PM805 Power Management IC. This includes
490 the I2C driver and the core APIs _only_, you have to select individual
491 components like codec device, headset/Mic device under the
492 corresponding menus.
Laxman Dewanganedd7eab2012-11-14 21:09:28 +0530493
Samuel Ortizab85b1202013-04-09 14:40:09 +0200494config MFD_88PM860X
495 bool "Marvell 88PM8606/88PM8607"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200496 depends on I2C=y
Chuansheng Liufbfc23e2012-12-24 22:19:56 +0800497 select REGMAP_I2C
Rabin Vincent27e34992010-07-02 16:52:08 +0530498 select MFD_CORE
499 help
Samuel Ortizab85b1202013-04-09 14:40:09 +0200500 This supports for Marvell 88PM8606/88PM8607 Power Management IC.
501 This includes the I2C driver and the core APIs _only_, you have to
502 select individual components like voltage regulators, RTC and
503 battery-charger under the corresponding menus.
Milo Kimeea6b7c2012-09-19 18:53:33 +0200504
Chanwoo Choi3008ddb2013-11-22 16:51:05 +0100505config MFD_MAX14577
Krzysztof Kozlowskiaee2a572014-04-14 11:17:18 +0200506 bool "Maxim Semiconductor MAX14577/77836 MUIC + Charger Support"
Chanwoo Choi3008ddb2013-11-22 16:51:05 +0100507 depends on I2C=y
508 select MFD_CORE
509 select REGMAP_I2C
Krzysztof Kozlowski0c8a9de2014-03-11 15:21:42 +0100510 select REGMAP_IRQ
Chanwoo Choi3008ddb2013-11-22 16:51:05 +0100511 select IRQ_DOMAIN
512 help
Krzysztof Kozlowskiaee2a572014-04-14 11:17:18 +0200513 Say yes here to add support for Maxim Semiconductor MAX14577 and
514 MAX77836 Micro-USB ICs with battery charger.
Chanwoo Choi3008ddb2013-11-22 16:51:05 +0100515 This driver provides common support for accessing the device;
516 additional drivers must be enabled in order to use the functionality
517 of the device.
518
Jonghwa Leedae8a962012-06-25 10:34:36 +0200519config MFD_MAX77686
Javier Martinez Canillasa259f382014-07-24 14:39:24 +0200520 bool "Maxim Semiconductor MAX77686/802 PMIC Support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200521 depends on I2C=y
Krzysztof Kozlowski2b506352014-12-29 10:09:16 +0100522 depends on OF
Jonghwa Leedae8a962012-06-25 10:34:36 +0200523 select MFD_CORE
524 select REGMAP_I2C
Javier Martinez Canillas6f1c1e72014-07-04 22:24:04 +0200525 select REGMAP_IRQ
Jonghwa Leedae8a962012-06-25 10:34:36 +0200526 select IRQ_DOMAIN
527 help
Javier Martinez Canillasa259f382014-07-24 14:39:24 +0200528 Say yes here to add support for Maxim Semiconductor MAX77686 and
529 MAX77802 which are Power Management IC with an RTC on chip.
Jonghwa Leedae8a962012-06-25 10:34:36 +0200530 This driver provides common support for accessing the device;
531 additional drivers must be enabled in order to use the functionality
532 of the device.
533
Chanwoo Choi83871c02012-05-14 22:50:39 +0200534config MFD_MAX77693
535 bool "Maxim Semiconductor MAX77693 PMIC Support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200536 depends on I2C=y
Chanwoo Choi83871c02012-05-14 22:50:39 +0200537 select MFD_CORE
Chanwoo Choi29f772d2012-05-24 15:08:58 +0900538 select REGMAP_I2C
Robert Baldyga342d6692014-05-21 08:52:48 +0200539 select REGMAP_IRQ
Chanwoo Choi83871c02012-05-14 22:50:39 +0200540 help
Laszlo Papp921a1b02014-02-11 04:50:51 +0000541 Say yes here to add support for Maxim Semiconductor MAX77693.
Chanwoo Choi83871c02012-05-14 22:50:39 +0200542 This is a companion Power Management IC with Flash, Haptic, Charger,
543 and MUIC(Micro USB Interface Controller) controls on chip.
544 This driver provides common support for accessing the device;
545 additional drivers must be enabled in order to use the functionality
546 of the device.
547
Jaewon Kimc7f585f2015-03-02 19:10:34 +0900548config MFD_MAX77843
549 bool "Maxim Semiconductor MAX77843 PMIC Support"
550 depends on I2C=y
551 select MFD_CORE
552 select REGMAP_I2C
553 select REGMAP_IRQ
554 help
555 Say yes here to add support for Maxim Semiconductor MAX77843.
556 This is companion Power Management IC with LEDs, Haptic, Charger,
557 Fuel Gauge, MUIC(Micro USB Interface Controller) controls on chip.
558 This driver provides common support for accessing the device;
559 additional drivers must be enabled in order to use the functionality
560 of the device.
561
Gyungoh Yooa91d2f82012-08-15 10:28:46 -0600562config MFD_MAX8907
563 tristate "Maxim Semiconductor MAX8907 PMIC Support"
564 select MFD_CORE
Axel Linc2e04af2016-01-21 08:49:31 +0800565 depends on I2C
Gyungoh Yooa91d2f82012-08-15 10:28:46 -0600566 select REGMAP_I2C
567 select REGMAP_IRQ
568 help
Laszlo Papp921a1b02014-02-11 04:50:51 +0000569 Say yes here to add support for Maxim Semiconductor MAX8907. This is
Gyungoh Yooa91d2f82012-08-15 10:28:46 -0600570 a Power Management IC. This driver provides common support for
571 accessing the device; additional drivers must be enabled in order
572 to use the functionality of the device.
573
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100574config MFD_MAX8925
Haojian Zhuang1f1cf8f2010-02-05 16:07:54 +0100575 bool "Maxim Semiconductor MAX8925 PMIC Support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200576 depends on I2C=y
Haojian Zhuang1ad99892010-01-08 12:43:29 -0500577 select MFD_CORE
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100578 help
Laszlo Papp921a1b02014-02-11 04:50:51 +0000579 Say yes here to add support for Maxim Semiconductor MAX8925. This is
Masanari Iida6b2aac42012-04-14 00:14:11 +0900580 a Power Management IC. This driver provides common support for
Haojian Zhuangd50f8f32010-01-08 12:29:23 +0100581 accessing the device, additional drivers must be enabled in order
582 to use the functionality of the device.
583
MyungJoo Ham527e7e92011-03-04 15:50:26 +0900584config MFD_MAX8997
585 bool "Maxim Semiconductor MAX8997/8966 PMIC Support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200586 depends on I2C=y
MyungJoo Ham527e7e92011-03-04 15:50:26 +0900587 select MFD_CORE
Thomas Abrahamb41511f2012-07-02 09:02:55 +0900588 select IRQ_DOMAIN
MyungJoo Ham527e7e92011-03-04 15:50:26 +0900589 help
Laszlo Papp921a1b02014-02-11 04:50:51 +0000590 Say yes here to add support for Maxim Semiconductor MAX8997/8966.
MyungJoo Ham527e7e92011-03-04 15:50:26 +0900591 This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic,
592 MUIC controls on chip.
Randy Dunlapd7e8c012011-03-14 11:28:37 +0100593 This driver provides common support for accessing the device;
MyungJoo Ham527e7e92011-03-04 15:50:26 +0900594 additional drivers must be enabled in order to use the functionality
595 of the device.
596
Kyungmin Park156f2522010-06-16 09:04:16 +0200597config MFD_MAX8998
Kyungmin Parkf8539dd2010-08-23 13:46:49 +0900598 bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200599 depends on I2C=y
Kyungmin Park156f2522010-06-16 09:04:16 +0200600 select MFD_CORE
Tomasz Figa443c6ae2013-06-24 14:39:52 +0200601 select IRQ_DOMAIN
Kyungmin Park156f2522010-06-16 09:04:16 +0200602 help
Laszlo Papp921a1b02014-02-11 04:50:51 +0000603 Say yes here to add support for Maxim Semiconductor MAX8998 and
Kyungmin Parkf8539dd2010-08-23 13:46:49 +0900604 National Semiconductor LP3974. This is a Power Management IC.
Masanari Iida6b2aac42012-04-14 00:14:11 +0900605 This driver provides common support for accessing the device,
Kyungmin Parkf8539dd2010-08-23 13:46:49 +0900606 additional drivers must be enabled in order to use the functionality
607 of the device.
Kyungmin Park156f2522010-06-16 09:04:16 +0200608
Flora Fu6df8dd52015-02-22 13:15:29 +0100609config MFD_MT6397
610 tristate "MediaTek MT6397 PMIC Support"
611 select MFD_CORE
612 select IRQ_DOMAIN
613 help
614 Say yes here to add support for MediaTek MT6397 PMIC. This is
615 a Power Management IC. This driver provides common support for
616 accessing the device; additional drivers must be enabled in order
617 to use the functionality of the device.
618
Andreas Wernerdfbdcd72014-08-27 19:51:45 +0200619config MFD_MENF21BMC
620 tristate "MEN 14F021P00 Board Management Controller Support"
621 depends on I2C
622 select MFD_CORE
623 help
624 Say yes here to add support for the MEN 14F021P00 BMC
625 which is a Board Management Controller connected to the I2C bus.
626 The device supports multiple sub-devices like LED, HWMON and WDT.
627 This driver provides common support for accessing the devices;
628 additional drivers must be enabled in order to use the
629 functionality of the BMC device.
630
631 This driver can also be built as a module. If so the module
632 will be called menf21bmc.
633
Samuel Ortizab85b1202013-04-09 14:40:09 +0200634config EZX_PCAP
635 bool "Motorola EZXPCAP Support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200636 depends on SPI_MASTER
Samuel Ortizab85b1202013-04-09 14:40:09 +0200637 help
638 This enables the PCAP ASIC present on EZX Phones. This is
639 needed for MMC, TouchScreen, Sound, USB, etc..
640
641config MFD_VIPERBOARD
642 tristate "Nano River Technologies Viperboard"
643 select MFD_CORE
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200644 depends on USB
Samuel Ortizab85b1202013-04-09 14:40:09 +0200645 default n
646 help
647 Say yes here if you want support for Nano River Technologies
648 Viperboard.
649 There are mfd cell drivers available for i2c master, adc and
650 both gpios found on the board. The spi part does not yet
651 have a driver.
652 You need to select the mfd cell drivers separately.
653 The drivers do not support all features the board exposes.
654
655config MFD_RETU
Aaro Koskinen95e50f62013-04-09 22:51:25 +0300656 tristate "Nokia Retu and Tahvo multi-function device"
Samuel Ortizab85b1202013-04-09 14:40:09 +0200657 select MFD_CORE
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200658 depends on I2C
Samuel Ortizab85b1202013-04-09 14:40:09 +0200659 select REGMAP_IRQ
660 help
Aaro Koskinen95e50f62013-04-09 22:51:25 +0300661 Retu and Tahvo are a multi-function devices found on Nokia
662 Internet Tablets (770, N800 and N810).
Samuel Ortizab85b1202013-04-09 14:40:09 +0200663
664config MFD_PCF50633
665 tristate "NXP PCF50633"
666 depends on I2C
667 select REGMAP_I2C
668 help
669 Say yes here if you have NXP PCF50633 chip on your board.
670 This core driver provides register access and IRQ handling
671 facilities, and registers devices for the various functions
672 so that function-specific drivers can bind to them.
673
674config PCF50633_ADC
675 tristate "NXP PCF50633 ADC"
676 depends on MFD_PCF50633
677 help
678 Say yes here if you want to include support for ADC in the
679 NXP PCF50633 chip.
680
681config PCF50633_GPIO
682 tristate "NXP PCF50633 GPIO"
683 depends on MFD_PCF50633
684 help
685 Say yes here if you want to include support GPIO for pins on
686 the PCF50633 chip.
687
688config UCB1400_CORE
689 tristate "Philips UCB1400 Core driver"
690 depends on AC97_BUS
691 depends on GPIOLIB
692 help
693 This enables support for the Philips UCB1400 core functions.
694 The UCB1400 is an AC97 audio codec.
695
696 To compile this driver as a module, choose M here: the
697 module will be called ucb1400_core.
698
699config MFD_PM8XXX
700 tristate
701
702config MFD_PM8921_CORE
703 tristate "Qualcomm PM8921 PMIC chip"
Stephen Boyd549f8db2014-02-26 10:59:25 -0800704 depends on (ARM || HEXAGON)
Stephen Boyddc1a95c2014-02-26 10:59:21 -0800705 select IRQ_DOMAIN
Samuel Ortizab85b1202013-04-09 14:40:09 +0200706 select MFD_CORE
707 select MFD_PM8XXX
Stephen Boyde7b81fca2014-02-26 10:59:23 -0800708 select REGMAP
Samuel Ortizab85b1202013-04-09 14:40:09 +0200709 help
710 If you say yes to this option, support will be included for the
711 built-in PM8921 PMIC chip.
712
713 This is required if your board has a PM8921 and uses its features,
714 such as: MPPs, GPIOs, regulators, interrupts, and PWM.
715
716 Say M here if you want to include support for PM8921 chip as a module.
717 This will build a module called "pm8921-core".
718
Bjorn Andersson58e21432014-11-26 13:51:00 -0800719config MFD_QCOM_RPM
720 tristate "Qualcomm Resource Power Manager (RPM)"
721 depends on ARCH_QCOM && OF
722 help
723 If you say yes to this option, support will be included for the
724 Resource Power Manager system found in the Qualcomm 8660, 8960 and
725 8064 based devices.
726
727 This is required to access many regulators, clocks and bus
728 frequencies controlled by the RPM on these devices.
729
730 Say M here if you want to include support for the Qualcomm RPM as a
731 module. This will build a module called "qcom_rpm".
732
Josh Cartwrightc3a973a2014-08-01 17:30:48 +0300733config MFD_SPMI_PMIC
734 tristate "Qualcomm SPMI PMICs"
735 depends on ARCH_QCOM || COMPILE_TEST
736 depends on OF
737 depends on SPMI
738 select REGMAP_SPMI
739 help
740 This enables support for the Qualcomm SPMI PMICs.
741 These PMICs are currently used with the Snapdragon 800 series of
742 SoCs. Note, that this will only be useful paired with descriptions
743 of the independent functions as children nodes in the device tree.
744
745 Say M here if you want to include support for the SPMI PMIC
746 series as a module. The module will be called "qcom-spmi-pmic".
747
Samuel Ortizab85b1202013-04-09 14:40:09 +0200748config MFD_RDC321X
749 tristate "RDC R-321x southbridge"
750 select MFD_CORE
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200751 depends on PCI
Samuel Ortizab85b1202013-04-09 14:40:09 +0200752 help
753 Say yes here if you want to have support for the RDC R-321x SoC
754 southbridge which provides access to GPIOs and Watchdog using the
755 southbridge PCI device configuration space.
756
757config MFD_RTSX_PCI
758 tristate "Realtek PCI-E card reader"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200759 depends on PCI
Samuel Ortizab85b1202013-04-09 14:40:09 +0200760 select MFD_CORE
761 help
762 This supports for Realtek PCI-Express card reader including rts5209,
Micky Chingce6a5ac2015-06-29 09:19:39 +0800763 rts5227, rts522A, rts5229, rts5249, rts524A, rts525A, rtl8411, etc.
764 Realtek card reader supports access to many types of memory cards,
765 such as Memory Stick, Memory Stick Pro, Secure Digital and
766 MultiMediaCard.
Samuel Ortizab85b1202013-04-09 14:40:09 +0200767
Beomho Seo0b271252014-12-09 21:03:51 +0900768config MFD_RT5033
769 tristate "Richtek RT5033 Power Management IC"
Axel Linc2e04af2016-01-21 08:49:31 +0800770 depends on I2C
Beomho Seo0b271252014-12-09 21:03:51 +0900771 select MFD_CORE
772 select REGMAP_I2C
Artem Savkov23a2a22a2015-03-05 12:42:27 +0100773 select REGMAP_IRQ
Beomho Seo0b271252014-12-09 21:03:51 +0900774 help
775 This driver provides for the Richtek RT5033 Power Management IC,
776 which includes the I2C driver and the Core APIs. This driver provides
777 common support for accessing the device. The device supports multiple
778 sub-devices like charger, fuel gauge, flash LED, current source,
779 LDO and Buck.
780
Roger Tseng730876b2014-02-12 18:00:36 +0800781config MFD_RTSX_USB
782 tristate "Realtek USB card reader"
783 depends on USB
784 select MFD_CORE
785 help
786 Select this option to get support for Realtek USB 2.0 card readers
787 including RTS5129, RTS5139, RTS5179 and RTS5170.
788 Realtek card reader supports access to many types of memory cards,
789 such as Memory Stick Pro, Secure Digital and MultiMediaCard.
790
Samuel Ortizab85b1202013-04-09 14:40:09 +0200791config MFD_RC5T583
792 bool "Ricoh RC5T583 Power Management system device"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200793 depends on I2C=y
Samuel Ortizab85b1202013-04-09 14:40:09 +0200794 select MFD_CORE
795 select REGMAP_I2C
796 help
797 Select this option to get support for the RICOH583 Power
798 Management system device.
799 This driver provides common support for accessing the device
800 through i2c interface. The device supports multiple sub-devices
801 like GPIO, interrupts, RTC, LDO and DCDC regulators, onkey.
802 Additional drivers must be enabled in order to use the
803 different functionality of the device.
804
Chris Zhongf69a7cf2014-09-03 21:51:44 +0800805config MFD_RK808
806 tristate "Rockchip RK808 Power Management chip"
807 depends on I2C && OF
808 select MFD_CORE
809 select REGMAP_I2C
810 select REGMAP_IRQ
811 help
812 If you say yes here you get support for the RK808
813 Power Management chips.
814 This driver provides common support for accessing the device
815 through I2C interface. The device supports multiple sub-devices
816 including interrupts, RTC, LDO & DCDC regulators, and onkey.
817
Beniamino Galvani9bb9e292014-08-30 14:50:23 +0200818config MFD_RN5T618
819 tristate "Ricoh RN5T5618 PMIC"
820 depends on I2C
821 select MFD_CORE
822 select REGMAP_I2C
823 help
824 Say yes here to add support for the Ricoh RN5T618 PMIC. This
825 driver provides common support for accessing the device,
826 additional drivers must be enabled in order to use the
827 functionality of the device.
828
Sangbeom Kim66c9fbb2012-07-11 21:06:40 +0900829config MFD_SEC_CORE
830 bool "SAMSUNG Electronics PMIC Series Support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200831 depends on I2C=y
Sangbeom Kimc3d4d692012-01-09 00:09:09 +0100832 select MFD_CORE
833 select REGMAP_I2C
Sangbeom Kim6445b842012-07-11 21:08:11 +0900834 select REGMAP_IRQ
Sangbeom Kimc3d4d692012-01-09 00:09:09 +0100835 help
Sangbeom Kim66c9fbb2012-07-11 21:06:40 +0900836 Support for the Samsung Electronics MFD series.
Masanari Iida6b2aac42012-04-14 00:14:11 +0900837 This driver provides common support for accessing the device,
Sangbeom Kimc3d4d692012-01-09 00:09:09 +0100838 additional drivers must be enabled in order to use the functionality
839 of the device
840
Andrey Smirnov9b8e1a52013-04-18 09:58:30 -0700841config MFD_SI476X_CORE
842 tristate "Silicon Laboratories 4761/64/68 AM/FM radio."
Balaji Raof52046b2009-01-09 01:49:01 +0100843 depends on I2C
Sascha Hauer8238add2009-08-19 01:40:28 +0200844 select MFD_CORE
Marc Reillydf3df642012-04-01 16:41:39 +1000845 select REGMAP_I2C
846 help
Andrey Smirnov9b8e1a52013-04-18 09:58:30 -0700847 This is the core driver for the SI476x series of AM/FM
848 radio. This MFD driver connects the radio-si476x V4L2 module
849 and the si476x audio codec.
850
851 To compile this driver as a module, choose M here: the
852 module will be called si476x-core.
853
Samuel Ortizab85b1202013-04-09 14:40:09 +0200854config MFD_SM501
855 tristate "Silicon Motion SM501"
856 ---help---
857 This is the core driver for the Silicon Motion SM501 multimedia
858 companion chip. This device is a multifunction device which may
859 provide numerous interfaces including USB host controller, USB gadget,
860 asynchronous serial ports, audio functions, and a dual display video
861 interface. The device may be connected by PCI or local bus with
862 varying functions enabled.
Mark Brown1d9f9f02008-09-10 18:58:42 +0100863
Samuel Ortizab85b1202013-04-09 14:40:09 +0200864config MFD_SM501_GPIO
865 bool "Export GPIO via GPIO layer"
866 depends on MFD_SM501 && GPIOLIB
867 ---help---
868 This option uses the gpio library layer to export the 64 GPIO
869 lines on the SM501. The platform data is used to supply the
870 base number for the first GPIO line to register.
Mark Brown1d9f9f02008-09-10 18:58:42 +0100871
Gyungoh Yoo2698dc22015-02-27 15:42:21 +0900872config MFD_SKY81452
873 tristate "Skyworks Solutions SKY81452"
874 select MFD_CORE
875 select REGMAP_I2C
876 depends on I2C
877 help
878 This is the core driver for the Skyworks SKY81452 backlight and
879 voltage regulator device.
880
881 This driver can also be built as a module. If so, the module
882 will be called sky81452.
883
Samuel Ortizab85b1202013-04-09 14:40:09 +0200884config MFD_SMSC
885 bool "SMSC ECE1099 series chips"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200886 depends on I2C=y
Samuel Ortizab85b1202013-04-09 14:40:09 +0200887 select MFD_CORE
888 select REGMAP_I2C
889 help
890 If you say yes here you get support for the
891 ece1099 chips from SMSC.
Mark Brown1d9f9f02008-09-10 18:58:42 +0100892
Samuel Ortizab85b1202013-04-09 14:40:09 +0200893 To compile this driver as a module, choose M here: the
894 module will be called smsc.
Marc Reillydf3df642012-04-01 16:41:39 +1000895
Mattias Wallinfa661252010-05-01 18:26:20 +0200896config ABX500_CORE
897 bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions"
Mattias Wallin47c16972010-09-10 17:47:56 +0200898 default y if ARCH_U300 || ARCH_U8500
Mattias Wallinfa661252010-05-01 18:26:20 +0200899 help
900 Say yes here if you have the ABX500 Mixed Signal IC family
901 chips. This core driver expose register access functions.
902 Functionality specific drivers using these functions can
903 remain unchanged when IC changes. Binding of the functions to
904 actual register access is done by the IC core driver.
905
Linus Walleij14fa5692009-05-21 23:17:06 +0200906config AB3100_CORE
Linus Walleij2071db42010-01-19 11:41:52 +0100907 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200908 depends on I2C=y && ABX500_CORE
Linus Walleij8c96aef2010-08-20 10:27:12 +0200909 select MFD_CORE
Linus Walleij14fa5692009-05-21 23:17:06 +0200910 default y if ARCH_U300
911 help
912 Select this to enable the AB3100 Mixed Signal IC core
913 functionality. This connects to a AB3100 on the I2C bus
914 and expose a number of symbols needed for dependent devices
915 to read and write registers and subscribe to events from
916 this multi-functional IC. This is needed to use other features
917 of the AB3100 such as battery-backed RTC, charging control,
918 LEDs, vibrator, system power and temperature, power management
919 and ALSA sound.
920
Linus Walleij12992dd2009-08-18 22:52:26 +0200921config AB3100_OTP
922 tristate "ST-Ericsson AB3100 OTP functions"
923 depends on AB3100_CORE
924 default y if AB3100_CORE
925 help
926 Select this to enable the AB3100 Mixed Signal IC OTP (one-time
927 programmable memory) support. This exposes a sysfs file to read
928 out OTP values.
929
Rabin Vincent62579262010-05-19 11:39:02 +0200930config AB8500_CORE
931 bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200932 depends on ABX500_CORE && MFD_DB8500_PRCMU
Axel Lin5c854aa2013-02-19 23:20:33 +0800933 select POWER_SUPPLY
Rabin Vincent62579262010-05-19 11:39:02 +0200934 select MFD_CORE
Lee Jones06e589e2012-06-20 13:56:37 +0100935 select IRQ_DOMAIN
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200936 help
Rabin Vincent62579262010-05-19 11:39:02 +0200937 Select this option to enable access to AB8500 power management
Sundar Iyer6680d942010-12-24 11:52:08 +0100938 chip. This connects to U8500 either on the SSP/SPI bus (deprecated
939 since hardware version v1.0) or the I2C bus via PRCMU. It also adds
940 the irq_chip parts for handling the Mixed Signal chip events.
Srinidhi Kasagar0c418392009-10-12 17:11:52 +0200941 This chip embeds various other multimedia funtionalities as well.
942
Mattias Wallin5814fc32010-09-13 16:05:04 +0200943config AB8500_DEBUG
944 bool "Enable debug info via debugfs"
Arnd Bergmann3993eff2013-05-03 08:52:32 +0100945 depends on AB8500_GPADC && DEBUG_FS
Mattias Wallin5814fc32010-09-13 16:05:04 +0200946 default y if DEBUG_FS
947 help
948 Select this option if you want debug information using the debug
949 filesystem, debugfs.
950
Arun Murthydae2db32011-02-22 10:11:13 +0100951config AB8500_GPADC
Samuel Ortizab85b1202013-04-09 14:40:09 +0200952 bool "ST-Ericsson AB8500 GPADC driver"
Arun Murthydae2db32011-02-22 10:11:13 +0100953 depends on AB8500_CORE && REGULATOR_AB8500
954 default y
955 help
956 AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage
957
Linus Walleij650c2a22011-05-15 22:53:56 +0200958config MFD_DB8500_PRCMU
959 bool "ST-Ericsson DB8500 Power Reset Control Management Unit"
960 depends on UX500_SOC_DB8500
961 select MFD_CORE
962 help
963 Select this option to enable support for the DB8500 Power Reset
964 and Control Management Unit. This is basically an autonomous
965 system controller running an XP70 microprocessor, which is accessed
966 through a register map.
967
Samuel Ortizab85b1202013-04-09 14:40:09 +0200968config MFD_STMPE
969 bool "STMicroelectronics STMPE"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200970 depends on (I2C=y || SPI_MASTER=y)
Linus Walleij5a826fe2014-04-23 23:35:58 +0200971 depends on OF
Denis Turischeve82c60a2010-02-19 11:26:25 +0100972 select MFD_CORE
973 help
Samuel Ortizab85b1202013-04-09 14:40:09 +0200974 Support for the STMPE family of I/O Expanders from
975 STMicroelectronics.
Denis Turischeve82c60a2010-02-19 11:26:25 +0100976
Samuel Ortizab85b1202013-04-09 14:40:09 +0200977 Currently supported devices are:
Aaron Sierra4630b132012-03-28 09:43:10 -0500978
Samuel Ortizab85b1202013-04-09 14:40:09 +0200979 STMPE811: GPIO, Touchscreen
980 STMPE1601: GPIO, Keypad
981 STMPE1801: GPIO, Keypad
982 STMPE2401: GPIO, Keypad
983 STMPE2403: GPIO, Keypad
Florian Fainellie090d502010-03-21 01:06:05 +0100984
Samuel Ortizab85b1202013-04-09 14:40:09 +0200985 This driver provides common support for accessing the device,
986 additional drivers must be enabled in order to use the functionality
987 of the device. Currently available sub drivers are:
Ira W. Snyderbd358132010-04-07 09:43:00 +0200988
Samuel Ortizab85b1202013-04-09 14:40:09 +0200989 GPIO: stmpe-gpio
990 Keypad: stmpe-keypad
991 Touchscreen: stmpe-ts
Lars-Peter Clausen91f4deb2010-07-12 03:48:08 +0200992
Samuel Ortizab85b1202013-04-09 14:40:09 +0200993menu "STMicroelectronics STMPE Interface Drivers"
994depends on MFD_STMPE
Daniel Drake375fc772010-09-30 21:55:41 +0100995
Samuel Ortizab85b1202013-04-09 14:40:09 +0200996config STMPE_I2C
Masanari Iida8c881262013-09-29 20:54:15 +0900997 bool "STMicroelectronics STMPE I2C Interface"
Samuel Ortizab85b1202013-04-09 14:40:09 +0200998 depends on I2C=y
Keshava Munegowda17cdd292011-03-01 20:08:17 +0530999 default y
Matti Aaltonen383268a2010-12-10 11:41:33 -03001000 help
Samuel Ortizab85b1202013-04-09 14:40:09 +02001001 This is used to enable I2C interface of STMPE
Keshava Munegowda17cdd292011-03-01 20:08:17 +05301002
Samuel Ortizab85b1202013-04-09 14:40:09 +02001003config STMPE_SPI
Masanari Iida8c881262013-09-29 20:54:15 +09001004 bool "STMicroelectronics STMPE SPI Interface"
Samuel Ortizab85b1202013-04-09 14:40:09 +02001005 depends on SPI_MASTER
Abhijeet Dharmapurikarcbdb53e2011-04-05 14:40:52 -07001006 help
Samuel Ortizab85b1202013-04-09 14:40:09 +02001007 This is used to enable SPI interface of STMPE
1008endmenu
Laxman Dewangan1b1247d2012-02-28 18:35:17 +05301009
Alessandro Rubini35bdd292012-04-12 10:48:44 +02001010config MFD_STA2X11
Samuel Ortizab85b1202013-04-09 14:40:09 +02001011 bool "STMicroelectronics STA2X11"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001012 depends on STA2X11
Alessandro Rubini35bdd292012-04-12 10:48:44 +02001013 select MFD_CORE
Davide Ciminaghid94e2552012-11-09 15:19:53 +01001014 select REGMAP_MMIO
Alessandro Rubini35bdd292012-04-12 10:48:44 +02001015
Boris BREZILLONd58603c2014-05-09 13:11:47 +02001016config MFD_SUN6I_PRCM
1017 bool "Allwinner A31 PRCM controller"
1018 depends on ARCH_SUNXI
1019 select MFD_CORE
1020 help
1021 Support for the PRCM (Power/Reset/Clock Management) unit available
1022 in A31 SoC.
1023
Dong Aisheng87d68732012-09-05 10:57:13 +08001024config MFD_SYSCON
1025 bool "System Controller Register R/W Based on Regmap"
Dong Aisheng87d68732012-09-05 10:57:13 +08001026 select REGMAP_MMIO
Ying-Chun Liu (PaulLiu)75060a12012-03-16 21:12:32 +01001027 help
Dong Aisheng87d68732012-09-05 10:57:13 +08001028 Select this option to enable accessing system control registers
1029 via regmap.
Ying-Chun Liu (PaulLiu)75060a12012-03-16 21:12:32 +01001030
Samuel Ortizab85b1202013-04-09 14:40:09 +02001031config MFD_DAVINCI_VOICECODEC
1032 tristate
1033 select MFD_CORE
Arnd Bergmann9e888482014-06-05 23:24:13 +02001034 select REGMAP_MMIO
Samuel Ortizab85b1202013-04-09 14:40:09 +02001035
1036config MFD_TI_AM335X_TSCADC
1037 tristate "TI ADC / Touch Screen chip support"
1038 select MFD_CORE
1039 select REGMAP
1040 select REGMAP_MMIO
Samuel Ortizab85b1202013-04-09 14:40:09 +02001041 help
1042 If you say yes here you get support for Texas Instruments series
1043 of Touch Screen /ADC chips.
1044 To compile this driver as a module, choose M here: the
1045 module will be called ti_am335x_tscadc.
1046
1047config MFD_DM355EVM_MSP
1048 bool "TI DaVinci DM355 EVM microcontroller"
1049 depends on I2C=y && MACH_DAVINCI_DM355_EVM
1050 help
1051 This driver supports the MSP430 microcontroller used on these
1052 boards. MSP430 firmware manages resets and power sequencing,
1053 inputs from buttons and the IR remote, LEDs, an RTC, and more.
1054
Milo Kim470eca42013-12-06 11:18:41 +09001055config MFD_LP3943
1056 tristate "TI/National Semiconductor LP3943 MFD Driver"
1057 depends on I2C
1058 select MFD_CORE
1059 select REGMAP_I2C
1060 help
1061 Support for the TI/National Semiconductor LP3943.
1062 This driver consists of GPIO and PWM drivers.
1063 With these functionalities, it can be used for LED string control or
1064 general usage such like a GPIO controller and a PWM controller.
1065
Samuel Ortizab85b1202013-04-09 14:40:09 +02001066config MFD_LP8788
1067 bool "TI LP8788 Power Management Unit Driver"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001068 depends on I2C=y
Samuel Ortizab85b1202013-04-09 14:40:09 +02001069 select MFD_CORE
1070 select REGMAP_I2C
1071 select IRQ_DOMAIN
1072 help
1073 TI LP8788 PMU supports regulators, battery charger, RTC,
1074 ADC, backlight driver and current sinks.
Russell Kinga4e137a2005-08-18 10:06:59 +01001075
1076config MFD_OMAP_USB_HOST
Samuel Ortizab85b1202013-04-09 14:40:09 +02001077 bool "TI OMAP USBHS core and TLL driver"
Graeme Gregoryc948ef32012-05-15 15:48:57 +09001078 depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3
1079 default y
1080 help
1081 This is the core driver for the OAMP EHCI and OHCI drivers.
1082 This MFD driver does the required setup functionalities for
1083 OMAP USB Host drivers.
1084
Graeme Gregoryc948ef32012-05-15 15:48:57 +09001085config MFD_PALMAS
Samuel Ortizab85b1202013-04-09 14:40:09 +02001086 bool "TI Palmas series chips"
Russell Kinga4e137a2005-08-18 10:06:59 +01001087 select MFD_CORE
Russell Kinga4e137a2005-08-18 10:06:59 +01001088 select REGMAP_I2C
1089 select REGMAP_IRQ
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001090 depends on I2C=y
Russell Kinga4e137a2005-08-18 10:06:59 +01001091 help
Russell Kinga4e137a2005-08-18 10:06:59 +01001092 If you say yes here you get support for the Palmas
1093 series of PMIC chips from Texas Instruments.
Russell Kinga4e137a2005-08-18 10:06:59 +01001094
Samuel Ortizab85b1202013-04-09 14:40:09 +02001095config TPS6105X
1096 tristate "TI TPS61050/61052 Boost Converters"
1097 depends on I2C
Axel Lin18eb3f02015-10-07 09:18:04 +08001098 select REGMAP_I2C
Samuel Ortizab85b1202013-04-09 14:40:09 +02001099 select REGULATOR
1100 select MFD_CORE
1101 select REGULATOR_FIXED_VOLTAGE
Russell Kinga4e137a2005-08-18 10:06:59 +01001102 help
Samuel Ortizab85b1202013-04-09 14:40:09 +02001103 This option enables a driver for the TP61050/TPS61052
1104 high-power "white LED driver". This boost converter is
1105 sometimes used for other things than white LEDs, and
1106 also contains a GPIO pin.
Russell Kinga4e137a2005-08-18 10:06:59 +01001107
Samuel Ortizab85b1202013-04-09 14:40:09 +02001108config TPS65010
1109 tristate "TI TPS6501x Power Management chips"
1110 depends on I2C && GPIOLIB
1111 default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
1112 help
1113 If you say yes here you get support for the TPS6501x series of
1114 Power Management chips. These include voltage regulators,
1115 lithium ion/polymer battery charging, and other features that
1116 are often used in portable devices like cell phones and cameras.
1117
1118 This driver can also be built as a module. If so, the module
1119 will be called tps65010.
1120
1121config TPS6507X
1122 tristate "TI TPS6507x Power Management / Touch Screen chips"
Aaro Koskinenc7b76dc2012-11-18 18:36:20 +02001123 select MFD_CORE
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001124 depends on I2C
Samuel Ortizab85b1202013-04-09 14:40:09 +02001125 help
1126 If you say yes here you get support for the TPS6507x series of
1127 Power Management / Touch Screen chips. These include voltage
1128 regulators, lithium ion/polymer battery charging, touch screen
1129 and other features that are often used in portable devices.
1130 This driver can also be built as a module. If so, the module
1131 will be called tps6507x.
Russell Kinga4e137a2005-08-18 10:06:59 +01001132
Andrew F. Davisb45b7192016-01-25 09:50:11 -06001133config MFD_TPS65086
1134 tristate "TI TPS65086 Power Management Integrated Chips (PMICs)"
1135 select REGMAP
1136 select REGMAP_IRQ
1137 select REGMAP_I2C
1138 depends on I2C
1139 help
1140 If you say yes here you get support for the TPS65086 series of
1141 Power Management chips.
1142 This driver provides common support for accessing the device,
1143 additional drivers must be enabled in order to use the
1144 functionality of the device.
1145
Russell Kinga4e137a2005-08-18 10:06:59 +01001146config TPS65911_COMPARATOR
1147 tristate
1148
1149config MFD_TPS65090
Samuel Ortizab85b1202013-04-09 14:40:09 +02001150 bool "TI TPS65090 Power Management chips"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001151 depends on I2C=y
Russell Kinga4e137a2005-08-18 10:06:59 +01001152 select MFD_CORE
1153 select REGMAP_I2C
1154 select REGMAP_IRQ
1155 help
1156 If you say yes here you get support for the TPS65090 series of
1157 Power Management chips.
1158 This driver provides common support for accessing the device,
1159 additional drivers must be enabled in order to use the
1160 functionality of the device.
1161
Samuel Ortizab85b1202013-04-09 14:40:09 +02001162config MFD_TPS65217
1163 tristate "TI TPS65217 Power Management / White LED chips"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001164 depends on I2C
Russell Kinga4e137a2005-08-18 10:06:59 +01001165 select MFD_CORE
Samuel Ortizab85b1202013-04-09 14:40:09 +02001166 select REGMAP_I2C
Russell Kinga4e137a2005-08-18 10:06:59 +01001167 help
Samuel Ortizab85b1202013-04-09 14:40:09 +02001168 If you say yes here you get support for the TPS65217 series of
1169 Power Management / White LED chips.
1170 These include voltage regulators, lithium ion/polymer battery
1171 charger, wled and other features that are often used in portable
1172 devices.
1173
1174 This driver can also be built as a module. If so, the module
1175 will be called tps65217.
1176
Keerthy44b4dc62014-02-06 11:20:12 +05301177config MFD_TPS65218
1178 tristate "TI TPS65218 Power Management chips"
1179 depends on I2C
1180 select MFD_CORE
1181 select REGMAP_I2C
Lee Jones2d5d3662014-03-10 15:23:25 +00001182 select REGMAP_IRQ
Keerthy44b4dc62014-02-06 11:20:12 +05301183 help
1184 If you say yes here you get support for the TPS65218 series of
1185 Power Management chips.
1186 These include voltage regulators, gpio and other features
1187 that are often used in portable devices. Only regulator
1188 component is currently supported.
1189
1190 This driver can also be built as a module. If so, the module
1191 will be called tps65218.
1192
Samuel Ortizab85b1202013-04-09 14:40:09 +02001193config MFD_TPS6586X
1194 bool "TI TPS6586x Power Management chips"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001195 depends on I2C=y
Samuel Ortizab85b1202013-04-09 14:40:09 +02001196 select MFD_CORE
1197 select REGMAP_I2C
1198 help
1199 If you say yes here you get support for the TPS6586X series of
1200 Power Management chips.
Russell Kinga4e137a2005-08-18 10:06:59 +01001201 This driver provides common support for accessing the device,
1202 additional drivers must be enabled in order to use the
1203 functionality of the device.
1204
Samuel Ortizab85b1202013-04-09 14:40:09 +02001205 This driver can also be built as a module. If so, the module
1206 will be called tps6586x.
Russell Kinga4e137a2005-08-18 10:06:59 +01001207
Samuel Ortizab85b1202013-04-09 14:40:09 +02001208config MFD_TPS65910
1209 bool "TI TPS65910 Power Management chip"
Geert Uytterhoeven6fafecc2015-05-05 18:32:27 +02001210 depends on I2C=y
1211 depends on GPIOLIB || COMPILE_TEST
Russell Kinga4e137a2005-08-18 10:06:59 +01001212 select MFD_CORE
1213 select REGMAP_I2C
1214 select REGMAP_IRQ
Samuel Ortizab85b1202013-04-09 14:40:09 +02001215 select IRQ_DOMAIN
Russell Kinga4e137a2005-08-18 10:06:59 +01001216 help
Samuel Ortizab85b1202013-04-09 14:40:09 +02001217 if you say yes here you get support for the TPS65910 series of
1218 Power Management chips.
Russell Kinga4e137a2005-08-18 10:06:59 +01001219
Samuel Ortizab85b1202013-04-09 14:40:09 +02001220config MFD_TPS65912
Andrew F. Davis796f5692016-01-25 09:43:45 -06001221 tristate
David Rientjesc972c122013-04-17 14:28:47 -07001222 select MFD_CORE
Andrew F. Davis796f5692016-01-25 09:43:45 -06001223 select REGMAP
1224 select REGMAP_IRQ
Samuel Ortizab85b1202013-04-09 14:40:09 +02001225
1226config MFD_TPS65912_I2C
Andrew F. Davis796f5692016-01-25 09:43:45 -06001227 tristate "TI TPS65912 Power Management chip with I2C"
Samuel Ortizab85b1202013-04-09 14:40:09 +02001228 select MFD_TPS65912
Andrew F. Davis796f5692016-01-25 09:43:45 -06001229 select REGMAP_I2C
1230 depends on I2C
Samuel Ortizab85b1202013-04-09 14:40:09 +02001231 help
1232 If you say yes here you get support for the TPS65912 series of
1233 PM chips with I2C interface.
1234
1235config MFD_TPS65912_SPI
Andrew F. Davis796f5692016-01-25 09:43:45 -06001236 tristate "TI TPS65912 Power Management chip with SPI"
Samuel Ortizab85b1202013-04-09 14:40:09 +02001237 select MFD_TPS65912
Andrew F. Davis796f5692016-01-25 09:43:45 -06001238 select REGMAP_SPI
1239 depends on SPI_MASTER
Samuel Ortizab85b1202013-04-09 14:40:09 +02001240 help
1241 If you say yes here you get support for the TPS65912 series of
1242 PM chips with SPI interface.
1243
1244config MFD_TPS80031
1245 bool "TI TPS80031/TPS80032 Power Management chips"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001246 depends on I2C=y
Samuel Ortizab85b1202013-04-09 14:40:09 +02001247 select MFD_CORE
1248 select REGMAP_I2C
1249 select REGMAP_IRQ
1250 help
1251 If you say yes here you get support for the Texas Instruments
1252 TPS80031/ TPS80032 Fully Integrated Power Management with Power
1253 Path and Battery Charger. The device provides five configurable
1254 step-down converters, 11 general purpose LDOs, USB OTG Module,
1255 ADC, RTC, 2 PWM, System Voltage Regulator/Battery Charger with
1256 Power Path from USB, 32K clock generator.
1257
1258config TWL4030_CORE
1259 bool "TI TWL4030/TWL5030/TWL6030/TPS659x0 Support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001260 depends on I2C=y
Samuel Ortizab85b1202013-04-09 14:40:09 +02001261 select IRQ_DOMAIN
1262 select REGMAP_I2C
1263 help
1264 Say yes here if you have TWL4030 / TWL6030 family chip on your board.
1265 This core driver provides register access and IRQ handling
1266 facilities, and registers devices for the various functions
1267 so that function-specific drivers can bind to them.
1268
1269 These multi-function chips are found on many OMAP2 and OMAP3
1270 boards, providing power management, RTC, GPIO, keypad, a
1271 high speed USB OTG transceiver, an audio codec (on most
1272 versions) and many other features.
1273
Samuel Ortizab85b1202013-04-09 14:40:09 +02001274config TWL4030_POWER
1275 bool "TI TWL4030 power resources"
1276 depends on TWL4030_CORE && ARM
1277 help
1278 Say yes here if you want to use the power resources on the
1279 TWL4030 family chips. Most of these resources are regulators,
1280 which have a separate driver; some are control signals, such
1281 as clock request handshaking.
1282
1283 This driver uses board-specific data to initialize the resources
1284 and load scripts controlling which resources are switched off/on
1285 or reset when a sleep, wakeup or warm reset event occurs.
1286
1287config MFD_TWL4030_AUDIO
1288 bool "TI TWL4030 Audio"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001289 depends on TWL4030_CORE
Samuel Ortizab85b1202013-04-09 14:40:09 +02001290 select MFD_CORE
1291 default n
1292
1293config TWL6040_CORE
1294 bool "TI TWL6040 audio codec"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001295 depends on I2C=y
Samuel Ortizab85b1202013-04-09 14:40:09 +02001296 select MFD_CORE
1297 select REGMAP_I2C
1298 select REGMAP_IRQ
Lars Poeschelf01312d2012-11-05 15:48:23 +01001299 default n
1300 help
Samuel Ortizab85b1202013-04-09 14:40:09 +02001301 Say yes here if you want support for Texas Instruments TWL6040 audio
1302 codec.
1303 This driver provides common support for accessing the device,
1304 additional drivers must be enabled in order to use the
1305 functionality of the device (audio, vibra).
Lars Poeschelf01312d2012-11-05 15:48:23 +01001306
Samuel Ortizab85b1202013-04-09 14:40:09 +02001307config MENELAUS
1308 bool "TI TWL92330/Menelaus PM chip"
1309 depends on I2C=y && ARCH_OMAP2
Aaro Koskinenc7b76dc2012-11-18 18:36:20 +02001310 help
Samuel Ortizab85b1202013-04-09 14:40:09 +02001311 If you say yes here you get support for the Texas Instruments
1312 TWL92330/Menelaus Power Management chip. This include voltage
1313 regulators, Dual slot memory card transceivers, real-time clock
1314 and other features that are often used in portable devices like
1315 cell phones and PDAs.
Aaro Koskinenc7b76dc2012-11-18 18:36:20 +02001316
Samuel Ortizab85b1202013-04-09 14:40:09 +02001317config MFD_WL1273_CORE
1318 tristate "TI WL1273 FM radio"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001319 depends on I2C
Samuel Ortizab85b1202013-04-09 14:40:09 +02001320 select MFD_CORE
1321 default n
1322 help
1323 This is the core driver for the TI WL1273 FM radio. This MFD
1324 driver connects the radio-wl1273 V4L2 module and the wl1273
1325 audio codec.
1326
1327config MFD_LM3533
1328 tristate "TI/National Semiconductor LM3533 Lighting Power chip"
1329 depends on I2C
1330 select MFD_CORE
1331 select REGMAP_I2C
Samuel Ortizab85b1202013-04-09 14:40:09 +02001332 help
1333 Say yes here to enable support for National Semiconductor / TI
1334 LM3533 Lighting Power chips.
1335
1336 This driver provides common support for accessing the device;
1337 additional drivers must be enabled in order to use the LED,
1338 backlight or ambient-light-sensor functionality of the device.
1339
1340config MFD_TIMBERDALE
1341 tristate "Timberdale FPGA"
1342 select MFD_CORE
Jean Delvare84c3a8f2014-06-16 13:56:01 +02001343 depends on PCI && GPIOLIB && (X86_32 || COMPILE_TEST)
Samuel Ortizab85b1202013-04-09 14:40:09 +02001344 ---help---
1345 This is the core driver for the timberdale FPGA. This device is a
1346 multifunction device which exposes numerous platform devices.
1347
1348 The timberdale FPGA can be found on the Intel Atom development board
1349 for in-vehicle infontainment, called Russellville.
1350
1351config MFD_TC3589X
1352 bool "Toshiba TC35892 and variants"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001353 depends on I2C=y
Linus Walleij14227312015-03-19 15:52:45 +01001354 depends on OF
Samuel Ortizab85b1202013-04-09 14:40:09 +02001355 select MFD_CORE
1356 help
1357 Support for the Toshiba TC35892 and variants I/O Expander.
1358
1359 This driver provides common support for accessing the device,
1360 additional drivers must be enabled in order to use the
1361 functionality of the device.
1362
1363config MFD_TMIO
1364 bool
1365 default n
1366
1367config MFD_T7L66XB
1368 bool "Toshiba T7L66XB"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001369 depends on ARM && HAVE_CLK
Samuel Ortizab85b1202013-04-09 14:40:09 +02001370 select MFD_CORE
1371 select MFD_TMIO
1372 help
1373 Support for Toshiba Mobile IO Controller T7L66XB
1374
1375config MFD_TC6387XB
1376 bool "Toshiba TC6387XB"
1377 depends on ARM && HAVE_CLK
1378 select MFD_CORE
1379 select MFD_TMIO
1380 help
1381 Support for Toshiba Mobile IO Controller TC6387XB
1382
1383config MFD_TC6393XB
1384 bool "Toshiba TC6393XB"
1385 depends on ARM && HAVE_CLK
1386 select GPIOLIB
1387 select MFD_CORE
1388 select MFD_TMIO
1389 help
1390 Support for Toshiba Mobile IO Controller TC6393XB
1391
1392config MFD_VX855
1393 tristate "VIA VX855/VX875 integrated south bridge"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001394 depends on PCI
Samuel Ortizab85b1202013-04-09 14:40:09 +02001395 select MFD_CORE
1396 help
1397 Say yes here to enable support for various functions of the
1398 VIA VX855/VX875 south bridge. You will need to enable the vx855_spi
1399 and/or vx855_gpio drivers for this to do anything useful.
1400
1401config MFD_ARIZONA
1402 select REGMAP
1403 select REGMAP_IRQ
1404 select MFD_CORE
1405 bool
1406
1407config MFD_ARIZONA_I2C
Richard Fitzgeraldea1f3332015-11-03 15:08:32 +00001408 tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with I2C"
Samuel Ortizab85b1202013-04-09 14:40:09 +02001409 select MFD_ARIZONA
1410 select MFD_CORE
1411 select REGMAP_I2C
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001412 depends on I2C
Samuel Ortizab85b1202013-04-09 14:40:09 +02001413 help
Richard Fitzgeraldea1f3332015-11-03 15:08:32 +00001414 Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform
1415 audio SoC core functionality controlled via I2C.
Samuel Ortizab85b1202013-04-09 14:40:09 +02001416
1417config MFD_ARIZONA_SPI
Richard Fitzgeraldea1f3332015-11-03 15:08:32 +00001418 tristate "Cirrus Logic/Wolfson Microelectronics Arizona platform with SPI"
Samuel Ortizab85b1202013-04-09 14:40:09 +02001419 select MFD_ARIZONA
1420 select MFD_CORE
1421 select REGMAP_SPI
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001422 depends on SPI_MASTER
Samuel Ortizab85b1202013-04-09 14:40:09 +02001423 help
Richard Fitzgeraldea1f3332015-11-03 15:08:32 +00001424 Support for the Cirrus Logic/Wolfson Microelectronics Arizona platform
Charles Keepax5dbd4782016-02-09 10:52:02 +00001425 audio SoC core functionality controlled via SPI.
Richard Fitzgeraldea1f3332015-11-03 15:08:32 +00001426
1427config MFD_CS47L24
1428 bool "Cirrus Logic CS47L24 and WM1831"
1429 depends on MFD_ARIZONA
1430 help
1431 Support for Cirrus Logic CS47L24 and WM1831 low power audio SoC
Samuel Ortizab85b1202013-04-09 14:40:09 +02001432
1433config MFD_WM5102
1434 bool "Wolfson Microelectronics WM5102"
1435 depends on MFD_ARIZONA
1436 help
1437 Support for Wolfson Microelectronics WM5102 low power audio SoC
1438
1439config MFD_WM5110
Richard Fitzgeralde5d4ef02015-01-17 15:21:22 +00001440 bool "Wolfson Microelectronics WM5110 and WM8280/WM8281"
Samuel Ortizab85b1202013-04-09 14:40:09 +02001441 depends on MFD_ARIZONA
1442 help
Richard Fitzgeralde5d4ef02015-01-17 15:21:22 +00001443 Support for Wolfson Microelectronics WM5110 and WM8280/WM8281
1444 low power audio SoC
Samuel Ortizab85b1202013-04-09 14:40:09 +02001445
Charles Keepaxdc7d4862013-06-13 09:43:29 +01001446config MFD_WM8997
Mark Brownca16ecb2013-07-17 12:21:09 +01001447 bool "Wolfson Microelectronics WM8997"
Charles Keepaxdc7d4862013-06-13 09:43:29 +01001448 depends on MFD_ARIZONA
1449 help
1450 Support for Wolfson Microelectronics WM8997 low power audio SoC
1451
Richard Fitzgerald6887b042015-07-03 16:16:35 +01001452config MFD_WM8998
1453 bool "Wolfson Microelectronics WM8998"
1454 depends on MFD_ARIZONA
1455 help
1456 Support for Wolfson Microelectronics WM8998 low power audio SoC
1457
Samuel Ortizab85b1202013-04-09 14:40:09 +02001458config MFD_WM8400
1459 bool "Wolfson Microelectronics WM8400"
1460 select MFD_CORE
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001461 depends on I2C=y
Samuel Ortizab85b1202013-04-09 14:40:09 +02001462 select REGMAP_I2C
1463 help
1464 Support for the Wolfson Microelecronics WM8400 PMIC and audio
1465 CODEC. This driver provides common support for accessing
1466 the device, additional drivers must be enabled in order to use
1467 the functionality of the device.
1468
1469config MFD_WM831X
1470 bool
Samuel Ortizab85b1202013-04-09 14:40:09 +02001471
1472config MFD_WM831X_I2C
1473 bool "Wolfson Microelectronics WM831x/2x PMICs with I2C"
1474 select MFD_CORE
1475 select MFD_WM831X
1476 select REGMAP_I2C
1477 select IRQ_DOMAIN
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001478 depends on I2C=y
Samuel Ortizab85b1202013-04-09 14:40:09 +02001479 help
1480 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
1481 when controlled using I2C. This driver provides common support
1482 for accessing the device, additional drivers must be enabled in
1483 order to use the functionality of the device.
1484
1485config MFD_WM831X_SPI
1486 bool "Wolfson Microelectronics WM831x/2x PMICs with SPI"
1487 select MFD_CORE
1488 select MFD_WM831X
1489 select REGMAP_SPI
1490 select IRQ_DOMAIN
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001491 depends on SPI_MASTER
Samuel Ortizab85b1202013-04-09 14:40:09 +02001492 help
1493 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
1494 when controlled using SPI. This driver provides common support
1495 for accessing the device, additional drivers must be enabled in
1496 order to use the functionality of the device.
1497
1498config MFD_WM8350
1499 bool
Samuel Ortizab85b1202013-04-09 14:40:09 +02001500
1501config MFD_WM8350_I2C
1502 bool "Wolfson Microelectronics WM8350 with I2C"
1503 select MFD_WM8350
Martin Schwidefsky0244ad02013-08-30 09:39:53 +02001504 depends on I2C=y
Samuel Ortizab85b1202013-04-09 14:40:09 +02001505 help
1506 The WM8350 is an integrated audio and power management
1507 subsystem with watchdog and RTC functionality for embedded
1508 systems. This option enables core support for the WM8350 with
1509 I2C as the control interface. Additional options must be
1510 selected to enable support for the functionality of the chip.
1511
1512config MFD_WM8994
Mark Brown6052d832014-07-31 15:41:30 +01001513 tristate "Wolfson Microelectronics WM8994"
Guennadi Liakhovetskiacad1892012-11-22 11:12:04 +01001514 select MFD_CORE
1515 select REGMAP_I2C
1516 select REGMAP_IRQ
Mark Brown6052d832014-07-31 15:41:30 +01001517 depends on I2C
Guennadi Liakhovetskiacad1892012-11-22 11:12:04 +01001518 help
Samuel Ortizab85b1202013-04-09 14:40:09 +02001519 The WM8994 is a highly integrated hi-fi CODEC designed for
Ɓukasz Stelmach78c059c2015-03-27 21:39:59 +01001520 smartphone applications. As well as audio functionality it
Samuel Ortizab85b1202013-04-09 14:40:09 +02001521 has on board GPIO and regulator functionality which is
1522 supported via the relevant subsystems. This driver provides
1523 core support for the WM8994, in order to use the actual
1524 functionaltiy of the device other drivers must be enabled.
Guennadi Liakhovetskiacad1892012-11-22 11:12:04 +01001525
Linus Walleij60013b92013-09-22 21:49:18 +02001526config MFD_STW481X
Arnd Bergmannf41716d2014-06-05 23:24:14 +02001527 tristate "Support for ST Microelectronics STw481x"
Luis de Bethencourt5349ca12015-10-12 17:26:07 +01001528 depends on I2C && (ARCH_NOMADIK || COMPILE_TEST)
Linus Walleij60013b92013-09-22 21:49:18 +02001529 select REGMAP_I2C
1530 select MFD_CORE
1531 help
1532 Select this option to enable the STw481x chip driver used
1533 in various ST Microelectronics and ST-Ericsson embedded
1534 Nomadik series.
1535
Russell Kinga4e137a2005-08-18 10:06:59 +01001536menu "Multimedia Capabilities Port drivers"
1537 depends on ARCH_SA1100
1538
1539config MCP
1540 tristate
1541
1542# Interface drivers
1543config MCP_SA11X0
1544 tristate "Support SA11x0 MCP interface"
1545 depends on ARCH_SA1100
1546 select MCP
1547
1548# Chip drivers
1549config MCP_UCB1200
Arnd Bergmann1c93c722014-06-05 23:24:12 +02001550 tristate "Support for UCB1200 / UCB1300"
Russell Kinga4e137a2005-08-18 10:06:59 +01001551 depends on MCP_SA11X0
1552 select MCP
1553
1554config MCP_UCB1200_TS
1555 tristate "Touchscreen interface support"
1556 depends on MCP_UCB1200 && INPUT
1557
1558endmenu
Pawel Moll3ecbf052012-09-24 14:55:40 +01001559
Pawel Moll974cc7b2014-04-23 10:49:31 +01001560config MFD_VEXPRESS_SYSREG
1561 bool "Versatile Express System Registers"
Arnd Bergmannb33cdd22014-05-26 17:25:22 +02001562 depends on VEXPRESS_CONFIG && GPIOLIB
Pawel Moll974cc7b2014-04-23 10:49:31 +01001563 default y
1564 select CLKSRC_MMIO
1565 select GPIO_GENERIC_PLATFORM
1566 select MFD_CORE
1567 select MFD_SYSCON
Pawel Moll3ecbf052012-09-24 14:55:40 +01001568 help
Pawel Moll974cc7b2014-04-23 10:49:31 +01001569 System Registers are the platform configuration block
1570 on the ARM Ltd. Versatile Express board.
Linus Walleija6e6e662014-01-29 11:09:53 +01001571
1572endmenu
1573endif