xref: /linux/drivers/mfd/Kconfig (revision 12992dd89c84839167f97aae540f2ec889daf782)
1a4e137abSRussell King#
2a4e137abSRussell King# Multifunction miscellaneous devices
3a4e137abSRussell King#
4a4e137abSRussell King
5b6d6454fSBen Dooksmenu "Multifunction device drivers"
6e25df120SMartin Schwidefsky	depends on HAS_IOMEM
7b6d6454fSBen Dooks
8aa613de6SDmitry Baryshkovconfig MFD_CORE
9aa613de6SDmitry Baryshkov	tristate
10aa613de6SDmitry Baryshkov	default n
11aa613de6SDmitry Baryshkov
12b6d6454fSBen Dooksconfig MFD_SM501
13b6d6454fSBen Dooks	tristate "Support for Silicon Motion SM501"
14b6d6454fSBen Dooks	 ---help---
15b6d6454fSBen Dooks	  This is the core driver for the Silicon Motion SM501 multimedia
16b6d6454fSBen Dooks	  companion chip. This device is a multifunction device which may
1701dd2fbfSMatt LaPlante	  provide numerous interfaces including USB host controller, USB gadget,
1801dd2fbfSMatt LaPlante	  asynchronous serial ports, audio functions, and a dual display video
19b6d6454fSBen Dooks	  interface. The device may be connected by PCI or local bus with
20b6d6454fSBen Dooks	  varying functions enabled.
21b6d6454fSBen Dooks
22f61be273SBen Dooksconfig MFD_SM501_GPIO
23f61be273SBen Dooks	bool "Export GPIO via GPIO layer"
242eedd604SSamuel Ortiz	depends on MFD_SM501 && GPIOLIB
25f61be273SBen Dooks	 ---help---
26f61be273SBen Dooks	 This option uses the gpio library layer to export the 64 GPIO
27f61be273SBen Dooks	 lines on the SM501. The platform data is used to supply the
28f61be273SBen Dooks	 base number for the first GPIO line to register.
29f61be273SBen Dooks
30fa9ff4b1SSamuel Ortizconfig MFD_ASIC3
31fa9ff4b1SSamuel Ortiz	bool "Support for Compaq ASIC3"
322eedd604SSamuel Ortiz	depends on GENERIC_HARDIRQS && GPIOLIB && ARM
339461f65aSPhilipp Zabel	select MFD_CORE
34fa9ff4b1SSamuel Ortiz	 ---help---
35fa9ff4b1SSamuel Ortiz	  This driver supports the ASIC3 multifunction chip found on many
36fa9ff4b1SSamuel Ortiz	  PDAs (mainly iPAQ and HTC based ones)
37fa9ff4b1SSamuel Ortiz
380931a4c6SDavid Brownellconfig MFD_DM355EVM_MSP
390931a4c6SDavid Brownell	bool "DaVinci DM355 EVM microcontroller"
400931a4c6SDavid Brownell	depends on I2C && MACH_DAVINCI_DM355_EVM
410931a4c6SDavid Brownell	help
420931a4c6SDavid Brownell	  This driver supports the MSP430 microcontroller used on these
430931a4c6SDavid Brownell	  boards.  MSP430 firmware manages resets and power sequencing,
440931a4c6SDavid Brownell	  inputs from buttons and the IR remote, LEDs, an RTC, and more.
450931a4c6SDavid Brownell
46a1635b8fSPhilipp Zabelconfig HTC_EGPIO
47a1635b8fSPhilipp Zabel	bool "HTC EGPIO support"
487444a72eSMichael Buesch	depends on GENERIC_HARDIRQS && GPIOLIB && ARM
49a1635b8fSPhilipp Zabel	help
50a1635b8fSPhilipp Zabel	    This driver supports the CPLD egpio chip present on
51a1635b8fSPhilipp Zabel	    several HTC phones.  It provides basic support for input
52a1635b8fSPhilipp Zabel	    pins, output pins, and irqs.
53a1635b8fSPhilipp Zabel
545dc3339aSPhilipp Zabelconfig HTC_PASIC3
555dc3339aSPhilipp Zabel	tristate "HTC PASIC3 LED/DS1WM chip support"
560254a8f4SPhilipp Zabel	select MFD_CORE
575dc3339aSPhilipp Zabel	help
585dc3339aSPhilipp Zabel	  This core driver provides register access for the LED/DS1WM
595dc3339aSPhilipp Zabel	  chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
605dc3339aSPhilipp Zabel	  HTC Magician devices, respectively. Actual functionality is
615dc3339aSPhilipp Zabel	  handled by the leds-pasic3 and ds1wm drivers.
625dc3339aSPhilipp Zabel
63d9105c2bSMarek Vašutconfig UCB1400_CORE
64d9105c2bSMarek Vašut	tristate "Philips UCB1400 Core driver"
65e4831802SRandy Dunlap	depends on AC97_BUS
665a49a540SAndrew Morton	depends on GPIOLIB
67d9105c2bSMarek Vašut	help
68d9105c2bSMarek Vašut	  This enables support for the Philips UCB1400 core functions.
69d9105c2bSMarek Vašut	  The UCB1400 is an AC97 audio codec.
70d9105c2bSMarek Vašut
71d9105c2bSMarek Vašut	  To compile this driver as a module, choose M here: the
72d9105c2bSMarek Vašut	  module will be called ucb1400_core.
73d9105c2bSMarek Vašut
7487c13493SDavid Brownellconfig TPS65010
7587c13493SDavid Brownell	tristate "TPS6501x Power Management chips"
7687c13493SDavid Brownell	depends on I2C && GPIOLIB
7787c13493SDavid Brownell	default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
7887c13493SDavid Brownell	help
7987c13493SDavid Brownell	  If you say yes here you get support for the TPS6501x series of
8087c13493SDavid Brownell	  Power Management chips.  These include voltage regulators,
8187c13493SDavid Brownell	  lithium ion/polymer battery charging, and other features that
8287c13493SDavid Brownell	  are often used in portable devices like cell phones and cameras.
8387c13493SDavid Brownell
8487c13493SDavid Brownell	  This driver can also be built as a module.  If so, the module
8587c13493SDavid Brownell	  will be called tps65010.
8687c13493SDavid Brownell
8788e75cc3SDavid Brownellconfig MENELAUS
8888e75cc3SDavid Brownell	bool "Texas Instruments TWL92330/Menelaus PM chip"
8988e75cc3SDavid Brownell	depends on I2C=y && ARCH_OMAP24XX
9088e75cc3SDavid Brownell	help
9188e75cc3SDavid Brownell	  If you say yes here you get support for the Texas Instruments
9288e75cc3SDavid Brownell	  TWL92330/Menelaus Power Management chip. This include voltage
93692105b8SMatt LaPlante	  regulators, Dual slot memory card transceivers, real-time clock
9488e75cc3SDavid Brownell	  and other features that are often used in portable devices like
9588e75cc3SDavid Brownell	  cell phones and PDAs.
9688e75cc3SDavid Brownell
97a603a7faSDavid Brownellconfig TWL4030_CORE
98a603a7faSDavid Brownell	bool "Texas Instruments TWL4030/TPS659x0 Support"
9967460a7cSDavid Brownell	depends on I2C=y && GENERIC_HARDIRQS
100a603a7faSDavid Brownell	help
101a603a7faSDavid Brownell	  Say yes here if you have TWL4030 family chip on your board.
102a603a7faSDavid Brownell	  This core driver provides register access and IRQ handling
103a603a7faSDavid Brownell	  facilities, and registers devices for the various functions
104a603a7faSDavid Brownell	  so that function-specific drivers can bind to them.
105a603a7faSDavid Brownell
106a603a7faSDavid Brownell	  These multi-function chips are found on many OMAP2 and OMAP3
107a603a7faSDavid Brownell	  boards, providing power management, RTC, GPIO, keypad, a
108a603a7faSDavid Brownell	  high speed USB OTG transceiver, an audio codec (on most
109a603a7faSDavid Brownell	  versions) and many other features.
110a603a7faSDavid Brownell
1111c2c30acSSamuel Ortizconfig MFD_TMIO
1121c2c30acSSamuel Ortiz	bool
1131c2c30acSSamuel Ortiz	default n
1141c2c30acSSamuel Ortiz
1151f192015SIan Moltonconfig MFD_T7L66XB
1161f192015SIan Molton	bool "Support Toshiba T7L66XB"
1179ca68233SAl Viro	depends on ARM && HAVE_CLK
1181f192015SIan Molton	select MFD_CORE
1191c2c30acSSamuel Ortiz	select MFD_TMIO
1201f192015SIan Molton	help
1211f192015SIan Molton	  Support for Toshiba Mobile IO Controller T7L66XB
1221f192015SIan Molton
123cbdfb426SIan Moltonconfig MFD_TC6387XB
124cbdfb426SIan Molton	bool "Support Toshiba TC6387XB"
1259ca68233SAl Viro	depends on ARM && HAVE_CLK
126cbdfb426SIan Molton	select MFD_CORE
1271c2c30acSSamuel Ortiz	select MFD_TMIO
128cbdfb426SIan Molton	help
129cbdfb426SIan Molton	  Support for Toshiba Mobile IO Controller TC6387XB
130cbdfb426SIan Molton
131d6315949SDmitry Baryshkovconfig MFD_TC6393XB
132d6315949SDmitry Baryshkov	bool "Support Toshiba TC6393XB"
1338d25b36bSAdrian Bunk	depends on GPIOLIB && ARM
134f024ff10SDmitry Baryshkov	select MFD_CORE
1351c2c30acSSamuel Ortiz	select MFD_TMIO
136d6315949SDmitry Baryshkov	help
137d6315949SDmitry Baryshkov	  Support for Toshiba Mobile IO Controller TC6393XB
138d6315949SDmitry Baryshkov
1398e2eaabfSSamuel Ortizconfig PMIC_DA903X
1408e2eaabfSSamuel Ortiz	bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
1418e2eaabfSSamuel Ortiz	depends on I2C=y
1428e2eaabfSSamuel Ortiz	help
1438e2eaabfSSamuel Ortiz	  Say yes here to support for Dialog Semiconductor DA9030 (a.k.a
1448e2eaabfSSamuel Ortiz	  ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
1458e2eaabfSSamuel Ortiz	  usually found on PXA processors-based platforms. This includes
1468e2eaabfSSamuel Ortiz	  the I2C driver and the core APIs _only_, you have to select
1478e2eaabfSSamuel Ortiz	  individual components like LCD backlight, voltage regulators,
1488e2eaabfSSamuel Ortiz	  LEDs and battery-charger under the corresponding menus.
1498e2eaabfSSamuel Ortiz
1501d9f9f04SMark Brownconfig MFD_WM8400
1511d9f9f04SMark Brown	tristate "Support Wolfson Microelectronics WM8400"
152b8380c1aSMark Brown	select MFD_CORE
1539c366452SMark Brown	depends on I2C
1541d9f9f04SMark Brown	help
1551d9f9f04SMark Brown	  Support for the Wolfson Microelecronics WM8400 PMIC and audio
1569e5aca58SMark Brown	  CODEC.  This driver provides common support for accessing
1571d9f9f04SMark Brown	  the device, additional drivers must be enabled in order to use
1581d9f9f04SMark Brown	  the functionality of the device.
1591d9f9f04SMark Brown
160b11062b9SMark Brownconfig MFD_WM831X
161b11062b9SMark Brown	tristate "Support Wolfson Microelectronics WM831x PMICs"
162b11062b9SMark Brown	select MFD_CORE
163b11062b9SMark Brown	depends on I2C
164b11062b9SMark Brown	help
165b11062b9SMark Brown	  Support for the Wolfson Microelecronics WM831x PMICs.  This
166b11062b9SMark Brown	  driver provides common support for accessing the device,
167b11062b9SMark Brown	  additional drivers must be enabled in order to use the
168b11062b9SMark Brown	  functionality of the device.
169b11062b9SMark Brown
17089b4012bSMark Brownconfig MFD_WM8350
17189b4012bSMark Brown	tristate
17289b4012bSMark Brown
17389b4012bSMark Brownconfig MFD_WM8350_CONFIG_MODE_0
17489b4012bSMark Brown	bool
17589b4012bSMark Brown	depends on MFD_WM8350
17689b4012bSMark Brown
17789b4012bSMark Brownconfig MFD_WM8350_CONFIG_MODE_1
17889b4012bSMark Brown	bool
17989b4012bSMark Brown	depends on MFD_WM8350
18089b4012bSMark Brown
18189b4012bSMark Brownconfig MFD_WM8350_CONFIG_MODE_2
18289b4012bSMark Brown	bool
18389b4012bSMark Brown	depends on MFD_WM8350
18489b4012bSMark Brown
18589b4012bSMark Brownconfig MFD_WM8350_CONFIG_MODE_3
18689b4012bSMark Brown	bool
18789b4012bSMark Brown	depends on MFD_WM8350
18889b4012bSMark Brown
189ca23f8c1SMark Brownconfig MFD_WM8351_CONFIG_MODE_0
190ca23f8c1SMark Brown	bool
191ca23f8c1SMark Brown	depends on MFD_WM8350
192ca23f8c1SMark Brown
193ca23f8c1SMark Brownconfig MFD_WM8351_CONFIG_MODE_1
194ca23f8c1SMark Brown	bool
195ca23f8c1SMark Brown	depends on MFD_WM8350
196ca23f8c1SMark Brown
197ca23f8c1SMark Brownconfig MFD_WM8351_CONFIG_MODE_2
198ca23f8c1SMark Brown	bool
199ca23f8c1SMark Brown	depends on MFD_WM8350
200ca23f8c1SMark Brown
201ca23f8c1SMark Brownconfig MFD_WM8351_CONFIG_MODE_3
202ca23f8c1SMark Brown	bool
203ca23f8c1SMark Brown	depends on MFD_WM8350
204ca23f8c1SMark Brown
20596920630SMark Brownconfig MFD_WM8352_CONFIG_MODE_0
20696920630SMark Brown	bool
20796920630SMark Brown	depends on MFD_WM8350
20896920630SMark Brown
20996920630SMark Brownconfig MFD_WM8352_CONFIG_MODE_1
21096920630SMark Brown	bool
21196920630SMark Brown	depends on MFD_WM8350
21296920630SMark Brown
21396920630SMark Brownconfig MFD_WM8352_CONFIG_MODE_2
21496920630SMark Brown	bool
21596920630SMark Brown	depends on MFD_WM8350
21696920630SMark Brown
21796920630SMark Brownconfig MFD_WM8352_CONFIG_MODE_3
21896920630SMark Brown	bool
21996920630SMark Brown	depends on MFD_WM8350
22096920630SMark Brown
221c661a0b9SMark Brownconfig MFD_WM8350_I2C
222c661a0b9SMark Brown	tristate "Support Wolfson Microelectronics WM8350 with I2C"
223c661a0b9SMark Brown	select MFD_WM8350
224c661a0b9SMark Brown	depends on I2C
225c661a0b9SMark Brown	help
226c661a0b9SMark Brown	  The WM8350 is an integrated audio and power management
227c661a0b9SMark Brown	  subsystem with watchdog and RTC functionality for embedded
228c661a0b9SMark Brown	  systems.  This option enables core support for the WM8350 with
229c661a0b9SMark Brown	  I2C as the control interface.  Additional options must be
230c661a0b9SMark Brown	  selected to enable support for the functionality of the chip.
231c661a0b9SMark Brown
232f52046b1SBalaji Raoconfig MFD_PCF50633
233f52046b1SBalaji Rao	tristate "Support for NXP PCF50633"
234f52046b1SBalaji Rao	depends on I2C
235f52046b1SBalaji Rao	help
236f52046b1SBalaji Rao	  Say yes here if you have NXP PCF50633 chip on your board.
237f52046b1SBalaji Rao	  This core driver provides register access and IRQ handling
238f52046b1SBalaji Rao	  facilities, and registers devices for the various functions
239f52046b1SBalaji Rao	  so that function-specific drivers can bind to them.
240f52046b1SBalaji Rao
2418238addcSSascha Hauerconfig MFD_MC13783
2428238addcSSascha Hauer	tristate "Support Freescale MC13783"
2438238addcSSascha Hauer	depends on SPI_MASTER
2448238addcSSascha Hauer	select MFD_CORE
2458238addcSSascha Hauer	help
2468238addcSSascha Hauer	  Support for the Freescale (Atlas) MC13783 PMIC and audio CODEC.
2478238addcSSascha Hauer	  This driver provides common support for accessing  the device,
2488238addcSSascha Hauer	  additional drivers must be enabled in order to use the
2498238addcSSascha Hauer	  functionality of the device.
2508238addcSSascha Hauer
25108c3e06aSBalaji Raoconfig PCF50633_ADC
25208c3e06aSBalaji Rao	tristate "Support for NXP PCF50633 ADC"
25308c3e06aSBalaji Rao	depends on MFD_PCF50633
25408c3e06aSBalaji Rao	help
25508c3e06aSBalaji Rao	 Say yes here if you want to include support for ADC in the
25608c3e06aSBalaji Rao	 NXP PCF50633 chip.
25708c3e06aSBalaji Rao
2586a3d119bSBalaji Raoconfig PCF50633_GPIO
2596a3d119bSBalaji Rao	tristate "Support for NXP PCF50633 GPIO"
2606a3d119bSBalaji Rao	depends on MFD_PCF50633
2616a3d119bSBalaji Rao	help
2626a3d119bSBalaji Rao	 Say yes here if you want to include support GPIO for pins on
2636a3d119bSBalaji Rao	 the PCF50633 chip.
2646a3d119bSBalaji Rao
26514fa5691SLinus Walleijconfig AB3100_CORE
26614fa5691SLinus Walleij	tristate "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
26714fa5691SLinus Walleij	depends on I2C
26814fa5691SLinus Walleij	default y if ARCH_U300
26914fa5691SLinus Walleij	help
27014fa5691SLinus Walleij	  Select this to enable the AB3100 Mixed Signal IC core
27114fa5691SLinus Walleij	  functionality. This connects to a AB3100 on the I2C bus
27214fa5691SLinus Walleij	  and expose a number of symbols needed for dependent devices
27314fa5691SLinus Walleij	  to read and write registers and subscribe to events from
27414fa5691SLinus Walleij	  this multi-functional IC. This is needed to use other features
27514fa5691SLinus Walleij	  of the AB3100 such as battery-backed RTC, charging control,
27614fa5691SLinus Walleij	  LEDs, vibrator, system power and temperature, power management
27714fa5691SLinus Walleij	  and ALSA sound.
27814fa5691SLinus Walleij
279*12992dd8SLinus Walleijconfig AB3100_OTP
280*12992dd8SLinus Walleij	tristate "ST-Ericsson AB3100 OTP functions"
281*12992dd8SLinus Walleij	depends on AB3100_CORE
282*12992dd8SLinus Walleij	default y if AB3100_CORE
283*12992dd8SLinus Walleij	help
284*12992dd8SLinus Walleij	  Select this to enable the AB3100 Mixed Signal IC OTP (one-time
285*12992dd8SLinus Walleij	  programmable memory) support. This exposes a sysfs file to read
286*12992dd8SLinus Walleij	  out OTP values.
287*12992dd8SLinus Walleij
28813a09f93SDaniel Ribeiroconfig EZX_PCAP
28913a09f93SDaniel Ribeiro	bool "PCAP Support"
29013a09f93SDaniel Ribeiro	depends on GENERIC_HARDIRQS && SPI_MASTER
29113a09f93SDaniel Ribeiro	help
29213a09f93SDaniel Ribeiro	  This enables the PCAP ASIC present on EZX Phones. This is
29313a09f93SDaniel Ribeiro	  needed for MMC, TouchScreen, Sound, USB, etc..
29413a09f93SDaniel Ribeiro
295b6d6454fSBen Dooksendmenu
296b6d6454fSBen Dooks
297a4e137abSRussell Kingmenu "Multimedia Capabilities Port drivers"
298f751d50fSAdrian Bunk	depends on ARCH_SA1100
299a4e137abSRussell King
300a4e137abSRussell Kingconfig MCP
301a4e137abSRussell King	tristate
302a4e137abSRussell King
3035e742ad6SRussell King# Interface drivers
3045e742ad6SRussell Kingconfig MCP_SA11X0
3055e742ad6SRussell King	tristate "Support SA11x0 MCP interface"
3065e742ad6SRussell King	depends on ARCH_SA1100
3075e742ad6SRussell King	select MCP
3085e742ad6SRussell King
30905c45ca9SRussell King# Chip drivers
31005c45ca9SRussell Kingconfig MCP_UCB1200
31105c45ca9SRussell King	tristate "Support for UCB1200 / UCB1300"
31205c45ca9SRussell King	depends on MCP
31305c45ca9SRussell King
314acb45439SRussell Kingconfig MCP_UCB1200_TS
315acb45439SRussell King	tristate "Touchscreen interface support"
316acb45439SRussell King	depends on MCP_UCB1200 && INPUT
317acb45439SRussell King
318a4e137abSRussell Kingendmenu
319