Kconfig 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548
  1. #
  2. # Multifunction miscellaneous devices
  3. #
  4. menuconfig MFD_SUPPORT
  5. bool "Multifunction device drivers"
  6. depends on HAS_IOMEM
  7. default y
  8. help
  9. Multifunction devices embed several functions (e.g. GPIOs,
  10. touchscreens, keyboards, current regulators, power management chips,
  11. etc...) in one single integrated circuit. They usually talk to the
  12. main CPU through one or more IRQ lines and low speed data busses (SPI,
  13. I2C, etc..). They appear as one single device to the main system
  14. through the data bus and the MFD framework allows for sub devices
  15. (a.k.a. functions) to appear as discrete platform devices.
  16. MFDs are typically found on embedded platforms.
  17. This option alone does not add any kernel code.
  18. if MFD_SUPPORT
  19. config MFD_CORE
  20. tristate
  21. default n
  22. config MFD_88PM860X
  23. bool "Support Marvell 88PM8606/88PM8607"
  24. depends on I2C=y && GENERIC_HARDIRQS
  25. select MFD_CORE
  26. help
  27. This supports for Marvell 88PM8606/88PM8607 Power Management IC.
  28. This includes the I2C driver and the core APIs _only_, you have to
  29. select individual components like voltage regulators, RTC and
  30. battery-charger under the corresponding menus.
  31. config MFD_SM501
  32. tristate "Support for Silicon Motion SM501"
  33. ---help---
  34. This is the core driver for the Silicon Motion SM501 multimedia
  35. companion chip. This device is a multifunction device which may
  36. provide numerous interfaces including USB host controller, USB gadget,
  37. asynchronous serial ports, audio functions, and a dual display video
  38. interface. The device may be connected by PCI or local bus with
  39. varying functions enabled.
  40. config MFD_SM501_GPIO
  41. bool "Export GPIO via GPIO layer"
  42. depends on MFD_SM501 && GPIOLIB
  43. ---help---
  44. This option uses the gpio library layer to export the 64 GPIO
  45. lines on the SM501. The platform data is used to supply the
  46. base number for the first GPIO line to register.
  47. config MFD_ASIC3
  48. bool "Support for Compaq ASIC3"
  49. depends on GENERIC_HARDIRQS && GPIOLIB && ARM
  50. select MFD_CORE
  51. ---help---
  52. This driver supports the ASIC3 multifunction chip found on many
  53. PDAs (mainly iPAQ and HTC based ones)
  54. config MFD_SH_MOBILE_SDHI
  55. bool "Support for SuperH Mobile SDHI"
  56. depends on SUPERH || ARCH_SHMOBILE
  57. select MFD_CORE
  58. select TMIO_MMC_DMA
  59. ---help---
  60. This driver supports the SDHI hardware block found in many
  61. SuperH Mobile SoCs.
  62. config MFD_DAVINCI_VOICECODEC
  63. tristate
  64. select MFD_CORE
  65. config MFD_DM355EVM_MSP
  66. bool "DaVinci DM355 EVM microcontroller"
  67. depends on I2C && MACH_DAVINCI_DM355_EVM
  68. help
  69. This driver supports the MSP430 microcontroller used on these
  70. boards. MSP430 firmware manages resets and power sequencing,
  71. inputs from buttons and the IR remote, LEDs, an RTC, and more.
  72. config HTC_EGPIO
  73. bool "HTC EGPIO support"
  74. depends on GENERIC_HARDIRQS && GPIOLIB && ARM
  75. help
  76. This driver supports the CPLD egpio chip present on
  77. several HTC phones. It provides basic support for input
  78. pins, output pins, and irqs.
  79. config HTC_PASIC3
  80. tristate "HTC PASIC3 LED/DS1WM chip support"
  81. select MFD_CORE
  82. help
  83. This core driver provides register access for the LED/DS1WM
  84. chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
  85. HTC Magician devices, respectively. Actual functionality is
  86. handled by the leds-pasic3 and ds1wm drivers.
  87. config HTC_I2CPLD
  88. bool "HTC I2C PLD chip support"
  89. depends on I2C=y && GPIOLIB
  90. help
  91. If you say yes here you get support for the supposed CPLD
  92. found on omap850 HTC devices like the HTC Wizard and HTC Herald.
  93. This device provides input and output GPIOs through an I2C
  94. interface to one or more sub-chips.
  95. config UCB1400_CORE
  96. tristate "Philips UCB1400 Core driver"
  97. depends on AC97_BUS
  98. depends on GPIOLIB
  99. help
  100. This enables support for the Philips UCB1400 core functions.
  101. The UCB1400 is an AC97 audio codec.
  102. To compile this driver as a module, choose M here: the
  103. module will be called ucb1400_core.
  104. config TPS65010
  105. tristate "TPS6501x Power Management chips"
  106. depends on I2C && GPIOLIB
  107. default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
  108. help
  109. If you say yes here you get support for the TPS6501x series of
  110. Power Management chips. These include voltage regulators,
  111. lithium ion/polymer battery charging, and other features that
  112. are often used in portable devices like cell phones and cameras.
  113. This driver can also be built as a module. If so, the module
  114. will be called tps65010.
  115. config TPS6507X
  116. tristate "TPS6507x Power Management / Touch Screen chips"
  117. select MFD_CORE
  118. depends on I2C
  119. help
  120. If you say yes here you get support for the TPS6507x series of
  121. Power Management / Touch Screen chips. These include voltage
  122. regulators, lithium ion/polymer battery charging, touch screen
  123. and other features that are often used in portable devices.
  124. This driver can also be built as a module. If so, the module
  125. will be called tps6507x.
  126. config MENELAUS
  127. bool "Texas Instruments TWL92330/Menelaus PM chip"
  128. depends on I2C=y && ARCH_OMAP2
  129. help
  130. If you say yes here you get support for the Texas Instruments
  131. TWL92330/Menelaus Power Management chip. This include voltage
  132. regulators, Dual slot memory card transceivers, real-time clock
  133. and other features that are often used in portable devices like
  134. cell phones and PDAs.
  135. config TWL4030_CORE
  136. bool "Texas Instruments TWL4030/TWL5030/TWL6030/TPS659x0 Support"
  137. depends on I2C=y && GENERIC_HARDIRQS
  138. help
  139. Say yes here if you have TWL4030 / TWL6030 family chip on your board.
  140. This core driver provides register access and IRQ handling
  141. facilities, and registers devices for the various functions
  142. so that function-specific drivers can bind to them.
  143. These multi-function chips are found on many OMAP2 and OMAP3
  144. boards, providing power management, RTC, GPIO, keypad, a
  145. high speed USB OTG transceiver, an audio codec (on most
  146. versions) and many other features.
  147. config TWL4030_POWER
  148. bool "Support power resources on TWL4030 family chips"
  149. depends on TWL4030_CORE && ARM
  150. help
  151. Say yes here if you want to use the power resources on the
  152. TWL4030 family chips. Most of these resources are regulators,
  153. which have a separate driver; some are control signals, such
  154. as clock request handshaking.
  155. This driver uses board-specific data to initialize the resources
  156. and load scripts controling which resources are switched off/on
  157. or reset when a sleep, wakeup or warm reset event occurs.
  158. config TWL4030_CODEC
  159. bool
  160. depends on TWL4030_CORE
  161. select MFD_CORE
  162. default n
  163. config MFD_STMPE
  164. bool "Support STMicroelectronics STMPE"
  165. depends on I2C=y && GENERIC_HARDIRQS
  166. select MFD_CORE
  167. help
  168. Support for the STMPE family of I/O Expanders from
  169. STMicroelectronics.
  170. Currently supported devices are:
  171. STMPE811: GPIO, Touchscreen
  172. STMPE1601: GPIO, Keypad
  173. STMPE2401: GPIO, Keypad
  174. STMPE2403: GPIO, Keypad
  175. This driver provides common support for accessing the device,
  176. additional drivers must be enabled in order to use the functionality
  177. of the device. Currently available sub drivers are:
  178. GPIO: stmpe-gpio
  179. Keypad: stmpe-keypad
  180. Touchscreen: stmpe-ts
  181. config MFD_TC35892
  182. bool "Support Toshiba TC35892"
  183. depends on I2C=y && GENERIC_HARDIRQS
  184. select MFD_CORE
  185. help
  186. Support for the Toshiba TC35892 I/O Expander.
  187. This driver provides common support for accessing the device,
  188. additional drivers must be enabled in order to use the
  189. functionality of the device.
  190. config MFD_TMIO
  191. bool
  192. default n
  193. config TMIO_MMC_DMA
  194. bool
  195. select DMA_ENGINE
  196. select DMADEVICES
  197. config MFD_T7L66XB
  198. bool "Support Toshiba T7L66XB"
  199. depends on ARM && HAVE_CLK
  200. select MFD_CORE
  201. select MFD_TMIO
  202. help
  203. Support for Toshiba Mobile IO Controller T7L66XB
  204. config MFD_TC6387XB
  205. bool "Support Toshiba TC6387XB"
  206. depends on ARM && HAVE_CLK
  207. select MFD_CORE
  208. select MFD_TMIO
  209. help
  210. Support for Toshiba Mobile IO Controller TC6387XB
  211. config MFD_TC6393XB
  212. bool "Support Toshiba TC6393XB"
  213. depends on GPIOLIB && ARM
  214. select MFD_CORE
  215. select MFD_TMIO
  216. help
  217. Support for Toshiba Mobile IO Controller TC6393XB
  218. config PMIC_DA903X
  219. bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
  220. depends on I2C=y
  221. help
  222. Say yes here to support for Dialog Semiconductor DA9030 (a.k.a
  223. ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
  224. usually found on PXA processors-based platforms. This includes
  225. the I2C driver and the core APIs _only_, you have to select
  226. individual components like LCD backlight, voltage regulators,
  227. LEDs and battery-charger under the corresponding menus.
  228. config PMIC_ADP5520
  229. bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
  230. depends on I2C=y
  231. help
  232. Say yes here to add support for Analog Devices AD5520 and ADP5501,
  233. Multifunction Power Management IC. This includes
  234. the I2C driver and the core APIs _only_, you have to select
  235. individual components like LCD backlight, LEDs, GPIOs and Kepad
  236. under the corresponding menus.
  237. config MFD_MAX8925
  238. bool "Maxim Semiconductor MAX8925 PMIC Support"
  239. depends on I2C=y && GENERIC_HARDIRQS
  240. select MFD_CORE
  241. help
  242. Say yes here to support for Maxim Semiconductor MAX8925. This is
  243. a Power Management IC. This driver provies common support for
  244. accessing the device, additional drivers must be enabled in order
  245. to use the functionality of the device.
  246. config MFD_WM8400
  247. tristate "Support Wolfson Microelectronics WM8400"
  248. select MFD_CORE
  249. depends on I2C
  250. help
  251. Support for the Wolfson Microelecronics WM8400 PMIC and audio
  252. CODEC. This driver provides common support for accessing
  253. the device, additional drivers must be enabled in order to use
  254. the functionality of the device.
  255. config MFD_WM831X
  256. bool "Support Wolfson Microelectronics WM831x/2x PMICs"
  257. select MFD_CORE
  258. depends on I2C=y && GENERIC_HARDIRQS
  259. help
  260. Support for the Wolfson Microelecronics WM831x and WM832x PMICs.
  261. This driver provides common support for accessing the device,
  262. additional drivers must be enabled in order to use the
  263. functionality of the device.
  264. config MFD_WM8350
  265. bool
  266. depends on GENERIC_HARDIRQS
  267. config MFD_WM8350_CONFIG_MODE_0
  268. bool
  269. depends on MFD_WM8350
  270. config MFD_WM8350_CONFIG_MODE_1
  271. bool
  272. depends on MFD_WM8350
  273. config MFD_WM8350_CONFIG_MODE_2
  274. bool
  275. depends on MFD_WM8350
  276. config MFD_WM8350_CONFIG_MODE_3
  277. bool
  278. depends on MFD_WM8350
  279. config MFD_WM8351_CONFIG_MODE_0
  280. bool
  281. depends on MFD_WM8350
  282. config MFD_WM8351_CONFIG_MODE_1
  283. bool
  284. depends on MFD_WM8350
  285. config MFD_WM8351_CONFIG_MODE_2
  286. bool
  287. depends on MFD_WM8350
  288. config MFD_WM8351_CONFIG_MODE_3
  289. bool
  290. depends on MFD_WM8350
  291. config MFD_WM8352_CONFIG_MODE_0
  292. bool
  293. depends on MFD_WM8350
  294. config MFD_WM8352_CONFIG_MODE_1
  295. bool
  296. depends on MFD_WM8350
  297. config MFD_WM8352_CONFIG_MODE_2
  298. bool
  299. depends on MFD_WM8350
  300. config MFD_WM8352_CONFIG_MODE_3
  301. bool
  302. depends on MFD_WM8350
  303. config MFD_WM8350_I2C
  304. bool "Support Wolfson Microelectronics WM8350 with I2C"
  305. select MFD_WM8350
  306. depends on I2C=y && GENERIC_HARDIRQS
  307. help
  308. The WM8350 is an integrated audio and power management
  309. subsystem with watchdog and RTC functionality for embedded
  310. systems. This option enables core support for the WM8350 with
  311. I2C as the control interface. Additional options must be
  312. selected to enable support for the functionality of the chip.
  313. config MFD_WM8994
  314. bool "Support Wolfson Microelectronics WM8994"
  315. select MFD_CORE
  316. depends on I2C=y && GENERIC_HARDIRQS
  317. help
  318. The WM8994 is a highly integrated hi-fi CODEC designed for
  319. smartphone applicatiosn. As well as audio functionality it
  320. has on board GPIO and regulator functionality which is
  321. supported via the relevant subsystems. This driver provides
  322. core support for the WM8994, in order to use the actual
  323. functionaltiy of the device other drivers must be enabled.
  324. config MFD_PCF50633
  325. tristate "Support for NXP PCF50633"
  326. depends on I2C
  327. help
  328. Say yes here if you have NXP PCF50633 chip on your board.
  329. This core driver provides register access and IRQ handling
  330. facilities, and registers devices for the various functions
  331. so that function-specific drivers can bind to them.
  332. config MFD_MC13783
  333. tristate "Support Freescale MC13783"
  334. depends on SPI_MASTER
  335. select MFD_CORE
  336. help
  337. Support for the Freescale (Atlas) MC13783 PMIC and audio CODEC.
  338. This driver provides common support for accessing the device,
  339. additional drivers must be enabled in order to use the
  340. functionality of the device.
  341. config PCF50633_ADC
  342. tristate "Support for NXP PCF50633 ADC"
  343. depends on MFD_PCF50633
  344. help
  345. Say yes here if you want to include support for ADC in the
  346. NXP PCF50633 chip.
  347. config PCF50633_GPIO
  348. tristate "Support for NXP PCF50633 GPIO"
  349. depends on MFD_PCF50633
  350. help
  351. Say yes here if you want to include support GPIO for pins on
  352. the PCF50633 chip.
  353. config ABX500_CORE
  354. bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions"
  355. default y if ARCH_U300
  356. help
  357. Say yes here if you have the ABX500 Mixed Signal IC family
  358. chips. This core driver expose register access functions.
  359. Functionality specific drivers using these functions can
  360. remain unchanged when IC changes. Binding of the functions to
  361. actual register access is done by the IC core driver.
  362. config AB3100_CORE
  363. bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
  364. depends on I2C=y && ABX500_CORE
  365. default y if ARCH_U300
  366. help
  367. Select this to enable the AB3100 Mixed Signal IC core
  368. functionality. This connects to a AB3100 on the I2C bus
  369. and expose a number of symbols needed for dependent devices
  370. to read and write registers and subscribe to events from
  371. this multi-functional IC. This is needed to use other features
  372. of the AB3100 such as battery-backed RTC, charging control,
  373. LEDs, vibrator, system power and temperature, power management
  374. and ALSA sound.
  375. config AB3100_OTP
  376. tristate "ST-Ericsson AB3100 OTP functions"
  377. depends on AB3100_CORE
  378. default y if AB3100_CORE
  379. help
  380. Select this to enable the AB3100 Mixed Signal IC OTP (one-time
  381. programmable memory) support. This exposes a sysfs file to read
  382. out OTP values.
  383. config EZX_PCAP
  384. bool "PCAP Support"
  385. depends on GENERIC_HARDIRQS && SPI_MASTER
  386. help
  387. This enables the PCAP ASIC present on EZX Phones. This is
  388. needed for MMC, TouchScreen, Sound, USB, etc..
  389. config AB8500_CORE
  390. bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
  391. depends on SPI=y && GENERIC_HARDIRQS
  392. select MFD_CORE
  393. help
  394. Select this option to enable access to AB8500 power management
  395. chip. This connects to U8500 on the SSP/SPI bus and exports
  396. read/write functions for the devices to get access to this chip.
  397. This chip embeds various other multimedia funtionalities as well.
  398. config AB3550_CORE
  399. bool "ST-Ericsson AB3550 Mixed Signal Circuit core functions"
  400. select MFD_CORE
  401. depends on I2C=y && GENERIC_HARDIRQS && ABX500_CORE
  402. help
  403. Select this to enable the AB3550 Mixed Signal IC core
  404. functionality. This connects to a AB3550 on the I2C bus
  405. and expose a number of symbols needed for dependent devices
  406. to read and write registers and subscribe to events from
  407. this multi-functional IC. This is needed to use other features
  408. of the AB3550 such as battery-backed RTC, charging control,
  409. LEDs, vibrator, system power and temperature, power management
  410. and ALSA sound.
  411. config MFD_TIMBERDALE
  412. tristate "Support for the Timberdale FPGA"
  413. select MFD_CORE
  414. depends on PCI && GPIOLIB
  415. ---help---
  416. This is the core driver for the timberdale FPGA. This device is a
  417. multifunction device which exposes numerous platform devices.
  418. The timberdale FPGA can be found on the Intel Atom development board
  419. for in-vehicle infontainment, called Russellville.
  420. config LPC_SCH
  421. tristate "Intel SCH LPC"
  422. depends on PCI
  423. select MFD_CORE
  424. help
  425. LPC bridge function of the Intel SCH provides support for
  426. System Management Bus and General Purpose I/O.
  427. config MFD_RDC321X
  428. tristate "Support for RDC-R321x southbridge"
  429. select MFD_CORE
  430. depends on PCI
  431. help
  432. Say yes here if you want to have support for the RDC R-321x SoC
  433. southbridge which provides access to GPIOs and Watchdog using the
  434. southbridge PCI device configuration space.
  435. config MFD_JANZ_CMODIO
  436. tristate "Support for Janz CMOD-IO PCI MODULbus Carrier Board"
  437. select MFD_CORE
  438. depends on PCI
  439. help
  440. This is the core driver for the Janz CMOD-IO PCI MODULbus
  441. carrier board. This device is a PCI to MODULbus bridge which may
  442. host many different types of MODULbus daughterboards, including
  443. CAN and GPIO controllers.
  444. config MFD_JZ4740_ADC
  445. tristate "Support for the JZ4740 SoC ADC core"
  446. select MFD_CORE
  447. depends on MACH_JZ4740
  448. help
  449. Say yes here if you want support for the ADC unit in the JZ4740 SoC.
  450. This driver is necessary for jz4740-battery and jz4740-hwmon driver.
  451. endif # MFD_SUPPORT
  452. menu "Multimedia Capabilities Port drivers"
  453. depends on ARCH_SA1100
  454. config MCP
  455. tristate
  456. # Interface drivers
  457. config MCP_SA11X0
  458. tristate "Support SA11x0 MCP interface"
  459. depends on ARCH_SA1100
  460. select MCP
  461. # Chip drivers
  462. config MCP_UCB1200
  463. tristate "Support for UCB1200 / UCB1300"
  464. depends on MCP
  465. config MCP_UCB1200_TS
  466. tristate "Touchscreen interface support"
  467. depends on MCP_UCB1200 && INPUT
  468. endmenu