Kconfig 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179
  1. #
  2. # Multifunction miscellaneous devices
  3. #
  4. if HAS_IOMEM
  5. menu "Multifunction device drivers"
  6. config MFD_CORE
  7. tristate
  8. select IRQ_DOMAIN
  9. default n
  10. config MFD_CS5535
  11. tristate "AMD CS5535 and CS5536 southbridge core functions"
  12. select MFD_CORE
  13. depends on PCI && X86
  14. ---help---
  15. This is the core driver for CS5535/CS5536 MFD functions. This is
  16. necessary for using the board's GPIO and MFGPT functionality.
  17. config MFD_AS3711
  18. bool "AMS AS3711"
  19. select MFD_CORE
  20. select REGMAP_I2C
  21. select REGMAP_IRQ
  22. depends on I2C=y && GENERIC_HARDIRQS
  23. help
  24. Support for the AS3711 PMIC from AMS
  25. config PMIC_ADP5520
  26. bool "Analog Devices ADP5520/01 MFD PMIC Core Support"
  27. depends on I2C=y
  28. help
  29. Say yes here to add support for Analog Devices AD5520 and ADP5501,
  30. Multifunction Power Management IC. This includes
  31. the I2C driver and the core APIs _only_, you have to select
  32. individual components like LCD backlight, LEDs, GPIOs and Kepad
  33. under the corresponding menus.
  34. config MFD_AAT2870_CORE
  35. bool "AnalogicTech AAT2870"
  36. select MFD_CORE
  37. depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS
  38. help
  39. If you say yes here you get support for the AAT2870.
  40. This driver provides common support for accessing the device,
  41. additional drivers must be enabled in order to use the
  42. functionality of the device.
  43. config MFD_CROS_EC
  44. tristate "ChromeOS Embedded Controller"
  45. select MFD_CORE
  46. help
  47. If you say Y here you get support for the ChromeOS Embedded
  48. Controller (EC) providing keyboard, battery and power services.
  49. You also need to enable the driver for the bus you are using. The
  50. protocol for talking to the EC is defined by the bus driver.
  51. config MFD_CROS_EC_I2C
  52. tristate "ChromeOS Embedded Controller (I2C)"
  53. depends on MFD_CROS_EC && I2C
  54. help
  55. If you say Y here, you get support for talking to the ChromeOS
  56. EC through an I2C bus. This uses a simple byte-level protocol with
  57. a checksum. Failing accesses will be retried three times to
  58. improve reliability.
  59. config MFD_CROS_EC_SPI
  60. tristate "ChromeOS Embedded Controller (SPI)"
  61. depends on MFD_CROS_EC && SPI
  62. ---help---
  63. If you say Y here, you get support for talking to the ChromeOS EC
  64. through a SPI bus, using a byte-level protocol. Since the EC's
  65. response time cannot be guaranteed, we support ignoring
  66. 'pre-amble' bytes before the response actually starts.
  67. config MFD_ASIC3
  68. bool "Compaq ASIC3"
  69. depends on GENERIC_HARDIRQS && GPIOLIB && ARM
  70. select MFD_CORE
  71. ---help---
  72. This driver supports the ASIC3 multifunction chip found on many
  73. PDAs (mainly iPAQ and HTC based ones)
  74. config PMIC_DA903X
  75. bool "Dialog Semiconductor DA9030/DA9034 PMIC Support"
  76. depends on I2C=y
  77. help
  78. Say yes here to support for Dialog Semiconductor DA9030 (a.k.a
  79. ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC
  80. usually found on PXA processors-based platforms. This includes
  81. the I2C driver and the core APIs _only_, you have to select
  82. individual components like LCD backlight, voltage regulators,
  83. LEDs and battery-charger under the corresponding menus.
  84. config PMIC_DA9052
  85. bool
  86. select MFD_CORE
  87. config MFD_DA9052_SPI
  88. bool "Dialog Semiconductor DA9052/53 PMIC variants with SPI"
  89. select REGMAP_SPI
  90. select REGMAP_IRQ
  91. select PMIC_DA9052
  92. depends on SPI_MASTER=y && GENERIC_HARDIRQS
  93. help
  94. Support for the Dialog Semiconductor DA9052 PMIC
  95. when controlled using SPI. This driver provides common support
  96. for accessing the device, additional drivers must be enabled in
  97. order to use the functionality of the device.
  98. config MFD_DA9052_I2C
  99. bool "Dialog Semiconductor DA9052/53 PMIC variants with I2C"
  100. select REGMAP_I2C
  101. select REGMAP_IRQ
  102. select PMIC_DA9052
  103. depends on I2C=y && GENERIC_HARDIRQS
  104. help
  105. Support for the Dialog Semiconductor DA9052 PMIC
  106. when controlled using I2C. This driver provides common support
  107. for accessing the device, additional drivers must be enabled in
  108. order to use the functionality of the device.
  109. config MFD_DA9055
  110. bool "Dialog Semiconductor DA9055 PMIC Support"
  111. select REGMAP_I2C
  112. select REGMAP_IRQ
  113. select MFD_CORE
  114. depends on I2C=y && GENERIC_HARDIRQS
  115. help
  116. Say yes here for support of Dialog Semiconductor DA9055. This is
  117. a Power Management IC. This driver provides common support for
  118. accessing the device as well as the I2C interface to the chip itself.
  119. Additional drivers must be enabled in order to use the functionality
  120. of the device.
  121. This driver can be built as a module. If built as a module it will be
  122. called "da9055"
  123. config MFD_MC13783
  124. tristate
  125. config MFD_MC13XXX
  126. tristate
  127. depends on (SPI_MASTER || I2C) && GENERIC_HARDIRQS
  128. select MFD_CORE
  129. select MFD_MC13783
  130. help
  131. Enable support for the Freescale MC13783 and MC13892 PMICs.
  132. This driver provides common support for accessing the device,
  133. additional drivers must be enabled in order to use the
  134. functionality of the device.
  135. config MFD_MC13XXX_SPI
  136. tristate "Freescale MC13783 and MC13892 SPI interface"
  137. depends on SPI_MASTER && GENERIC_HARDIRQS
  138. select REGMAP_SPI
  139. select MFD_MC13XXX
  140. help
  141. Select this if your MC13xxx is connected via an SPI bus.
  142. config MFD_MC13XXX_I2C
  143. tristate "Freescale MC13892 I2C interface"
  144. depends on I2C && GENERIC_HARDIRQS
  145. select REGMAP_I2C
  146. select MFD_MC13XXX
  147. help
  148. Select this if your MC13xxx is connected via an I2C bus.
  149. config HTC_EGPIO
  150. bool "HTC EGPIO support"
  151. depends on GENERIC_HARDIRQS && GPIOLIB && ARM
  152. help
  153. This driver supports the CPLD egpio chip present on
  154. several HTC phones. It provides basic support for input
  155. pins, output pins, and irqs.
  156. config HTC_PASIC3
  157. tristate "HTC PASIC3 LED/DS1WM chip support"
  158. select MFD_CORE
  159. depends on GENERIC_HARDIRQS
  160. help
  161. This core driver provides register access for the LED/DS1WM
  162. chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
  163. HTC Magician devices, respectively. Actual functionality is
  164. handled by the leds-pasic3 and ds1wm drivers.
  165. config HTC_I2CPLD
  166. bool "HTC I2C PLD chip support"
  167. depends on I2C=y && GPIOLIB
  168. help
  169. If you say yes here you get support for the supposed CPLD
  170. found on omap850 HTC devices like the HTC Wizard and HTC Herald.
  171. This device provides input and output GPIOs through an I2C
  172. interface to one or more sub-chips.
  173. config LPC_ICH
  174. tristate "Intel ICH LPC"
  175. depends on PCI && GENERIC_HARDIRQS
  176. select MFD_CORE
  177. help
  178. The LPC bridge function of the Intel ICH provides support for
  179. many functional units. This driver provides needed support for
  180. other drivers to control these functions, currently GPIO and
  181. watchdog.
  182. config LPC_SCH
  183. tristate "Intel SCH LPC"
  184. depends on PCI && GENERIC_HARDIRQS
  185. select MFD_CORE
  186. help
  187. LPC bridge function of the Intel SCH provides support for
  188. System Management Bus and General Purpose I/O.
  189. config MFD_INTEL_MSIC
  190. bool "Intel MSIC"
  191. depends on INTEL_SCU_IPC
  192. select MFD_CORE
  193. help
  194. Select this option to enable access to Intel MSIC (Avatele
  195. Passage) chip. This chip embeds audio, battery, GPIO, etc.
  196. devices used in Intel Medfield platforms.
  197. config MFD_JANZ_CMODIO
  198. tristate "Janz CMOD-IO PCI MODULbus Carrier Board"
  199. select MFD_CORE
  200. depends on PCI && GENERIC_HARDIRQS
  201. help
  202. This is the core driver for the Janz CMOD-IO PCI MODULbus
  203. carrier board. This device is a PCI to MODULbus bridge which may
  204. host many different types of MODULbus daughterboards, including
  205. CAN and GPIO controllers.
  206. config MFD_JZ4740_ADC
  207. bool "Janz JZ4740 ADC core"
  208. select MFD_CORE
  209. select GENERIC_IRQ_CHIP
  210. depends on MACH_JZ4740
  211. help
  212. Say yes here if you want support for the ADC unit in the JZ4740 SoC.
  213. This driver is necessary for jz4740-battery and jz4740-hwmon driver.
  214. config MFD_KEMPLD
  215. tristate "Kontron module PLD device"
  216. select MFD_CORE
  217. help
  218. This is the core driver for the PLD (Programmable Logic Device) found
  219. on some Kontron ETX and COMexpress (ETXexpress) modules. The PLD
  220. device may provide functions like watchdog, GPIO, UART and I2C bus.
  221. The following modules are supported:
  222. * COMe-bIP#
  223. * COMe-bPC2 (ETXexpress-PC)
  224. * COMe-bSC# (ETXexpress-SC T#)
  225. * COMe-cCT6
  226. * COMe-cDC2 (microETXexpress-DC)
  227. * COMe-cPC2 (microETXexpress-PC)
  228. * COMe-mCT10
  229. * ETX-OH
  230. This driver can also be built as a module. If so, the module
  231. will be called kempld-core.
  232. config MFD_88PM800
  233. tristate "Marvell 88PM800"
  234. depends on I2C=y && GENERIC_HARDIRQS
  235. select REGMAP_I2C
  236. select REGMAP_IRQ
  237. select MFD_CORE
  238. help
  239. This supports for Marvell 88PM800 Power Management IC.
  240. This includes the I2C driver and the core APIs _only_, you have to
  241. select individual components like voltage regulators, RTC and
  242. battery-charger under the corresponding menus.
  243. config MFD_88PM805
  244. tristate "Marvell 88PM805"
  245. depends on I2C=y && GENERIC_HARDIRQS
  246. select REGMAP_I2C
  247. select REGMAP_IRQ
  248. select MFD_CORE
  249. help
  250. This supports for Marvell 88PM805 Power Management IC. This includes
  251. the I2C driver and the core APIs _only_, you have to select individual
  252. components like codec device, headset/Mic device under the
  253. corresponding menus.
  254. config MFD_88PM860X
  255. bool "Marvell 88PM8606/88PM8607"
  256. depends on I2C=y && GENERIC_HARDIRQS
  257. select REGMAP_I2C
  258. select MFD_CORE
  259. help
  260. This supports for Marvell 88PM8606/88PM8607 Power Management IC.
  261. This includes the I2C driver and the core APIs _only_, you have to
  262. select individual components like voltage regulators, RTC and
  263. battery-charger under the corresponding menus.
  264. config MFD_MAX77686
  265. bool "Maxim Semiconductor MAX77686 PMIC Support"
  266. depends on I2C=y && GENERIC_HARDIRQS
  267. select MFD_CORE
  268. select REGMAP_I2C
  269. select IRQ_DOMAIN
  270. help
  271. Say yes here to support for Maxim Semiconductor MAX77686.
  272. This is a Power Management IC with RTC on chip.
  273. This driver provides common support for accessing the device;
  274. additional drivers must be enabled in order to use the functionality
  275. of the device.
  276. config MFD_MAX77693
  277. bool "Maxim Semiconductor MAX77693 PMIC Support"
  278. depends on I2C=y && GENERIC_HARDIRQS
  279. select MFD_CORE
  280. select REGMAP_I2C
  281. help
  282. Say yes here to support for Maxim Semiconductor MAX77693.
  283. This is a companion Power Management IC with Flash, Haptic, Charger,
  284. and MUIC(Micro USB Interface Controller) controls on chip.
  285. This driver provides common support for accessing the device;
  286. additional drivers must be enabled in order to use the functionality
  287. of the device.
  288. config MFD_MAX8907
  289. tristate "Maxim Semiconductor MAX8907 PMIC Support"
  290. select MFD_CORE
  291. depends on I2C=y && GENERIC_HARDIRQS
  292. select REGMAP_I2C
  293. select REGMAP_IRQ
  294. help
  295. Say yes here to support for Maxim Semiconductor MAX8907. This is
  296. a Power Management IC. This driver provides common support for
  297. accessing the device; additional drivers must be enabled in order
  298. to use the functionality of the device.
  299. config MFD_MAX8925
  300. bool "Maxim Semiconductor MAX8925 PMIC Support"
  301. depends on I2C=y && GENERIC_HARDIRQS
  302. select MFD_CORE
  303. help
  304. Say yes here to support for Maxim Semiconductor MAX8925. This is
  305. a Power Management IC. This driver provides common support for
  306. accessing the device, additional drivers must be enabled in order
  307. to use the functionality of the device.
  308. config MFD_MAX8997
  309. bool "Maxim Semiconductor MAX8997/8966 PMIC Support"
  310. depends on I2C=y && GENERIC_HARDIRQS
  311. select MFD_CORE
  312. select IRQ_DOMAIN
  313. help
  314. Say yes here to support for Maxim Semiconductor MAX8997/8966.
  315. This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic,
  316. MUIC controls on chip.
  317. This driver provides common support for accessing the device;
  318. additional drivers must be enabled in order to use the functionality
  319. of the device.
  320. config MFD_MAX8998
  321. bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support"
  322. depends on I2C=y && GENERIC_HARDIRQS
  323. select MFD_CORE
  324. help
  325. Say yes here to support for Maxim Semiconductor MAX8998 and
  326. National Semiconductor LP3974. This is a Power Management IC.
  327. This driver provides common support for accessing the device,
  328. additional drivers must be enabled in order to use the functionality
  329. of the device.
  330. config EZX_PCAP
  331. bool "Motorola EZXPCAP Support"
  332. depends on GENERIC_HARDIRQS && SPI_MASTER
  333. help
  334. This enables the PCAP ASIC present on EZX Phones. This is
  335. needed for MMC, TouchScreen, Sound, USB, etc..
  336. config MFD_VIPERBOARD
  337. tristate "Nano River Technologies Viperboard"
  338. select MFD_CORE
  339. depends on USB && GENERIC_HARDIRQS
  340. default n
  341. help
  342. Say yes here if you want support for Nano River Technologies
  343. Viperboard.
  344. There are mfd cell drivers available for i2c master, adc and
  345. both gpios found on the board. The spi part does not yet
  346. have a driver.
  347. You need to select the mfd cell drivers separately.
  348. The drivers do not support all features the board exposes.
  349. config MFD_RETU
  350. tristate "Nokia Retu and Tahvo multi-function device"
  351. select MFD_CORE
  352. depends on I2C && GENERIC_HARDIRQS
  353. select REGMAP_IRQ
  354. help
  355. Retu and Tahvo are a multi-function devices found on Nokia
  356. Internet Tablets (770, N800 and N810).
  357. config MFD_PCF50633
  358. tristate "NXP PCF50633"
  359. depends on I2C
  360. select REGMAP_I2C
  361. help
  362. Say yes here if you have NXP PCF50633 chip on your board.
  363. This core driver provides register access and IRQ handling
  364. facilities, and registers devices for the various functions
  365. so that function-specific drivers can bind to them.
  366. config PCF50633_ADC
  367. tristate "NXP PCF50633 ADC"
  368. depends on MFD_PCF50633
  369. help
  370. Say yes here if you want to include support for ADC in the
  371. NXP PCF50633 chip.
  372. config PCF50633_GPIO
  373. tristate "NXP PCF50633 GPIO"
  374. depends on MFD_PCF50633
  375. help
  376. Say yes here if you want to include support GPIO for pins on
  377. the PCF50633 chip.
  378. config UCB1400_CORE
  379. tristate "Philips UCB1400 Core driver"
  380. depends on AC97_BUS
  381. depends on GPIOLIB
  382. help
  383. This enables support for the Philips UCB1400 core functions.
  384. The UCB1400 is an AC97 audio codec.
  385. To compile this driver as a module, choose M here: the
  386. module will be called ucb1400_core.
  387. config MFD_PM8XXX
  388. tristate
  389. config MFD_PM8921_CORE
  390. tristate "Qualcomm PM8921 PMIC chip"
  391. depends on (ARCH_MSM || HEXAGON)
  392. depends on BROKEN
  393. select MFD_CORE
  394. select MFD_PM8XXX
  395. help
  396. If you say yes to this option, support will be included for the
  397. built-in PM8921 PMIC chip.
  398. This is required if your board has a PM8921 and uses its features,
  399. such as: MPPs, GPIOs, regulators, interrupts, and PWM.
  400. Say M here if you want to include support for PM8921 chip as a module.
  401. This will build a module called "pm8921-core".
  402. config MFD_PM8XXX_IRQ
  403. bool "Qualcomm PM8xxx IRQ features"
  404. depends on MFD_PM8XXX
  405. default y if MFD_PM8XXX
  406. help
  407. This is the IRQ driver for Qualcomm PM 8xxx PMIC chips.
  408. This is required to use certain other PM 8xxx features, such as GPIO
  409. and MPP.
  410. config MFD_RDC321X
  411. tristate "RDC R-321x southbridge"
  412. select MFD_CORE
  413. depends on PCI && GENERIC_HARDIRQS
  414. help
  415. Say yes here if you want to have support for the RDC R-321x SoC
  416. southbridge which provides access to GPIOs and Watchdog using the
  417. southbridge PCI device configuration space.
  418. config MFD_RTSX_PCI
  419. tristate "Realtek PCI-E card reader"
  420. depends on PCI && GENERIC_HARDIRQS
  421. select MFD_CORE
  422. help
  423. This supports for Realtek PCI-Express card reader including rts5209,
  424. rts5229, rtl8411, etc. Realtek card reader supports access to many
  425. types of memory cards, such as Memory Stick, Memory Stick Pro,
  426. Secure Digital and MultiMediaCard.
  427. config MFD_RC5T583
  428. bool "Ricoh RC5T583 Power Management system device"
  429. depends on I2C=y && GENERIC_HARDIRQS
  430. select MFD_CORE
  431. select REGMAP_I2C
  432. help
  433. Select this option to get support for the RICOH583 Power
  434. Management system device.
  435. This driver provides common support for accessing the device
  436. through i2c interface. The device supports multiple sub-devices
  437. like GPIO, interrupts, RTC, LDO and DCDC regulators, onkey.
  438. Additional drivers must be enabled in order to use the
  439. different functionality of the device.
  440. config MFD_SEC_CORE
  441. bool "SAMSUNG Electronics PMIC Series Support"
  442. depends on I2C=y && GENERIC_HARDIRQS
  443. select MFD_CORE
  444. select REGMAP_I2C
  445. select REGMAP_IRQ
  446. help
  447. Support for the Samsung Electronics MFD series.
  448. This driver provides common support for accessing the device,
  449. additional drivers must be enabled in order to use the functionality
  450. of the device
  451. config MFD_SI476X_CORE
  452. tristate "Silicon Laboratories 4761/64/68 AM/FM radio."
  453. depends on I2C
  454. select MFD_CORE
  455. select REGMAP_I2C
  456. help
  457. This is the core driver for the SI476x series of AM/FM
  458. radio. This MFD driver connects the radio-si476x V4L2 module
  459. and the si476x audio codec.
  460. To compile this driver as a module, choose M here: the
  461. module will be called si476x-core.
  462. config MFD_SM501
  463. tristate "Silicon Motion SM501"
  464. ---help---
  465. This is the core driver for the Silicon Motion SM501 multimedia
  466. companion chip. This device is a multifunction device which may
  467. provide numerous interfaces including USB host controller, USB gadget,
  468. asynchronous serial ports, audio functions, and a dual display video
  469. interface. The device may be connected by PCI or local bus with
  470. varying functions enabled.
  471. config MFD_SM501_GPIO
  472. bool "Export GPIO via GPIO layer"
  473. depends on MFD_SM501 && GPIOLIB
  474. ---help---
  475. This option uses the gpio library layer to export the 64 GPIO
  476. lines on the SM501. The platform data is used to supply the
  477. base number for the first GPIO line to register.
  478. config MFD_SMSC
  479. bool "SMSC ECE1099 series chips"
  480. depends on I2C=y && GENERIC_HARDIRQS
  481. select MFD_CORE
  482. select REGMAP_I2C
  483. help
  484. If you say yes here you get support for the
  485. ece1099 chips from SMSC.
  486. To compile this driver as a module, choose M here: the
  487. module will be called smsc.
  488. config ABX500_CORE
  489. bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions"
  490. default y if ARCH_U300 || ARCH_U8500
  491. help
  492. Say yes here if you have the ABX500 Mixed Signal IC family
  493. chips. This core driver expose register access functions.
  494. Functionality specific drivers using these functions can
  495. remain unchanged when IC changes. Binding of the functions to
  496. actual register access is done by the IC core driver.
  497. config AB3100_CORE
  498. bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
  499. depends on I2C=y && ABX500_CORE && GENERIC_HARDIRQS
  500. select MFD_CORE
  501. default y if ARCH_U300
  502. help
  503. Select this to enable the AB3100 Mixed Signal IC core
  504. functionality. This connects to a AB3100 on the I2C bus
  505. and expose a number of symbols needed for dependent devices
  506. to read and write registers and subscribe to events from
  507. this multi-functional IC. This is needed to use other features
  508. of the AB3100 such as battery-backed RTC, charging control,
  509. LEDs, vibrator, system power and temperature, power management
  510. and ALSA sound.
  511. config AB3100_OTP
  512. tristate "ST-Ericsson AB3100 OTP functions"
  513. depends on AB3100_CORE
  514. default y if AB3100_CORE
  515. help
  516. Select this to enable the AB3100 Mixed Signal IC OTP (one-time
  517. programmable memory) support. This exposes a sysfs file to read
  518. out OTP values.
  519. config AB8500_CORE
  520. bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
  521. depends on GENERIC_HARDIRQS && ABX500_CORE && MFD_DB8500_PRCMU
  522. select POWER_SUPPLY
  523. select MFD_CORE
  524. select IRQ_DOMAIN
  525. help
  526. Select this option to enable access to AB8500 power management
  527. chip. This connects to U8500 either on the SSP/SPI bus (deprecated
  528. since hardware version v1.0) or the I2C bus via PRCMU. It also adds
  529. the irq_chip parts for handling the Mixed Signal chip events.
  530. This chip embeds various other multimedia funtionalities as well.
  531. config AB8500_DEBUG
  532. bool "Enable debug info via debugfs"
  533. depends on AB8500_GPADC && DEBUG_FS
  534. default y if DEBUG_FS
  535. help
  536. Select this option if you want debug information using the debug
  537. filesystem, debugfs.
  538. config AB8500_GPADC
  539. bool "ST-Ericsson AB8500 GPADC driver"
  540. depends on AB8500_CORE && REGULATOR_AB8500
  541. default y
  542. help
  543. AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage
  544. config MFD_DB8500_PRCMU
  545. bool "ST-Ericsson DB8500 Power Reset Control Management Unit"
  546. depends on UX500_SOC_DB8500
  547. select MFD_CORE
  548. help
  549. Select this option to enable support for the DB8500 Power Reset
  550. and Control Management Unit. This is basically an autonomous
  551. system controller running an XP70 microprocessor, which is accessed
  552. through a register map.
  553. config MFD_STMPE
  554. bool "STMicroelectronics STMPE"
  555. depends on (I2C=y || SPI_MASTER=y) && GENERIC_HARDIRQS
  556. select MFD_CORE
  557. help
  558. Support for the STMPE family of I/O Expanders from
  559. STMicroelectronics.
  560. Currently supported devices are:
  561. STMPE811: GPIO, Touchscreen
  562. STMPE1601: GPIO, Keypad
  563. STMPE1801: GPIO, Keypad
  564. STMPE2401: GPIO, Keypad
  565. STMPE2403: GPIO, Keypad
  566. This driver provides common support for accessing the device,
  567. additional drivers must be enabled in order to use the functionality
  568. of the device. Currently available sub drivers are:
  569. GPIO: stmpe-gpio
  570. Keypad: stmpe-keypad
  571. Touchscreen: stmpe-ts
  572. menu "STMicroelectronics STMPE Interface Drivers"
  573. depends on MFD_STMPE
  574. config STMPE_I2C
  575. bool "STMicroelectronics STMPE I2C Inteface"
  576. depends on I2C=y
  577. default y
  578. help
  579. This is used to enable I2C interface of STMPE
  580. config STMPE_SPI
  581. bool "STMicroelectronics STMPE SPI Inteface"
  582. depends on SPI_MASTER
  583. help
  584. This is used to enable SPI interface of STMPE
  585. endmenu
  586. config MFD_STA2X11
  587. bool "STMicroelectronics STA2X11"
  588. depends on STA2X11 && GENERIC_HARDIRQS
  589. select MFD_CORE
  590. select REGMAP_MMIO
  591. config MFD_SYSCON
  592. bool "System Controller Register R/W Based on Regmap"
  593. select REGMAP_MMIO
  594. help
  595. Select this option to enable accessing system control registers
  596. via regmap.
  597. config MFD_DAVINCI_VOICECODEC
  598. tristate
  599. select MFD_CORE
  600. config MFD_TI_AM335X_TSCADC
  601. tristate "TI ADC / Touch Screen chip support"
  602. select MFD_CORE
  603. select REGMAP
  604. select REGMAP_MMIO
  605. depends on GENERIC_HARDIRQS
  606. help
  607. If you say yes here you get support for Texas Instruments series
  608. of Touch Screen /ADC chips.
  609. To compile this driver as a module, choose M here: the
  610. module will be called ti_am335x_tscadc.
  611. config MFD_DM355EVM_MSP
  612. bool "TI DaVinci DM355 EVM microcontroller"
  613. depends on I2C=y && MACH_DAVINCI_DM355_EVM
  614. help
  615. This driver supports the MSP430 microcontroller used on these
  616. boards. MSP430 firmware manages resets and power sequencing,
  617. inputs from buttons and the IR remote, LEDs, an RTC, and more.
  618. config MFD_LP8788
  619. bool "TI LP8788 Power Management Unit Driver"
  620. depends on I2C=y && GENERIC_HARDIRQS
  621. select MFD_CORE
  622. select REGMAP_I2C
  623. select IRQ_DOMAIN
  624. help
  625. TI LP8788 PMU supports regulators, battery charger, RTC,
  626. ADC, backlight driver and current sinks.
  627. config MFD_OMAP_USB_HOST
  628. bool "TI OMAP USBHS core and TLL driver"
  629. depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3
  630. default y
  631. help
  632. This is the core driver for the OAMP EHCI and OHCI drivers.
  633. This MFD driver does the required setup functionalities for
  634. OMAP USB Host drivers.
  635. config MFD_PALMAS
  636. bool "TI Palmas series chips"
  637. select MFD_CORE
  638. select REGMAP_I2C
  639. select REGMAP_IRQ
  640. depends on I2C=y && GENERIC_HARDIRQS
  641. help
  642. If you say yes here you get support for the Palmas
  643. series of PMIC chips from Texas Instruments.
  644. config MFD_TI_SSP
  645. tristate "TI Sequencer Serial Port support"
  646. depends on ARCH_DAVINCI_TNETV107X && GENERIC_HARDIRQS
  647. select MFD_CORE
  648. ---help---
  649. Say Y here if you want support for the Sequencer Serial Port
  650. in a Texas Instruments TNETV107X SoC.
  651. To compile this driver as a module, choose M here: the
  652. module will be called ti-ssp.
  653. config TPS6105X
  654. tristate "TI TPS61050/61052 Boost Converters"
  655. depends on I2C
  656. select REGULATOR
  657. select MFD_CORE
  658. select REGULATOR_FIXED_VOLTAGE
  659. depends on GENERIC_HARDIRQS
  660. help
  661. This option enables a driver for the TP61050/TPS61052
  662. high-power "white LED driver". This boost converter is
  663. sometimes used for other things than white LEDs, and
  664. also contains a GPIO pin.
  665. config TPS65010
  666. tristate "TI TPS6501x Power Management chips"
  667. depends on I2C && GPIOLIB
  668. default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
  669. help
  670. If you say yes here you get support for the TPS6501x series of
  671. Power Management chips. These include voltage regulators,
  672. lithium ion/polymer battery charging, and other features that
  673. are often used in portable devices like cell phones and cameras.
  674. This driver can also be built as a module. If so, the module
  675. will be called tps65010.
  676. config TPS6507X
  677. tristate "TI TPS6507x Power Management / Touch Screen chips"
  678. select MFD_CORE
  679. depends on I2C && GENERIC_HARDIRQS
  680. help
  681. If you say yes here you get support for the TPS6507x series of
  682. Power Management / Touch Screen chips. These include voltage
  683. regulators, lithium ion/polymer battery charging, touch screen
  684. and other features that are often used in portable devices.
  685. This driver can also be built as a module. If so, the module
  686. will be called tps6507x.
  687. config TPS65911_COMPARATOR
  688. tristate
  689. config MFD_TPS65090
  690. bool "TI TPS65090 Power Management chips"
  691. depends on I2C=y && GENERIC_HARDIRQS
  692. select MFD_CORE
  693. select REGMAP_I2C
  694. select REGMAP_IRQ
  695. help
  696. If you say yes here you get support for the TPS65090 series of
  697. Power Management chips.
  698. This driver provides common support for accessing the device,
  699. additional drivers must be enabled in order to use the
  700. functionality of the device.
  701. config MFD_TPS65217
  702. tristate "TI TPS65217 Power Management / White LED chips"
  703. depends on I2C && GENERIC_HARDIRQS
  704. select MFD_CORE
  705. select REGMAP_I2C
  706. help
  707. If you say yes here you get support for the TPS65217 series of
  708. Power Management / White LED chips.
  709. These include voltage regulators, lithium ion/polymer battery
  710. charger, wled and other features that are often used in portable
  711. devices.
  712. This driver can also be built as a module. If so, the module
  713. will be called tps65217.
  714. config MFD_TPS6586X
  715. bool "TI TPS6586x Power Management chips"
  716. depends on I2C=y && GENERIC_HARDIRQS
  717. select MFD_CORE
  718. select REGMAP_I2C
  719. help
  720. If you say yes here you get support for the TPS6586X series of
  721. Power Management chips.
  722. This driver provides common support for accessing the device,
  723. additional drivers must be enabled in order to use the
  724. functionality of the device.
  725. This driver can also be built as a module. If so, the module
  726. will be called tps6586x.
  727. config MFD_TPS65910
  728. bool "TI TPS65910 Power Management chip"
  729. depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS
  730. select MFD_CORE
  731. select REGMAP_I2C
  732. select REGMAP_IRQ
  733. select IRQ_DOMAIN
  734. help
  735. if you say yes here you get support for the TPS65910 series of
  736. Power Management chips.
  737. config MFD_TPS65912
  738. bool "TI TPS65912 Power Management chip"
  739. depends on GPIOLIB
  740. select MFD_CORE
  741. help
  742. If you say yes here you get support for the TPS65912 series of
  743. PM chips.
  744. config MFD_TPS65912_I2C
  745. bool "TI TPS65912 Power Management chip with I2C"
  746. select MFD_CORE
  747. select MFD_TPS65912
  748. depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS
  749. help
  750. If you say yes here you get support for the TPS65912 series of
  751. PM chips with I2C interface.
  752. config MFD_TPS65912_SPI
  753. bool "TI TPS65912 Power Management chip with SPI"
  754. select MFD_CORE
  755. select MFD_TPS65912
  756. depends on SPI_MASTER && GPIOLIB && GENERIC_HARDIRQS
  757. help
  758. If you say yes here you get support for the TPS65912 series of
  759. PM chips with SPI interface.
  760. config MFD_TPS80031
  761. bool "TI TPS80031/TPS80032 Power Management chips"
  762. depends on I2C=y && GENERIC_HARDIRQS
  763. select MFD_CORE
  764. select REGMAP_I2C
  765. select REGMAP_IRQ
  766. help
  767. If you say yes here you get support for the Texas Instruments
  768. TPS80031/ TPS80032 Fully Integrated Power Management with Power
  769. Path and Battery Charger. The device provides five configurable
  770. step-down converters, 11 general purpose LDOs, USB OTG Module,
  771. ADC, RTC, 2 PWM, System Voltage Regulator/Battery Charger with
  772. Power Path from USB, 32K clock generator.
  773. config TWL4030_CORE
  774. bool "TI TWL4030/TWL5030/TWL6030/TPS659x0 Support"
  775. depends on I2C=y && GENERIC_HARDIRQS
  776. select IRQ_DOMAIN
  777. select REGMAP_I2C
  778. help
  779. Say yes here if you have TWL4030 / TWL6030 family chip on your board.
  780. This core driver provides register access and IRQ handling
  781. facilities, and registers devices for the various functions
  782. so that function-specific drivers can bind to them.
  783. These multi-function chips are found on many OMAP2 and OMAP3
  784. boards, providing power management, RTC, GPIO, keypad, a
  785. high speed USB OTG transceiver, an audio codec (on most
  786. versions) and many other features.
  787. config TWL4030_MADC
  788. tristate "TI TWL4030 MADC"
  789. depends on TWL4030_CORE
  790. help
  791. This driver provides support for triton TWL4030-MADC. The
  792. driver supports both RT and SW conversion methods.
  793. This driver can be built as a module. If so it will be
  794. named twl4030-madc
  795. config TWL4030_POWER
  796. bool "TI TWL4030 power resources"
  797. depends on TWL4030_CORE && ARM
  798. help
  799. Say yes here if you want to use the power resources on the
  800. TWL4030 family chips. Most of these resources are regulators,
  801. which have a separate driver; some are control signals, such
  802. as clock request handshaking.
  803. This driver uses board-specific data to initialize the resources
  804. and load scripts controlling which resources are switched off/on
  805. or reset when a sleep, wakeup or warm reset event occurs.
  806. config MFD_TWL4030_AUDIO
  807. bool "TI TWL4030 Audio"
  808. depends on TWL4030_CORE && GENERIC_HARDIRQS
  809. select MFD_CORE
  810. default n
  811. config TWL6040_CORE
  812. bool "TI TWL6040 audio codec"
  813. depends on I2C=y && GENERIC_HARDIRQS
  814. select MFD_CORE
  815. select REGMAP_I2C
  816. select REGMAP_IRQ
  817. default n
  818. help
  819. Say yes here if you want support for Texas Instruments TWL6040 audio
  820. codec.
  821. This driver provides common support for accessing the device,
  822. additional drivers must be enabled in order to use the
  823. functionality of the device (audio, vibra).
  824. config MENELAUS
  825. bool "TI TWL92330/Menelaus PM chip"
  826. depends on I2C=y && ARCH_OMAP2
  827. help
  828. If you say yes here you get support for the Texas Instruments
  829. TWL92330/Menelaus Power Management chip. This include voltage
  830. regulators, Dual slot memory card transceivers, real-time clock
  831. and other features that are often used in portable devices like
  832. cell phones and PDAs.
  833. config MFD_WL1273_CORE
  834. tristate "TI WL1273 FM radio"
  835. depends on I2C && GENERIC_HARDIRQS
  836. select MFD_CORE
  837. default n
  838. help
  839. This is the core driver for the TI WL1273 FM radio. This MFD
  840. driver connects the radio-wl1273 V4L2 module and the wl1273
  841. audio codec.
  842. config MFD_LM3533
  843. tristate "TI/National Semiconductor LM3533 Lighting Power chip"
  844. depends on I2C
  845. select MFD_CORE
  846. select REGMAP_I2C
  847. depends on GENERIC_HARDIRQS
  848. help
  849. Say yes here to enable support for National Semiconductor / TI
  850. LM3533 Lighting Power chips.
  851. This driver provides common support for accessing the device;
  852. additional drivers must be enabled in order to use the LED,
  853. backlight or ambient-light-sensor functionality of the device.
  854. config MFD_TIMBERDALE
  855. tristate "Timberdale FPGA"
  856. select MFD_CORE
  857. depends on PCI && GPIOLIB
  858. ---help---
  859. This is the core driver for the timberdale FPGA. This device is a
  860. multifunction device which exposes numerous platform devices.
  861. The timberdale FPGA can be found on the Intel Atom development board
  862. for in-vehicle infontainment, called Russellville.
  863. config MFD_TC3589X
  864. bool "Toshiba TC35892 and variants"
  865. depends on I2C=y && GENERIC_HARDIRQS
  866. select MFD_CORE
  867. help
  868. Support for the Toshiba TC35892 and variants I/O Expander.
  869. This driver provides common support for accessing the device,
  870. additional drivers must be enabled in order to use the
  871. functionality of the device.
  872. config MFD_TMIO
  873. bool
  874. default n
  875. config MFD_T7L66XB
  876. bool "Toshiba T7L66XB"
  877. depends on ARM && HAVE_CLK && GENERIC_HARDIRQS
  878. select MFD_CORE
  879. select MFD_TMIO
  880. help
  881. Support for Toshiba Mobile IO Controller T7L66XB
  882. config MFD_TC6387XB
  883. bool "Toshiba TC6387XB"
  884. depends on ARM && HAVE_CLK
  885. select MFD_CORE
  886. select MFD_TMIO
  887. help
  888. Support for Toshiba Mobile IO Controller TC6387XB
  889. config MFD_TC6393XB
  890. bool "Toshiba TC6393XB"
  891. depends on ARM && HAVE_CLK
  892. select GPIOLIB
  893. select MFD_CORE
  894. select MFD_TMIO
  895. help
  896. Support for Toshiba Mobile IO Controller TC6393XB
  897. config MFD_VX855
  898. tristate "VIA VX855/VX875 integrated south bridge"
  899. depends on PCI && GENERIC_HARDIRQS
  900. select MFD_CORE
  901. help
  902. Say yes here to enable support for various functions of the
  903. VIA VX855/VX875 south bridge. You will need to enable the vx855_spi
  904. and/or vx855_gpio drivers for this to do anything useful.
  905. config MFD_ARIZONA
  906. select REGMAP
  907. select REGMAP_IRQ
  908. select MFD_CORE
  909. bool
  910. config MFD_ARIZONA_I2C
  911. tristate "Wolfson Microelectronics Arizona platform with I2C"
  912. select MFD_ARIZONA
  913. select MFD_CORE
  914. select REGMAP_I2C
  915. depends on I2C && GENERIC_HARDIRQS
  916. help
  917. Support for the Wolfson Microelectronics Arizona platform audio SoC
  918. core functionality controlled via I2C.
  919. config MFD_ARIZONA_SPI
  920. tristate "Wolfson Microelectronics Arizona platform with SPI"
  921. select MFD_ARIZONA
  922. select MFD_CORE
  923. select REGMAP_SPI
  924. depends on SPI_MASTER && GENERIC_HARDIRQS
  925. help
  926. Support for the Wolfson Microelectronics Arizona platform audio SoC
  927. core functionality controlled via I2C.
  928. config MFD_WM5102
  929. bool "Wolfson Microelectronics WM5102"
  930. depends on MFD_ARIZONA
  931. help
  932. Support for Wolfson Microelectronics WM5102 low power audio SoC
  933. config MFD_WM5110
  934. bool "Wolfson Microelectronics WM5110"
  935. depends on MFD_ARIZONA
  936. help
  937. Support for Wolfson Microelectronics WM5110 low power audio SoC
  938. config MFD_WM8997
  939. bool "Support Wolfson Microelectronics WM8997"
  940. depends on MFD_ARIZONA
  941. help
  942. Support for Wolfson Microelectronics WM8997 low power audio SoC
  943. config MFD_WM8400
  944. bool "Wolfson Microelectronics WM8400"
  945. select MFD_CORE
  946. depends on I2C=y && GENERIC_HARDIRQS
  947. select REGMAP_I2C
  948. help
  949. Support for the Wolfson Microelecronics WM8400 PMIC and audio
  950. CODEC. This driver provides common support for accessing
  951. the device, additional drivers must be enabled in order to use
  952. the functionality of the device.
  953. config MFD_WM831X
  954. bool
  955. depends on GENERIC_HARDIRQS
  956. config MFD_WM831X_I2C
  957. bool "Wolfson Microelectronics WM831x/2x PMICs with I2C"
  958. select MFD_CORE
  959. select MFD_WM831X
  960. select REGMAP_I2C
  961. select IRQ_DOMAIN
  962. depends on I2C=y && GENERIC_HARDIRQS
  963. help
  964. Support for the Wolfson Microelecronics WM831x and WM832x PMICs
  965. when controlled using I2C. This driver provides common support
  966. for accessing the device, additional drivers must be enabled in
  967. order to use the functionality of the device.
  968. config MFD_WM831X_SPI
  969. bool "Wolfson Microelectronics WM831x/2x PMICs with SPI"
  970. select MFD_CORE
  971. select MFD_WM831X
  972. select REGMAP_SPI
  973. select IRQ_DOMAIN
  974. depends on SPI_MASTER && GENERIC_HARDIRQS
  975. help
  976. Support for the Wolfson Microelecronics WM831x and WM832x PMICs
  977. when controlled using SPI. This driver provides common support
  978. for accessing the device, additional drivers must be enabled in
  979. order to use the functionality of the device.
  980. config MFD_WM8350
  981. bool
  982. depends on GENERIC_HARDIRQS
  983. config MFD_WM8350_I2C
  984. bool "Wolfson Microelectronics WM8350 with I2C"
  985. select MFD_WM8350
  986. depends on I2C=y && GENERIC_HARDIRQS
  987. help
  988. The WM8350 is an integrated audio and power management
  989. subsystem with watchdog and RTC functionality for embedded
  990. systems. This option enables core support for the WM8350 with
  991. I2C as the control interface. Additional options must be
  992. selected to enable support for the functionality of the chip.
  993. config MFD_WM8994
  994. bool "Wolfson Microelectronics WM8994"
  995. select MFD_CORE
  996. select REGMAP_I2C
  997. select REGMAP_IRQ
  998. depends on I2C=y && GENERIC_HARDIRQS
  999. help
  1000. The WM8994 is a highly integrated hi-fi CODEC designed for
  1001. smartphone applicatiosn. As well as audio functionality it
  1002. has on board GPIO and regulator functionality which is
  1003. supported via the relevant subsystems. This driver provides
  1004. core support for the WM8994, in order to use the actual
  1005. functionaltiy of the device other drivers must be enabled.
  1006. endmenu
  1007. endif
  1008. menu "Multimedia Capabilities Port drivers"
  1009. depends on ARCH_SA1100
  1010. config MCP
  1011. tristate
  1012. # Interface drivers
  1013. config MCP_SA11X0
  1014. tristate "Support SA11x0 MCP interface"
  1015. depends on ARCH_SA1100
  1016. select MCP
  1017. # Chip drivers
  1018. config MCP_UCB1200
  1019. bool "Support for UCB1200 / UCB1300"
  1020. depends on MCP_SA11X0
  1021. select MCP
  1022. config MCP_UCB1200_TS
  1023. tristate "Touchscreen interface support"
  1024. depends on MCP_UCB1200 && INPUT
  1025. endmenu
  1026. config VEXPRESS_CONFIG
  1027. bool "ARM Versatile Express platform infrastructure"
  1028. depends on ARM || ARM64
  1029. help
  1030. Platform configuration infrastructure for the ARM Ltd.
  1031. Versatile Express.