Kconfig 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571
  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 TWL6030_PWM
  164. tristate "TWL6030 PWM (Pulse Width Modulator) Support"
  165. depends on TWL4030_CORE
  166. select HAVE_PWM
  167. default n
  168. help
  169. Say yes here if you want support for TWL6030 PWM.
  170. This is used to control charging LED brightness.
  171. config MFD_STMPE
  172. bool "Support STMicroelectronics STMPE"
  173. depends on I2C=y && GENERIC_HARDIRQS
  174. select MFD_CORE
  175. help
  176. Support for the STMPE family of I/O Expanders from
  177. STMicroelectronics.
  178. Currently supported devices are:
  179. STMPE811: GPIO, Touchscreen
  180. STMPE1601: GPIO, Keypad
  181. STMPE2401: GPIO, Keypad
  182. STMPE2403: GPIO, Keypad
  183. This driver provides common support for accessing the device,
  184. additional drivers must be enabled in order to use the functionality
  185. of the device. Currently available sub drivers are:
  186. GPIO: stmpe-gpio
  187. Keypad: stmpe-keypad
  188. Touchscreen: stmpe-ts
  189. config MFD_TC35892
  190. bool "Support Toshiba TC35892"
  191. depends on I2C=y && GENERIC_HARDIRQS
  192. select MFD_CORE
  193. help
  194. Support for the Toshiba TC35892 I/O Expander.
  195. This driver provides common support for accessing the device,
  196. additional drivers must be enabled in order to use the
  197. functionality of the device.
  198. config MFD_TMIO
  199. bool
  200. default n
  201. config TMIO_MMC_DMA
  202. bool
  203. select DMA_ENGINE
  204. select DMADEVICES
  205. config MFD_T7L66XB
  206. bool "Support Toshiba T7L66XB"
  207. depends on ARM && HAVE_CLK
  208. select MFD_CORE
  209. select MFD_TMIO
  210. help
  211. Support for Toshiba Mobile IO Controller T7L66XB
  212. config MFD_TC6387XB
  213. bool "Support Toshiba TC6387XB"
  214. depends on ARM && HAVE_CLK
  215. select MFD_CORE
  216. select MFD_TMIO
  217. help
  218. Support for Toshiba Mobile IO Controller TC6387XB
  219. config MFD_TC6393XB
  220. bool "Support Toshiba TC6393XB"
  221. depends on GPIOLIB && ARM
  222. select MFD_CORE
  223. select MFD_TMIO
  224. help
  225. Support for Toshiba Mobile IO Controller TC6393XB
  226. config PMIC_DA903X
  227. bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
  228. depends on I2C=y
  229. help
  230. Say yes here to support for Dialog Semiconductor DA9030 (a.k.a
  231. ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
  232. usually found on PXA processors-based platforms. This includes
  233. the I2C driver and the core APIs _only_, you have to select
  234. individual components like LCD backlight, voltage regulators,
  235. LEDs and battery-charger under the corresponding menus.
  236. config PMIC_ADP5520
  237. bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
  238. depends on I2C=y
  239. help
  240. Say yes here to add support for Analog Devices AD5520 and ADP5501,
  241. Multifunction Power Management IC. This includes
  242. the I2C driver and the core APIs _only_, you have to select
  243. individual components like LCD backlight, LEDs, GPIOs and Kepad
  244. under the corresponding menus.
  245. config MFD_MAX8925
  246. bool "Maxim Semiconductor MAX8925 PMIC Support"
  247. depends on I2C=y && GENERIC_HARDIRQS
  248. select MFD_CORE
  249. help
  250. Say yes here to support for Maxim Semiconductor MAX8925. This is
  251. a Power Management IC. This driver provies common support for
  252. accessing the device, additional drivers must be enabled in order
  253. to use the functionality of the device.
  254. config MFD_WM8400
  255. tristate "Support Wolfson Microelectronics WM8400"
  256. select MFD_CORE
  257. depends on I2C
  258. help
  259. Support for the Wolfson Microelecronics WM8400 PMIC and audio
  260. CODEC. This driver provides common support for accessing
  261. the device, additional drivers must be enabled in order to use
  262. the functionality of the device.
  263. config MFD_WM831X
  264. bool "Support Wolfson Microelectronics WM831x/2x PMICs"
  265. select MFD_CORE
  266. depends on I2C=y && GENERIC_HARDIRQS
  267. help
  268. Support for the Wolfson Microelecronics WM831x and WM832x 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.
  272. config MFD_WM8350
  273. bool
  274. depends on GENERIC_HARDIRQS
  275. config MFD_WM8350_CONFIG_MODE_0
  276. bool
  277. depends on MFD_WM8350
  278. config MFD_WM8350_CONFIG_MODE_1
  279. bool
  280. depends on MFD_WM8350
  281. config MFD_WM8350_CONFIG_MODE_2
  282. bool
  283. depends on MFD_WM8350
  284. config MFD_WM8350_CONFIG_MODE_3
  285. bool
  286. depends on MFD_WM8350
  287. config MFD_WM8351_CONFIG_MODE_0
  288. bool
  289. depends on MFD_WM8350
  290. config MFD_WM8351_CONFIG_MODE_1
  291. bool
  292. depends on MFD_WM8350
  293. config MFD_WM8351_CONFIG_MODE_2
  294. bool
  295. depends on MFD_WM8350
  296. config MFD_WM8351_CONFIG_MODE_3
  297. bool
  298. depends on MFD_WM8350
  299. config MFD_WM8352_CONFIG_MODE_0
  300. bool
  301. depends on MFD_WM8350
  302. config MFD_WM8352_CONFIG_MODE_1
  303. bool
  304. depends on MFD_WM8350
  305. config MFD_WM8352_CONFIG_MODE_2
  306. bool
  307. depends on MFD_WM8350
  308. config MFD_WM8352_CONFIG_MODE_3
  309. bool
  310. depends on MFD_WM8350
  311. config MFD_WM8350_I2C
  312. bool "Support Wolfson Microelectronics WM8350 with I2C"
  313. select MFD_WM8350
  314. depends on I2C=y && GENERIC_HARDIRQS
  315. help
  316. The WM8350 is an integrated audio and power management
  317. subsystem with watchdog and RTC functionality for embedded
  318. systems. This option enables core support for the WM8350 with
  319. I2C as the control interface. Additional options must be
  320. selected to enable support for the functionality of the chip.
  321. config MFD_WM8994
  322. bool "Support Wolfson Microelectronics WM8994"
  323. select MFD_CORE
  324. depends on I2C=y && GENERIC_HARDIRQS
  325. help
  326. The WM8994 is a highly integrated hi-fi CODEC designed for
  327. smartphone applicatiosn. As well as audio functionality it
  328. has on board GPIO and regulator functionality which is
  329. supported via the relevant subsystems. This driver provides
  330. core support for the WM8994, in order to use the actual
  331. functionaltiy of the device other drivers must be enabled.
  332. config MFD_PCF50633
  333. tristate "Support for NXP PCF50633"
  334. depends on I2C
  335. help
  336. Say yes here if you have NXP PCF50633 chip on your board.
  337. This core driver provides register access and IRQ handling
  338. facilities, and registers devices for the various functions
  339. so that function-specific drivers can bind to them.
  340. config MFD_MC13783
  341. tristate "Support Freescale MC13783"
  342. depends on SPI_MASTER
  343. select MFD_CORE
  344. help
  345. Support for the Freescale (Atlas) MC13783 PMIC and audio CODEC.
  346. This driver provides common support for accessing the device,
  347. additional drivers must be enabled in order to use the
  348. functionality of the device.
  349. config PCF50633_ADC
  350. tristate "Support for NXP PCF50633 ADC"
  351. depends on MFD_PCF50633
  352. help
  353. Say yes here if you want to include support for ADC in the
  354. NXP PCF50633 chip.
  355. config PCF50633_GPIO
  356. tristate "Support for NXP PCF50633 GPIO"
  357. depends on MFD_PCF50633
  358. help
  359. Say yes here if you want to include support GPIO for pins on
  360. the PCF50633 chip.
  361. config ABX500_CORE
  362. bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions"
  363. default y if ARCH_U300
  364. help
  365. Say yes here if you have the ABX500 Mixed Signal IC family
  366. chips. This core driver expose register access functions.
  367. Functionality specific drivers using these functions can
  368. remain unchanged when IC changes. Binding of the functions to
  369. actual register access is done by the IC core driver.
  370. config AB3100_CORE
  371. bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
  372. depends on I2C=y && ABX500_CORE
  373. default y if ARCH_U300
  374. help
  375. Select this to enable the AB3100 Mixed Signal IC core
  376. functionality. This connects to a AB3100 on the I2C bus
  377. and expose a number of symbols needed for dependent devices
  378. to read and write registers and subscribe to events from
  379. this multi-functional IC. This is needed to use other features
  380. of the AB3100 such as battery-backed RTC, charging control,
  381. LEDs, vibrator, system power and temperature, power management
  382. and ALSA sound.
  383. config AB3100_OTP
  384. tristate "ST-Ericsson AB3100 OTP functions"
  385. depends on AB3100_CORE
  386. default y if AB3100_CORE
  387. help
  388. Select this to enable the AB3100 Mixed Signal IC OTP (one-time
  389. programmable memory) support. This exposes a sysfs file to read
  390. out OTP values.
  391. config EZX_PCAP
  392. bool "PCAP Support"
  393. depends on GENERIC_HARDIRQS && SPI_MASTER
  394. help
  395. This enables the PCAP ASIC present on EZX Phones. This is
  396. needed for MMC, TouchScreen, Sound, USB, etc..
  397. config AB8500_CORE
  398. bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
  399. depends on SPI=y && GENERIC_HARDIRQS
  400. select MFD_CORE
  401. help
  402. Select this option to enable access to AB8500 power management
  403. chip. This connects to U8500 on the SSP/SPI bus and exports
  404. read/write functions for the devices to get access to this chip.
  405. This chip embeds various other multimedia funtionalities as well.
  406. config AB3550_CORE
  407. bool "ST-Ericsson AB3550 Mixed Signal Circuit core functions"
  408. select MFD_CORE
  409. depends on I2C=y && GENERIC_HARDIRQS && ABX500_CORE
  410. help
  411. Select this to enable the AB3550 Mixed Signal IC core
  412. functionality. This connects to a AB3550 on the I2C bus
  413. and expose a number of symbols needed for dependent devices
  414. to read and write registers and subscribe to events from
  415. this multi-functional IC. This is needed to use other features
  416. of the AB3550 such as battery-backed RTC, charging control,
  417. LEDs, vibrator, system power and temperature, power management
  418. and ALSA sound.
  419. config MFD_TIMBERDALE
  420. tristate "Support for the Timberdale FPGA"
  421. select MFD_CORE
  422. depends on PCI && GPIOLIB
  423. ---help---
  424. This is the core driver for the timberdale FPGA. This device is a
  425. multifunction device which exposes numerous platform devices.
  426. The timberdale FPGA can be found on the Intel Atom development board
  427. for in-vehicle infontainment, called Russellville.
  428. config LPC_SCH
  429. tristate "Intel SCH LPC"
  430. depends on PCI
  431. select MFD_CORE
  432. help
  433. LPC bridge function of the Intel SCH provides support for
  434. System Management Bus and General Purpose I/O.
  435. config MFD_RDC321X
  436. tristate "Support for RDC-R321x southbridge"
  437. select MFD_CORE
  438. depends on PCI
  439. help
  440. Say yes here if you want to have support for the RDC R-321x SoC
  441. southbridge which provides access to GPIOs and Watchdog using the
  442. southbridge PCI device configuration space.
  443. config MFD_JANZ_CMODIO
  444. tristate "Support for Janz CMOD-IO PCI MODULbus Carrier Board"
  445. select MFD_CORE
  446. depends on PCI
  447. help
  448. This is the core driver for the Janz CMOD-IO PCI MODULbus
  449. carrier board. This device is a PCI to MODULbus bridge which may
  450. host many different types of MODULbus daughterboards, including
  451. CAN and GPIO controllers.
  452. config MFD_JZ4740_ADC
  453. tristate "Support for the JZ4740 SoC ADC core"
  454. select MFD_CORE
  455. depends on MACH_JZ4740
  456. help
  457. Say yes here if you want support for the ADC unit in the JZ4740 SoC.
  458. This driver is necessary for jz4740-battery and jz4740-hwmon driver.
  459. config MFD_TPS6586X
  460. tristate "TPS6586x Power Management chips"
  461. depends on I2C && GPIOLIB
  462. select MFD_CORE
  463. help
  464. If you say yes here you get support for the TPS6586X series of
  465. Power Management chips.
  466. This driver provides common support for accessing the device,
  467. additional drivers must be enabled in order to use the
  468. functionality of the device.
  469. This driver can also be built as a module. If so, the module
  470. will be called tps6586x.
  471. endif # MFD_SUPPORT
  472. menu "Multimedia Capabilities Port drivers"
  473. depends on ARCH_SA1100
  474. config MCP
  475. tristate
  476. # Interface drivers
  477. config MCP_SA11X0
  478. tristate "Support SA11x0 MCP interface"
  479. depends on ARCH_SA1100
  480. select MCP
  481. # Chip drivers
  482. config MCP_UCB1200
  483. tristate "Support for UCB1200 / UCB1300"
  484. depends on MCP
  485. config MCP_UCB1200_TS
  486. tristate "Touchscreen interface support"
  487. depends on MCP_UCB1200 && INPUT
  488. endmenu