xref: /linux/drivers/mfd/Kconfig (revision fc498fa29c725a0f0fc5ed359db0e3ed33f4ed52)
1a4e137abSRussell King#
2a4e137abSRussell King# Multifunction miscellaneous devices
3a4e137abSRussell King#
4a4e137abSRussell King
538270644SRandy Dunlapmenuconfig MFD_SUPPORT
638270644SRandy Dunlap	bool "Multifunction device drivers"
7e25df120SMartin Schwidefsky	depends on HAS_IOMEM
838270644SRandy Dunlap	default y
938270644SRandy Dunlap	help
1015742c8aSSamuel Ortiz	  Multifunction devices embed several functions (e.g. GPIOs,
1115742c8aSSamuel Ortiz	  touchscreens, keyboards, current regulators, power management chips,
1215742c8aSSamuel Ortiz	  etc...) in one single integrated circuit. They usually talk to the
1315742c8aSSamuel Ortiz	  main CPU through one or more IRQ lines and low speed data busses (SPI,
1415742c8aSSamuel Ortiz	  I2C, etc..). They appear as one single device to the main system
1515742c8aSSamuel Ortiz	  through the data bus and the MFD framework allows for sub devices
1615742c8aSSamuel Ortiz	  (a.k.a. functions) to appear as discrete platform devices.
1715742c8aSSamuel Ortiz	  MFDs are typically found on embedded platforms.
1815742c8aSSamuel Ortiz
1915742c8aSSamuel Ortiz	  This option alone does not add any kernel code.
2038270644SRandy Dunlap
2138270644SRandy Dunlapif MFD_SUPPORT
22b6d6454fSBen Dooks
23aa613de6SDmitry Baryshkovconfig MFD_CORE
24aa613de6SDmitry Baryshkov	tristate
25aa613de6SDmitry Baryshkov	default n
26aa613de6SDmitry Baryshkov
272cc50beeSHaojian Zhuangconfig MFD_88PM860X
282cc50beeSHaojian Zhuang	bool "Support Marvell 88PM8606/88PM8607"
298d002bdcSGeert Uytterhoeven	depends on I2C=y && GENERIC_HARDIRQS
302cc50beeSHaojian Zhuang	select MFD_CORE
312cc50beeSHaojian Zhuang	help
322cc50beeSHaojian Zhuang	  This supports for Marvell 88PM8606/88PM8607 Power Management IC.
332cc50beeSHaojian Zhuang	  This includes the I2C driver and the core APIs _only_, you have to
342cc50beeSHaojian Zhuang	  select individual components like voltage regulators, RTC and
352cc50beeSHaojian Zhuang	  battery-charger under the corresponding menus.
362cc50beeSHaojian Zhuang
37b6d6454fSBen Dooksconfig MFD_SM501
38b6d6454fSBen Dooks	tristate "Support for Silicon Motion SM501"
39b6d6454fSBen Dooks	 ---help---
40b6d6454fSBen Dooks	  This is the core driver for the Silicon Motion SM501 multimedia
41b6d6454fSBen Dooks	  companion chip. This device is a multifunction device which may
4201dd2fbfSMatt LaPlante	  provide numerous interfaces including USB host controller, USB gadget,
4301dd2fbfSMatt LaPlante	  asynchronous serial ports, audio functions, and a dual display video
44b6d6454fSBen Dooks	  interface. The device may be connected by PCI or local bus with
45b6d6454fSBen Dooks	  varying functions enabled.
46b6d6454fSBen Dooks
47f61be273SBen Dooksconfig MFD_SM501_GPIO
48f61be273SBen Dooks	bool "Export GPIO via GPIO layer"
492eedd604SSamuel Ortiz	depends on MFD_SM501 && GPIOLIB
50f61be273SBen Dooks	 ---help---
51f61be273SBen Dooks	 This option uses the gpio library layer to export the 64 GPIO
52f61be273SBen Dooks	 lines on the SM501. The platform data is used to supply the
53f61be273SBen Dooks	 base number for the first GPIO line to register.
54f61be273SBen Dooks
55fa9ff4b1SSamuel Ortizconfig MFD_ASIC3
56fa9ff4b1SSamuel Ortiz	bool "Support for Compaq ASIC3"
572eedd604SSamuel Ortiz	depends on GENERIC_HARDIRQS && GPIOLIB && ARM
589461f65aSPhilipp Zabel	select MFD_CORE
59fa9ff4b1SSamuel Ortiz	 ---help---
60fa9ff4b1SSamuel Ortiz	  This driver supports the ASIC3 multifunction chip found on many
61fa9ff4b1SSamuel Ortiz	  PDAs (mainly iPAQ and HTC based ones)
62fa9ff4b1SSamuel Ortiz
63a87d5638SMagnus Dammconfig MFD_SH_MOBILE_SDHI
64a87d5638SMagnus Damm	bool "Support for SuperH Mobile SDHI"
653d8ca8c0SMagnus Damm	depends on SUPERH || ARCH_SHMOBILE
66a87d5638SMagnus Damm	select MFD_CORE
67311f3ac7SGuennadi Liakhovetski	select TMIO_MMC_DMA
68a87d5638SMagnus Damm	 ---help---
69a87d5638SMagnus Damm	  This driver supports the SDHI hardware block found in many
70a87d5638SMagnus Damm	  SuperH Mobile SoCs.
71a87d5638SMagnus Damm
72ca26308cSMiguel Aguilarconfig MFD_DAVINCI_VOICECODEC
73ca26308cSMiguel Aguilar	tristate
74ca26308cSMiguel Aguilar	select MFD_CORE
75ca26308cSMiguel Aguilar
760931a4c6SDavid Brownellconfig MFD_DM355EVM_MSP
770931a4c6SDavid Brownell	bool "DaVinci DM355 EVM microcontroller"
781819ebcfSSamuel Ortiz	depends on I2C=y && MACH_DAVINCI_DM355_EVM
790931a4c6SDavid Brownell	help
800931a4c6SDavid Brownell	  This driver supports the MSP430 microcontroller used on these
810931a4c6SDavid Brownell	  boards.  MSP430 firmware manages resets and power sequencing,
820931a4c6SDavid Brownell	  inputs from buttons and the IR remote, LEDs, an RTC, and more.
830931a4c6SDavid Brownell
8403df0f62SCyril Chemparathyconfig MFD_TI_SSP
8503df0f62SCyril Chemparathy	tristate "TI Sequencer Serial Port support"
8603df0f62SCyril Chemparathy	depends on ARCH_DAVINCI_TNETV107X
8703df0f62SCyril Chemparathy	select MFD_CORE
8803df0f62SCyril Chemparathy	---help---
8903df0f62SCyril Chemparathy	  Say Y here if you want support for the Sequencer Serial Port
9003df0f62SCyril Chemparathy	  in a Texas Instruments TNETV107X SoC.
9103df0f62SCyril Chemparathy
9203df0f62SCyril Chemparathy	  To compile this driver as a module, choose M here: the
9303df0f62SCyril Chemparathy	  module will be called ti-ssp.
9403df0f62SCyril Chemparathy
95a1635b8fSPhilipp Zabelconfig HTC_EGPIO
96a1635b8fSPhilipp Zabel	bool "HTC EGPIO support"
977444a72eSMichael Buesch	depends on GENERIC_HARDIRQS && GPIOLIB && ARM
98a1635b8fSPhilipp Zabel	help
99a1635b8fSPhilipp Zabel	    This driver supports the CPLD egpio chip present on
100a1635b8fSPhilipp Zabel	    several HTC phones.  It provides basic support for input
101a1635b8fSPhilipp Zabel	    pins, output pins, and irqs.
102a1635b8fSPhilipp Zabel
1035dc3339aSPhilipp Zabelconfig HTC_PASIC3
1045dc3339aSPhilipp Zabel	tristate "HTC PASIC3 LED/DS1WM chip support"
1050254a8f4SPhilipp Zabel	select MFD_CORE
1065dc3339aSPhilipp Zabel	help
1075dc3339aSPhilipp Zabel	  This core driver provides register access for the LED/DS1WM
1085dc3339aSPhilipp Zabel	  chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
1095dc3339aSPhilipp Zabel	  HTC Magician devices, respectively. Actual functionality is
1105dc3339aSPhilipp Zabel	  handled by the leds-pasic3 and ds1wm drivers.
1115dc3339aSPhilipp Zabel
1126048a3ddSCory Maccarroneconfig HTC_I2CPLD
1136048a3ddSCory Maccarrone	bool "HTC I2C PLD chip support"
114bef3e20cSRandy Dunlap	depends on I2C=y && GPIOLIB
1156048a3ddSCory Maccarrone	help
1166048a3ddSCory Maccarrone	  If you say yes here you get support for the supposed CPLD
1176048a3ddSCory Maccarrone	  found on omap850 HTC devices like the HTC Wizard and HTC Herald.
1186048a3ddSCory Maccarrone	  This device provides input and output GPIOs through an I2C
1196048a3ddSCory Maccarrone	  interface to one or more sub-chips.
1206048a3ddSCory Maccarrone
121d9105c2bSMarek Vašutconfig UCB1400_CORE
122d9105c2bSMarek Vašut	tristate "Philips UCB1400 Core driver"
123e4831802SRandy Dunlap	depends on AC97_BUS
1245a49a540SAndrew Morton	depends on GPIOLIB
125d9105c2bSMarek Vašut	help
126d9105c2bSMarek Vašut	  This enables support for the Philips UCB1400 core functions.
127d9105c2bSMarek Vašut	  The UCB1400 is an AC97 audio codec.
128d9105c2bSMarek Vašut
129d9105c2bSMarek Vašut	  To compile this driver as a module, choose M here: the
130d9105c2bSMarek Vašut	  module will be called ucb1400_core.
131d9105c2bSMarek Vašut
132798a8eeeSLinus Walleijconfig TPS6105X
133798a8eeeSLinus Walleij	tristate "TPS61050/61052 Boost Converters"
134798a8eeeSLinus Walleij	depends on I2C
1352edd3b69SLinus Walleij	select REGULATOR
136*fc498fa2SGuenter Roeck	select MFD_CORE
1372edd3b69SLinus Walleij	select REGULATOR_FIXED_VOLTAGE
138798a8eeeSLinus Walleij	help
139798a8eeeSLinus Walleij	  This option enables a driver for the TP61050/TPS61052
140798a8eeeSLinus Walleij	  high-power "white LED driver". This boost converter is
141798a8eeeSLinus Walleij	  sometimes used for other things than white LEDs, and
142798a8eeeSLinus Walleij	  also contains a GPIO pin.
143798a8eeeSLinus Walleij
14487c13493SDavid Brownellconfig TPS65010
14587c13493SDavid Brownell	tristate "TPS6501x Power Management chips"
14687c13493SDavid Brownell	depends on I2C && GPIOLIB
14787c13493SDavid Brownell	default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
14887c13493SDavid Brownell	help
14987c13493SDavid Brownell	  If you say yes here you get support for the TPS6501x series of
15087c13493SDavid Brownell	  Power Management chips.  These include voltage regulators,
15187c13493SDavid Brownell	  lithium ion/polymer battery charging, and other features that
15287c13493SDavid Brownell	  are often used in portable devices like cell phones and cameras.
15387c13493SDavid Brownell
15487c13493SDavid Brownell	  This driver can also be built as a module.  If so, the module
15587c13493SDavid Brownell	  will be called tps65010.
15687c13493SDavid Brownell
15731dd6a26STodd Fischerconfig TPS6507X
15831dd6a26STodd Fischer	tristate "TPS6507x Power Management / Touch Screen chips"
15931dd6a26STodd Fischer	select MFD_CORE
16031dd6a26STodd Fischer	depends on I2C
16131dd6a26STodd Fischer	help
16231dd6a26STodd Fischer	  If you say yes here you get support for the TPS6507x series of
16331dd6a26STodd Fischer	  Power Management / Touch Screen chips.  These include voltage
16431dd6a26STodd Fischer	  regulators, lithium ion/polymer battery charging, touch screen
16531dd6a26STodd Fischer	  and other features that are often used in portable devices.
16631dd6a26STodd Fischer	  This driver can also be built as a module.  If so, the module
16731dd6a26STodd Fischer	  will be called tps6507x.
16831dd6a26STodd Fischer
16988e75cc3SDavid Brownellconfig MENELAUS
17088e75cc3SDavid Brownell	bool "Texas Instruments TWL92330/Menelaus PM chip"
171088ef950STony Lindgren	depends on I2C=y && ARCH_OMAP2
17288e75cc3SDavid Brownell	help
17388e75cc3SDavid Brownell	  If you say yes here you get support for the Texas Instruments
17488e75cc3SDavid Brownell	  TWL92330/Menelaus Power Management chip. This include voltage
175692105b8SMatt LaPlante	  regulators, Dual slot memory card transceivers, real-time clock
17688e75cc3SDavid Brownell	  and other features that are often used in portable devices like
17788e75cc3SDavid Brownell	  cell phones and PDAs.
17888e75cc3SDavid Brownell
179a603a7faSDavid Brownellconfig TWL4030_CORE
180e8deb28cSBalaji T K	bool "Texas Instruments TWL4030/TWL5030/TWL6030/TPS659x0 Support"
18167460a7cSDavid Brownell	depends on I2C=y && GENERIC_HARDIRQS
182a603a7faSDavid Brownell	help
183e8deb28cSBalaji T K	  Say yes here if you have TWL4030 / TWL6030 family chip on your board.
184a603a7faSDavid Brownell	  This core driver provides register access and IRQ handling
185a603a7faSDavid Brownell	  facilities, and registers devices for the various functions
186a603a7faSDavid Brownell	  so that function-specific drivers can bind to them.
187a603a7faSDavid Brownell
188a603a7faSDavid Brownell	  These multi-function chips are found on many OMAP2 and OMAP3
189a603a7faSDavid Brownell	  boards, providing power management, RTC, GPIO, keypad, a
190a603a7faSDavid Brownell	  high speed USB OTG transceiver, an audio codec (on most
191a603a7faSDavid Brownell	  versions) and many other features.
192a603a7faSDavid Brownell
193f99c1d4fSKeerthyconfig TWL4030_MADC
194f99c1d4fSKeerthy	tristate "Texas Instruments TWL4030 MADC"
195f99c1d4fSKeerthy	depends on TWL4030_CORE
196f99c1d4fSKeerthy	help
197f99c1d4fSKeerthy	This driver provides support for triton TWL4030-MADC. The
198f99c1d4fSKeerthy	driver supports both RT and SW conversion methods.
199f99c1d4fSKeerthy
200f99c1d4fSKeerthy	This driver can be built as a module. If so it will be
201f99c1d4fSKeerthy	named twl4030-madc
202f99c1d4fSKeerthy
203ebf0bd36SAmit Kucheriaconfig TWL4030_POWER
204ebf0bd36SAmit Kucheria	bool "Support power resources on TWL4030 family chips"
205ebf0bd36SAmit Kucheria	depends on TWL4030_CORE && ARM
206ebf0bd36SAmit Kucheria	help
207ebf0bd36SAmit Kucheria	  Say yes here if you want to use the power resources on the
208ebf0bd36SAmit Kucheria	  TWL4030 family chips.  Most of these resources are regulators,
209ebf0bd36SAmit Kucheria	  which have a separate driver; some are control signals, such
210ebf0bd36SAmit Kucheria	  as clock request handshaking.
211ebf0bd36SAmit Kucheria
212ebf0bd36SAmit Kucheria	  This driver uses board-specific data to initialize the resources
213ebf0bd36SAmit Kucheria	  and load scripts controling which resources are switched off/on
214ebf0bd36SAmit Kucheria	  or reset when a sleep, wakeup or warm reset event occurs.
215ebf0bd36SAmit Kucheria
2160b83ddebSPeter Ujfalusiconfig TWL4030_CODEC
2170b83ddebSPeter Ujfalusi	bool
2180b83ddebSPeter Ujfalusi	depends on TWL4030_CORE
2190b83ddebSPeter Ujfalusi	select MFD_CORE
2200b83ddebSPeter Ujfalusi	default n
2210b83ddebSPeter Ujfalusi
22231fc03dfSHemanth Vconfig TWL6030_PWM
22331fc03dfSHemanth V	tristate "TWL6030 PWM (Pulse Width Modulator) Support"
22431fc03dfSHemanth V	depends on TWL4030_CORE
22531fc03dfSHemanth V	select HAVE_PWM
22631fc03dfSHemanth V	default n
22731fc03dfSHemanth V	help
22831fc03dfSHemanth V	  Say yes here if you want support for TWL6030 PWM.
22931fc03dfSHemanth V	  This is used to control charging LED brightness.
23031fc03dfSHemanth V
23127e34995SRabin Vincentconfig MFD_STMPE
23227e34995SRabin Vincent	bool "Support STMicroelectronics STMPE"
23327e34995SRabin Vincent	depends on I2C=y && GENERIC_HARDIRQS
23427e34995SRabin Vincent	select MFD_CORE
23527e34995SRabin Vincent	help
23627e34995SRabin Vincent	  Support for the STMPE family of I/O Expanders from
23727e34995SRabin Vincent	  STMicroelectronics.
23827e34995SRabin Vincent
23927e34995SRabin Vincent	  Currently supported devices are:
24027e34995SRabin Vincent
24127e34995SRabin Vincent		STMPE811: GPIO, Touchscreen
24227e34995SRabin Vincent		STMPE1601: GPIO, Keypad
24327e34995SRabin Vincent		STMPE2401: GPIO, Keypad
24427e34995SRabin Vincent		STMPE2403: GPIO, Keypad
24527e34995SRabin Vincent
24627e34995SRabin Vincent	  This driver provides common support for accessing the device,
24727e34995SRabin Vincent	  additional drivers must be enabled in order to use the functionality
24827e34995SRabin Vincent	  of the device.  Currently available sub drivers are:
24927e34995SRabin Vincent
25027e34995SRabin Vincent		GPIO: stmpe-gpio
25127e34995SRabin Vincent		Keypad: stmpe-keypad
25227e34995SRabin Vincent		Touchscreen: stmpe-ts
25327e34995SRabin Vincent
254f4e8afdcSSundar Iyerconfig MFD_TC3589X
255f4e8afdcSSundar Iyer	bool "Support Toshiba TC35892 and variants"
256b4ecd326SRabin Vincent	depends on I2C=y && GENERIC_HARDIRQS
257b4ecd326SRabin Vincent	select MFD_CORE
258b4ecd326SRabin Vincent	help
259f4e8afdcSSundar Iyer	  Support for the Toshiba TC35892 and variants I/O Expander.
260b4ecd326SRabin Vincent
261b4ecd326SRabin Vincent	  This driver provides common support for accessing the device,
262b4ecd326SRabin Vincent	  additional drivers must be enabled in order to use the
263b4ecd326SRabin Vincent	  functionality of the device.
264b4ecd326SRabin Vincent
2651c2c30acSSamuel Ortizconfig MFD_TMIO
2661c2c30acSSamuel Ortiz	bool
2671c2c30acSSamuel Ortiz	default n
2681c2c30acSSamuel Ortiz
269311f3ac7SGuennadi Liakhovetskiconfig TMIO_MMC_DMA
270311f3ac7SGuennadi Liakhovetski	bool
271311f3ac7SGuennadi Liakhovetski	select DMA_ENGINE
272311f3ac7SGuennadi Liakhovetski	select DMADEVICES
273311f3ac7SGuennadi Liakhovetski
2741f192015SIan Moltonconfig MFD_T7L66XB
2751f192015SIan Molton	bool "Support Toshiba T7L66XB"
2769ca68233SAl Viro	depends on ARM && HAVE_CLK
2771f192015SIan Molton	select MFD_CORE
2781c2c30acSSamuel Ortiz	select MFD_TMIO
2791f192015SIan Molton	help
2801f192015SIan Molton	  Support for Toshiba Mobile IO Controller T7L66XB
2811f192015SIan Molton
282cbdfb426SIan Moltonconfig MFD_TC6387XB
283cbdfb426SIan Molton	bool "Support Toshiba TC6387XB"
2849ca68233SAl Viro	depends on ARM && HAVE_CLK
285cbdfb426SIan Molton	select MFD_CORE
2861c2c30acSSamuel Ortiz	select MFD_TMIO
287cbdfb426SIan Molton	help
288cbdfb426SIan Molton	  Support for Toshiba Mobile IO Controller TC6387XB
289cbdfb426SIan Molton
290d6315949SDmitry Baryshkovconfig MFD_TC6393XB
291d6315949SDmitry Baryshkov	bool "Support Toshiba TC6393XB"
2928d25b36bSAdrian Bunk	depends on GPIOLIB && ARM
293f024ff10SDmitry Baryshkov	select MFD_CORE
2941c2c30acSSamuel Ortiz	select MFD_TMIO
295d6315949SDmitry Baryshkov	help
296d6315949SDmitry Baryshkov	  Support for Toshiba Mobile IO Controller TC6393XB
297d6315949SDmitry Baryshkov
2988e2eaabfSSamuel Ortizconfig PMIC_DA903X
2998e2eaabfSSamuel Ortiz	bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
3008e2eaabfSSamuel Ortiz	depends on I2C=y
3018e2eaabfSSamuel Ortiz	help
3028e2eaabfSSamuel Ortiz	  Say yes here to support for Dialog Semiconductor DA9030 (a.k.a
3038e2eaabfSSamuel Ortiz	  ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
3048e2eaabfSSamuel Ortiz	  usually found on PXA processors-based platforms. This includes
3058e2eaabfSSamuel Ortiz	  the I2C driver and the core APIs _only_, you have to select
3068e2eaabfSSamuel Ortiz	  individual components like LCD backlight, voltage regulators,
3078e2eaabfSSamuel Ortiz	  LEDs and battery-charger under the corresponding menus.
3088e2eaabfSSamuel Ortiz
309a5736e0bSMichael Hennerichconfig PMIC_ADP5520
310a5736e0bSMichael Hennerich	bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
311a5736e0bSMichael Hennerich	depends on I2C=y
312a5736e0bSMichael Hennerich	help
313a5736e0bSMichael Hennerich	  Say yes here to add support for Analog Devices AD5520 and ADP5501,
314a5736e0bSMichael Hennerich	  Multifunction Power Management IC. This includes
315a5736e0bSMichael Hennerich	  the I2C driver and the core APIs _only_, you have to select
316a5736e0bSMichael Hennerich	  individual components like LCD backlight, LEDs, GPIOs and Kepad
317a5736e0bSMichael Hennerich	  under the corresponding menus.
318a5736e0bSMichael Hennerich
319d50f8f33SHaojian Zhuangconfig MFD_MAX8925
3201f1cf8f9SHaojian Zhuang	bool "Maxim Semiconductor MAX8925 PMIC Support"
3218d002bdcSGeert Uytterhoeven	depends on I2C=y && GENERIC_HARDIRQS
3221ad99893SHaojian Zhuang	select MFD_CORE
323d50f8f33SHaojian Zhuang	help
324d50f8f33SHaojian Zhuang	  Say yes here to support for Maxim Semiconductor MAX8925. This is
325d50f8f33SHaojian Zhuang	  a Power Management IC. This driver provies common support for
326d50f8f33SHaojian Zhuang	  accessing the device, additional drivers must be enabled in order
327d50f8f33SHaojian Zhuang	  to use the functionality of the device.
328d50f8f33SHaojian Zhuang
329527e7e9aSMyungJoo Hamconfig MFD_MAX8997
330527e7e9aSMyungJoo Ham	bool "Maxim Semiconductor MAX8997/8966 PMIC Support"
331527e7e9aSMyungJoo Ham	depends on I2C=y && GENERIC_HARDIRQS
332527e7e9aSMyungJoo Ham	select MFD_CORE
333527e7e9aSMyungJoo Ham	help
334527e7e9aSMyungJoo Ham	  Say yes here to support for Maxim Semiconductor MAX8998/8966.
335527e7e9aSMyungJoo Ham	  This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic,
336527e7e9aSMyungJoo Ham	  MUIC controls on chip.
337d7e8c01aSRandy Dunlap	  This driver provides common support for accessing the device;
338527e7e9aSMyungJoo Ham	  additional drivers must be enabled in order to use the functionality
339527e7e9aSMyungJoo Ham	  of the device.
340527e7e9aSMyungJoo Ham
341156f2528SKyungmin Parkconfig MFD_MAX8998
342f8539ddcSKyungmin Park	bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support"
3432c7e6f57SJoonyoung Shim	depends on I2C=y && GENERIC_HARDIRQS
344156f2528SKyungmin Park	select MFD_CORE
345156f2528SKyungmin Park	help
346f8539ddcSKyungmin Park	  Say yes here to support for Maxim Semiconductor MAX8998 and
347f8539ddcSKyungmin Park	  National Semiconductor LP3974. This is a Power Management IC.
348f8539ddcSKyungmin Park	  This driver provies common support for accessing the device,
349f8539ddcSKyungmin Park	  additional drivers must be enabled in order to use the functionality
350f8539ddcSKyungmin Park	  of the device.
351156f2528SKyungmin Park
3521d9f9f04SMark Brownconfig MFD_WM8400
3531d9f9f04SMark Brown	tristate "Support Wolfson Microelectronics WM8400"
354b8380c1aSMark Brown	select MFD_CORE
3559c366452SMark Brown	depends on I2C
3561d9f9f04SMark Brown	help
3571d9f9f04SMark Brown	  Support for the Wolfson Microelecronics WM8400 PMIC and audio
3589e5aca58SMark Brown	  CODEC.  This driver provides common support for accessing
3591d9f9f04SMark Brown	  the device, additional drivers must be enabled in order to use
3601d9f9f04SMark Brown	  the functionality of the device.
3611d9f9f04SMark Brown
362b11062b9SMark Brownconfig MFD_WM831X
363e5b48684SMark Brown	bool
364e5b48684SMark Brown	depends on GENERIC_HARDIRQS
365e5b48684SMark Brown
366e5b48684SMark Brownconfig MFD_WM831X_I2C
367e5b48684SMark Brown	bool "Support Wolfson Microelectronics WM831x/2x PMICs with I2C"
368b11062b9SMark Brown	select MFD_CORE
369e5b48684SMark Brown	select MFD_WM831X
3708d002bdcSGeert Uytterhoeven	depends on I2C=y && GENERIC_HARDIRQS
371b11062b9SMark Brown	help
372e5b48684SMark Brown	  Support for the Wolfson Microelecronics WM831x and WM832x PMICs
373e5b48684SMark Brown	  when controlled using I2C.  This driver provides common support
374e5b48684SMark Brown	  for accessing the device, additional drivers must be enabled in
375e5b48684SMark Brown	  order to use the functionality of the device.
376b11062b9SMark Brown
3772aa13b9eSMark Brownconfig MFD_WM831X_SPI
3782aa13b9eSMark Brown	bool "Support Wolfson Microelectronics WM831x/2x PMICs with SPI"
3792aa13b9eSMark Brown	select MFD_CORE
3802aa13b9eSMark Brown	select MFD_WM831X
3812aa13b9eSMark Brown	depends on SPI_MASTER && GENERIC_HARDIRQS
3822aa13b9eSMark Brown	help
3832aa13b9eSMark Brown	  Support for the Wolfson Microelecronics WM831x and WM832x PMICs
3842aa13b9eSMark Brown	  when controlled using SPI.  This driver provides common support
3852aa13b9eSMark Brown	  for accessing the device, additional drivers must be enabled in
3862aa13b9eSMark Brown	  order to use the functionality of the device.
3872aa13b9eSMark Brown
38889b4012bSMark Brownconfig MFD_WM8350
389ecf926bcSMark Brown	bool
3908d002bdcSGeert Uytterhoeven	depends on GENERIC_HARDIRQS
39189b4012bSMark Brown
39289b4012bSMark Brownconfig MFD_WM8350_CONFIG_MODE_0
39389b4012bSMark Brown	bool
39489b4012bSMark Brown	depends on MFD_WM8350
39589b4012bSMark Brown
39689b4012bSMark Brownconfig MFD_WM8350_CONFIG_MODE_1
39789b4012bSMark Brown	bool
39889b4012bSMark Brown	depends on MFD_WM8350
39989b4012bSMark Brown
40089b4012bSMark Brownconfig MFD_WM8350_CONFIG_MODE_2
40189b4012bSMark Brown	bool
40289b4012bSMark Brown	depends on MFD_WM8350
40389b4012bSMark Brown
40489b4012bSMark Brownconfig MFD_WM8350_CONFIG_MODE_3
40589b4012bSMark Brown	bool
40689b4012bSMark Brown	depends on MFD_WM8350
40789b4012bSMark Brown
408ca23f8c1SMark Brownconfig MFD_WM8351_CONFIG_MODE_0
409ca23f8c1SMark Brown	bool
410ca23f8c1SMark Brown	depends on MFD_WM8350
411ca23f8c1SMark Brown
412ca23f8c1SMark Brownconfig MFD_WM8351_CONFIG_MODE_1
413ca23f8c1SMark Brown	bool
414ca23f8c1SMark Brown	depends on MFD_WM8350
415ca23f8c1SMark Brown
416ca23f8c1SMark Brownconfig MFD_WM8351_CONFIG_MODE_2
417ca23f8c1SMark Brown	bool
418ca23f8c1SMark Brown	depends on MFD_WM8350
419ca23f8c1SMark Brown
420ca23f8c1SMark Brownconfig MFD_WM8351_CONFIG_MODE_3
421ca23f8c1SMark Brown	bool
422ca23f8c1SMark Brown	depends on MFD_WM8350
423ca23f8c1SMark Brown
42496920630SMark Brownconfig MFD_WM8352_CONFIG_MODE_0
42596920630SMark Brown	bool
42696920630SMark Brown	depends on MFD_WM8350
42796920630SMark Brown
42896920630SMark Brownconfig MFD_WM8352_CONFIG_MODE_1
42996920630SMark Brown	bool
43096920630SMark Brown	depends on MFD_WM8350
43196920630SMark Brown
43296920630SMark Brownconfig MFD_WM8352_CONFIG_MODE_2
43396920630SMark Brown	bool
43496920630SMark Brown	depends on MFD_WM8350
43596920630SMark Brown
43696920630SMark Brownconfig MFD_WM8352_CONFIG_MODE_3
43796920630SMark Brown	bool
43896920630SMark Brown	depends on MFD_WM8350
43996920630SMark Brown
440c661a0b9SMark Brownconfig MFD_WM8350_I2C
441ecf926bcSMark Brown	bool "Support Wolfson Microelectronics WM8350 with I2C"
442c661a0b9SMark Brown	select MFD_WM8350
4438d002bdcSGeert Uytterhoeven	depends on I2C=y && GENERIC_HARDIRQS
444c661a0b9SMark Brown	help
445c661a0b9SMark Brown	  The WM8350 is an integrated audio and power management
446c661a0b9SMark Brown	  subsystem with watchdog and RTC functionality for embedded
447c661a0b9SMark Brown	  systems.  This option enables core support for the WM8350 with
448c661a0b9SMark Brown	  I2C as the control interface.  Additional options must be
449c661a0b9SMark Brown	  selected to enable support for the functionality of the chip.
450c661a0b9SMark Brown
4519e501086SMark Brownconfig MFD_WM8994
452c9fbf7e0SMark Brown	bool "Support Wolfson Microelectronics WM8994"
4539e501086SMark Brown	select MFD_CORE
454c9fbf7e0SMark Brown	depends on I2C=y && GENERIC_HARDIRQS
4559e501086SMark Brown	help
4569e501086SMark Brown	  The WM8994 is a highly integrated hi-fi CODEC designed for
4579e501086SMark Brown	  smartphone applicatiosn.  As well as audio functionality it
4589e501086SMark Brown	  has on board GPIO and regulator functionality which is
4599e501086SMark Brown	  supported via the relevant subsystems.  This driver provides
4609e501086SMark Brown	  core support for the WM8994, in order to use the actual
4619e501086SMark Brown	  functionaltiy of the device other drivers must be enabled.
4629e501086SMark Brown
463f52046b1SBalaji Raoconfig MFD_PCF50633
464f52046b1SBalaji Rao	tristate "Support for NXP PCF50633"
465f52046b1SBalaji Rao	depends on I2C
466f52046b1SBalaji Rao	help
467f52046b1SBalaji Rao	  Say yes here if you have NXP PCF50633 chip on your board.
468f52046b1SBalaji Rao	  This core driver provides register access and IRQ handling
469f52046b1SBalaji Rao	  facilities, and registers devices for the various functions
470f52046b1SBalaji Rao	  so that function-specific drivers can bind to them.
471f52046b1SBalaji Rao
4728238addcSSascha Hauerconfig MFD_MC13783
4738e005935SUwe Kleine-König	tristate
4748e005935SUwe Kleine-König
4758e005935SUwe Kleine-Königconfig MFD_MC13XXX
4768e005935SUwe Kleine-König	tristate "Support Freescale MC13783 and MC13892"
4778238addcSSascha Hauer	depends on SPI_MASTER
4788238addcSSascha Hauer	select MFD_CORE
4798e005935SUwe Kleine-König	select MFD_MC13783
4808238addcSSascha Hauer	help
4818e005935SUwe Kleine-König	  Support for the Freescale (Atlas) PMIC and audio CODECs
4828e005935SUwe Kleine-König	  MC13783 and MC13892.
4838238addcSSascha Hauer	  This driver provides common support for accessing  the device,
4848238addcSSascha Hauer	  additional drivers must be enabled in order to use the
4858238addcSSascha Hauer	  functionality of the device.
4868238addcSSascha Hauer
48708c3e06aSBalaji Raoconfig PCF50633_ADC
48808c3e06aSBalaji Rao	tristate "Support for NXP PCF50633 ADC"
48908c3e06aSBalaji Rao	depends on MFD_PCF50633
49008c3e06aSBalaji Rao	help
49108c3e06aSBalaji Rao	 Say yes here if you want to include support for ADC in the
49208c3e06aSBalaji Rao	 NXP PCF50633 chip.
49308c3e06aSBalaji Rao
4946a3d119bSBalaji Raoconfig PCF50633_GPIO
4956a3d119bSBalaji Rao	tristate "Support for NXP PCF50633 GPIO"
4966a3d119bSBalaji Rao	depends on MFD_PCF50633
4976a3d119bSBalaji Rao	help
4986a3d119bSBalaji Rao	 Say yes here if you want to include support GPIO for pins on
4996a3d119bSBalaji Rao	 the PCF50633 chip.
5006a3d119bSBalaji Rao
501fa661258SMattias Wallinconfig ABX500_CORE
502fa661258SMattias Wallin	bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions"
50347c16975SMattias Wallin	default y if ARCH_U300 || ARCH_U8500
504fa661258SMattias Wallin	help
505fa661258SMattias Wallin	  Say yes here if you have the ABX500 Mixed Signal IC family
506fa661258SMattias Wallin	  chips. This core driver expose register access functions.
507fa661258SMattias Wallin	  Functionality specific drivers using these functions can
508fa661258SMattias Wallin	  remain unchanged when IC changes. Binding of the functions to
509fa661258SMattias Wallin	  actual register access is done by the IC core driver.
510fa661258SMattias Wallin
51114fa5691SLinus Walleijconfig AB3100_CORE
5122071db48SLinus Walleij	bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
513fa661258SMattias Wallin	depends on I2C=y && ABX500_CORE
5148c96aefbSLinus Walleij	select MFD_CORE
51514fa5691SLinus Walleij	default y if ARCH_U300
51614fa5691SLinus Walleij	help
51714fa5691SLinus Walleij	  Select this to enable the AB3100 Mixed Signal IC core
51814fa5691SLinus Walleij	  functionality. This connects to a AB3100 on the I2C bus
51914fa5691SLinus Walleij	  and expose a number of symbols needed for dependent devices
52014fa5691SLinus Walleij	  to read and write registers and subscribe to events from
52114fa5691SLinus Walleij	  this multi-functional IC. This is needed to use other features
52214fa5691SLinus Walleij	  of the AB3100 such as battery-backed RTC, charging control,
52314fa5691SLinus Walleij	  LEDs, vibrator, system power and temperature, power management
52414fa5691SLinus Walleij	  and ALSA sound.
52514fa5691SLinus Walleij
52612992dd8SLinus Walleijconfig AB3100_OTP
52712992dd8SLinus Walleij	tristate "ST-Ericsson AB3100 OTP functions"
52812992dd8SLinus Walleij	depends on AB3100_CORE
52912992dd8SLinus Walleij	default y if AB3100_CORE
53012992dd8SLinus Walleij	help
53112992dd8SLinus Walleij	  Select this to enable the AB3100 Mixed Signal IC OTP (one-time
53212992dd8SLinus Walleij	  programmable memory) support. This exposes a sysfs file to read
53312992dd8SLinus Walleij	  out OTP values.
53412992dd8SLinus Walleij
53513a09f93SDaniel Ribeiroconfig EZX_PCAP
53613a09f93SDaniel Ribeiro	bool "PCAP Support"
53713a09f93SDaniel Ribeiro	depends on GENERIC_HARDIRQS && SPI_MASTER
53813a09f93SDaniel Ribeiro	help
53913a09f93SDaniel Ribeiro	  This enables the PCAP ASIC present on EZX Phones. This is
54013a09f93SDaniel Ribeiro	  needed for MMC, TouchScreen, Sound, USB, etc..
54113a09f93SDaniel Ribeiro
54262579266SRabin Vincentconfig AB8500_CORE
54362579266SRabin Vincent	bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
5446680d940SSundar Iyer	depends on GENERIC_HARDIRQS && ABX500_CORE
54562579266SRabin Vincent	select MFD_CORE
5460c41839eSSrinidhi Kasagar	help
54762579266SRabin Vincent	  Select this option to enable access to AB8500 power management
5486680d940SSundar Iyer	  chip. This connects to U8500 either on the SSP/SPI bus (deprecated
5496680d940SSundar Iyer	  since hardware version v1.0) or the I2C bus via PRCMU. It also adds
5506680d940SSundar Iyer	  the irq_chip parts for handling the Mixed Signal chip events.
5510c41839eSSrinidhi Kasagar	  This chip embeds various other multimedia funtionalities as well.
5520c41839eSSrinidhi Kasagar
55339368edaSMattias Wallinconfig AB8500_I2C_CORE
55439368edaSMattias Wallin	bool "AB8500 register access via PRCMU I2C"
55539368edaSMattias Wallin	depends on AB8500_CORE && UX500_SOC_DB8500
55639368edaSMattias Wallin	default y
55739368edaSMattias Wallin	help
55839368edaSMattias Wallin	  This enables register access to the AB8500 chip via PRCMU I2C.
55939368edaSMattias Wallin	  The AB8500 chip can be accessed via SPI or I2C. On DB8500 hardware
56039368edaSMattias Wallin	  the I2C bus is connected to the Power Reset
56139368edaSMattias Wallin	  and Mangagement Unit, PRCMU.
56239368edaSMattias Wallin
5635814fc35SMattias Wallinconfig AB8500_DEBUG
5645814fc35SMattias Wallin       bool "Enable debug info via debugfs"
5655814fc35SMattias Wallin       depends on AB8500_CORE && DEBUG_FS
5665814fc35SMattias Wallin       default y if DEBUG_FS
5675814fc35SMattias Wallin       help
5685814fc35SMattias Wallin         Select this option if you want debug information using the debug
5695814fc35SMattias Wallin         filesystem, debugfs.
5705814fc35SMattias Wallin
571dae2db30SArun Murthyconfig AB8500_GPADC
572dae2db30SArun Murthy	bool "AB8500 GPADC driver"
573dae2db30SArun Murthy	depends on AB8500_CORE && REGULATOR_AB8500
574dae2db30SArun Murthy	default y
575dae2db30SArun Murthy	help
576dae2db30SArun Murthy	  AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage
577dae2db30SArun Murthy
57809bcb3f3SMattias Wallinconfig AB3550_CORE
57909bcb3f3SMattias Wallin        bool "ST-Ericsson AB3550 Mixed Signal Circuit core functions"
58009bcb3f3SMattias Wallin	select MFD_CORE
58109bcb3f3SMattias Wallin	depends on I2C=y && GENERIC_HARDIRQS && ABX500_CORE
58209bcb3f3SMattias Wallin	help
58309bcb3f3SMattias Wallin	  Select this to enable the AB3550 Mixed Signal IC core
58409bcb3f3SMattias Wallin	  functionality. This connects to a AB3550 on the I2C bus
58509bcb3f3SMattias Wallin	  and expose a number of symbols needed for dependent devices
58609bcb3f3SMattias Wallin	  to read and write registers and subscribe to events from
58709bcb3f3SMattias Wallin	  this multi-functional IC. This is needed to use other features
58809bcb3f3SMattias Wallin	  of the AB3550 such as battery-backed RTC, charging control,
58909bcb3f3SMattias Wallin	  LEDs, vibrator, system power and temperature, power management
59009bcb3f3SMattias Wallin	  and ALSA sound.
59109bcb3f3SMattias Wallin
592f71e1afdSAndres Salomonconfig MFD_CS5535
593f71e1afdSAndres Salomon	tristate "Support for CS5535 and CS5536 southbridge core functions"
594f71e1afdSAndres Salomon	select MFD_CORE
595f71e1afdSAndres Salomon	depends on PCI
596f71e1afdSAndres Salomon	---help---
597f71e1afdSAndres Salomon	  This is the core driver for CS5535/CS5536 MFD functions.  This is
598f71e1afdSAndres Salomon          necessary for using the board's GPIO and MFGPT functionality.
599f71e1afdSAndres Salomon
6008edbede9SRichard Röjforsconfig MFD_TIMBERDALE
6018edbede9SRichard Röjfors	tristate "Support for the Timberdale FPGA"
6028edbede9SRichard Röjfors	select MFD_CORE
603546e29b6SRandy Dunlap	depends on PCI && GPIOLIB
6048edbede9SRichard Röjfors	---help---
6058edbede9SRichard Röjfors	This is the core driver for the timberdale FPGA. This device is a
6068edbede9SRichard Röjfors	multifunction device which exposes numerous platform devices.
6078edbede9SRichard Röjfors
6088edbede9SRichard Röjfors	The timberdale FPGA can be found on the Intel Atom development board
6098edbede9SRichard Röjfors	for in-vehicle infontainment, called Russellville.
610e82c60aeSDenis Turischev
611e82c60aeSDenis Turischevconfig LPC_SCH
612e82c60aeSDenis Turischev	tristate "Intel SCH LPC"
613e82c60aeSDenis Turischev	depends on PCI
614e82c60aeSDenis Turischev	select MFD_CORE
615e82c60aeSDenis Turischev	help
616e82c60aeSDenis Turischev	  LPC bridge function of the Intel SCH provides support for
617e82c60aeSDenis Turischev	  System Management Bus and General Purpose I/O.
618e82c60aeSDenis Turischev
619e090d506SFlorian Fainelliconfig MFD_RDC321X
620e090d506SFlorian Fainelli	tristate "Support for RDC-R321x southbridge"
621e090d506SFlorian Fainelli	select MFD_CORE
622e090d506SFlorian Fainelli	depends on PCI
623e090d506SFlorian Fainelli	help
624e090d506SFlorian Fainelli	  Say yes here if you want to have support for the RDC R-321x SoC
625e090d506SFlorian Fainelli	  southbridge which provides access to GPIOs and Watchdog using the
626e090d506SFlorian Fainelli	  southbridge PCI device configuration space.
627e090d506SFlorian Fainelli
628bd358132SIra W. Snyderconfig MFD_JANZ_CMODIO
629bd358132SIra W. Snyder	tristate "Support for Janz CMOD-IO PCI MODULbus Carrier Board"
630bd358132SIra W. Snyder	select MFD_CORE
631bd358132SIra W. Snyder	depends on PCI
632bd358132SIra W. Snyder	help
633bd358132SIra W. Snyder	  This is the core driver for the Janz CMOD-IO PCI MODULbus
634bd358132SIra W. Snyder	  carrier board. This device is a PCI to MODULbus bridge which may
635bd358132SIra W. Snyder	  host many different types of MODULbus daughterboards, including
636bd358132SIra W. Snyder	  CAN and GPIO controllers.
637bd358132SIra W. Snyder
63891f4debfSLars-Peter Clausenconfig MFD_JZ4740_ADC
63991f4debfSLars-Peter Clausen	tristate "Support for the JZ4740 SoC ADC core"
64091f4debfSLars-Peter Clausen	select MFD_CORE
64191f4debfSLars-Peter Clausen	depends on MACH_JZ4740
64291f4debfSLars-Peter Clausen	help
64391f4debfSLars-Peter Clausen	  Say yes here if you want support for the ADC unit in the JZ4740 SoC.
64491f4debfSLars-Peter Clausen	  This driver is necessary for jz4740-battery and jz4740-hwmon driver.
64591f4debfSLars-Peter Clausen
646c6c19332SMike Rapoportconfig MFD_TPS6586X
647c26448c4SGary King	bool "TPS6586x Power Management chips"
648c26448c4SGary King	depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS
649c6c19332SMike Rapoport	select MFD_CORE
650c6c19332SMike Rapoport	help
651c6c19332SMike Rapoport	  If you say yes here you get support for the TPS6586X series of
652c6c19332SMike Rapoport	  Power Management chips.
653c6c19332SMike Rapoport	  This driver provides common support for accessing the device,
654c6c19332SMike Rapoport	  additional drivers must be enabled in order to use the
655c6c19332SMike Rapoport	  functionality of the device.
656c6c19332SMike Rapoport
657c6c19332SMike Rapoport	  This driver can also be built as a module.  If so, the module
658c6c19332SMike Rapoport	  will be called tps6586x.
659c6c19332SMike Rapoport
660375fc77bSDaniel Drakeconfig MFD_VX855
661375fc77bSDaniel Drake	tristate "Support for VIA VX855/VX875 integrated south bridge"
662375fc77bSDaniel Drake	depends on PCI
663375fc77bSDaniel Drake	select MFD_CORE
664375fc77bSDaniel Drake	help
665375fc77bSDaniel Drake	  Say yes here to enable support for various functions of the
666375fc77bSDaniel Drake	  VIA VX855/VX875 south bridge. You will need to enable the vx855_spi
667375fc77bSDaniel Drake	  and/or vx855_gpio drivers for this to do anything useful.
668375fc77bSDaniel Drake
669383268a8SMatti Aaltonenconfig MFD_WL1273_CORE
67094fd5b74SMatti Aaltonen	tristate "Support for TI WL1273 FM radio."
671383268a8SMatti Aaltonen	depends on I2C
672383268a8SMatti Aaltonen	select MFD_CORE
673383268a8SMatti Aaltonen	default n
674383268a8SMatti Aaltonen	help
675383268a8SMatti Aaltonen	  This is the core driver for the TI WL1273 FM radio. This MFD
676383268a8SMatti Aaltonen	  driver connects the radio-wl1273 V4L2 module and the wl1273
677383268a8SMatti Aaltonen	  audio codec.
678383268a8SMatti Aaltonen
67917cdd29dSKeshava Munegowdaconfig MFD_OMAP_USB_HOST
68017cdd29dSKeshava Munegowda	bool "Support OMAP USBHS core driver"
68117cdd29dSKeshava Munegowda	depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3
68217cdd29dSKeshava Munegowda	default y
68317cdd29dSKeshava Munegowda	help
68417cdd29dSKeshava Munegowda	  This is the core driver for the OAMP EHCI and OHCI drivers.
68517cdd29dSKeshava Munegowda	  This MFD driver does the required setup functionalities for
68617cdd29dSKeshava Munegowda	  OMAP USB Host drivers.
68717cdd29dSKeshava Munegowda
68838270644SRandy Dunlapendif # MFD_SUPPORT
689b6d6454fSBen Dooks
690a4e137abSRussell Kingmenu "Multimedia Capabilities Port drivers"
691f751d50fSAdrian Bunk	depends on ARCH_SA1100
692a4e137abSRussell King
693a4e137abSRussell Kingconfig MCP
694a4e137abSRussell King	tristate
695a4e137abSRussell King
6965e742ad6SRussell King# Interface drivers
6975e742ad6SRussell Kingconfig MCP_SA11X0
6985e742ad6SRussell King	tristate "Support SA11x0 MCP interface"
6995e742ad6SRussell King	depends on ARCH_SA1100
7005e742ad6SRussell King	select MCP
7015e742ad6SRussell King
70205c45ca9SRussell King# Chip drivers
70305c45ca9SRussell Kingconfig MCP_UCB1200
70405c45ca9SRussell King	tristate "Support for UCB1200 / UCB1300"
70505c45ca9SRussell King	depends on MCP
70605c45ca9SRussell King
707acb45439SRussell Kingconfig MCP_UCB1200_TS
708acb45439SRussell King	tristate "Touchscreen interface support"
709acb45439SRussell King	depends on MCP_UCB1200 && INPUT
710acb45439SRussell King
711a4e137abSRussell Kingendmenu
712