Kconfig 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318
  1. #
  2. # PINCTRL infrastructure and drivers
  3. #
  4. config PINCTRL
  5. bool
  6. menu "Pin controllers"
  7. depends on PINCTRL
  8. config GENERIC_PINCTRL_GROUPS
  9. bool
  10. config PINMUX
  11. bool "Support pin multiplexing controllers" if COMPILE_TEST
  12. config GENERIC_PINMUX_FUNCTIONS
  13. bool
  14. select PINMUX
  15. config PINCONF
  16. bool "Support pin configuration controllers" if COMPILE_TEST
  17. config GENERIC_PINCONF
  18. bool
  19. select PINCONF
  20. config DEBUG_PINCTRL
  21. bool "Debug PINCTRL calls"
  22. depends on DEBUG_KERNEL
  23. help
  24. Say Y here to add some extra checks and diagnostics to PINCTRL calls.
  25. config PINCTRL_ADI2
  26. bool "ADI pin controller driver"
  27. depends on BLACKFIN
  28. select PINMUX
  29. select IRQ_DOMAIN
  30. help
  31. This is the pin controller and gpio driver for ADI BF54x, BF60x and
  32. future processors. This option is selected automatically when specific
  33. machine and arch are selected to build.
  34. config PINCTRL_AS3722
  35. tristate "Pinctrl and GPIO driver for ams AS3722 PMIC"
  36. depends on MFD_AS3722 && GPIOLIB
  37. select PINMUX
  38. select GENERIC_PINCONF
  39. help
  40. AS3722 device supports the configuration of GPIO pins for different
  41. functionality. This driver supports the pinmux, push-pull and
  42. open drain configuration for the GPIO pins of AS3722 devices. It also
  43. supports the GPIO functionality through gpiolib.
  44. config PINCTRL_BF54x
  45. def_bool y if BF54x
  46. select PINCTRL_ADI2
  47. config PINCTRL_BF60x
  48. def_bool y if BF60x
  49. select PINCTRL_ADI2
  50. config PINCTRL_AT91
  51. bool "AT91 pinctrl driver"
  52. depends on OF
  53. depends on ARCH_AT91
  54. select PINMUX
  55. select PINCONF
  56. select GPIOLIB
  57. select OF_GPIO
  58. select GPIOLIB_IRQCHIP
  59. help
  60. Say Y here to enable the at91 pinctrl driver
  61. config PINCTRL_AT91PIO4
  62. bool "AT91 PIO4 pinctrl driver"
  63. depends on OF
  64. depends on ARCH_AT91
  65. select PINMUX
  66. select GENERIC_PINCONF
  67. select GPIOLIB
  68. select GPIOLIB_IRQCHIP
  69. select OF_GPIO
  70. help
  71. Say Y here to enable the at91 pinctrl/gpio driver for Atmel PIO4
  72. controller available on sama5d2 SoC.
  73. config PINCTRL_AMD
  74. tristate "AMD GPIO pin control"
  75. depends on GPIOLIB
  76. select GPIOLIB_IRQCHIP
  77. select PINCONF
  78. select GENERIC_PINCONF
  79. help
  80. driver for memory mapped GPIO functionality on AMD platforms
  81. (x86 or arm).Most pins are usually muxed to some other
  82. functionality by firmware,so only a small amount is available
  83. for gpio use.
  84. Requires ACPI/FDT device enumeration code to set up a platform
  85. device.
  86. config PINCTRL_DA850_PUPD
  87. tristate "TI DA850/OMAP-L138/AM18XX pullup/pulldown groups"
  88. depends on OF && (ARCH_DAVINCI_DA850 || COMPILE_TEST)
  89. select PINCONF
  90. select GENERIC_PINCONF
  91. help
  92. Driver for TI DA850/OMAP-L138/AM18XX pinconf. Used to control
  93. pullup/pulldown pin groups.
  94. config PINCTRL_DIGICOLOR
  95. bool
  96. depends on OF && (ARCH_DIGICOLOR || COMPILE_TEST)
  97. select PINMUX
  98. select GENERIC_PINCONF
  99. config PINCTRL_LANTIQ
  100. bool
  101. depends on LANTIQ
  102. select PINMUX
  103. select PINCONF
  104. config PINCTRL_LPC18XX
  105. bool "NXP LPC18XX/43XX SCU pinctrl driver"
  106. depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
  107. default ARCH_LPC18XX
  108. select PINMUX
  109. select GENERIC_PINCONF
  110. help
  111. Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU).
  112. config PINCTRL_FALCON
  113. bool
  114. depends on SOC_FALCON
  115. depends on PINCTRL_LANTIQ
  116. config PINCTRL_MESON
  117. bool
  118. depends on OF
  119. select PINMUX
  120. select PINCONF
  121. select GENERIC_PINCONF
  122. select GPIOLIB
  123. select OF_GPIO
  124. select REGMAP_MMIO
  125. config PINCTRL_OXNAS
  126. bool
  127. depends on OF
  128. select PINMUX
  129. select PINCONF
  130. select GENERIC_PINCONF
  131. select GPIOLIB
  132. select OF_GPIO
  133. select GPIOLIB_IRQCHIP
  134. select MFD_SYSCON
  135. config PINCTRL_ROCKCHIP
  136. bool
  137. select PINMUX
  138. select GENERIC_PINCONF
  139. select GENERIC_IRQ_CHIP
  140. select MFD_SYSCON
  141. config PINCTRL_SINGLE
  142. tristate "One-register-per-pin type device tree based pinctrl driver"
  143. depends on OF
  144. select GENERIC_PINCTRL_GROUPS
  145. select GENERIC_PINMUX_FUNCTIONS
  146. select GENERIC_PINCONF
  147. help
  148. This selects the device tree based generic pinctrl driver.
  149. config PINCTRL_SIRF
  150. bool "CSR SiRFprimaII pin controller driver"
  151. depends on ARCH_SIRF
  152. select PINMUX
  153. select PINCONF
  154. select GENERIC_PINCONF
  155. select GPIOLIB_IRQCHIP
  156. config PINCTRL_SX150X
  157. bool "Semtech SX150x I2C GPIO expander pinctrl driver"
  158. depends on GPIOLIB && I2C=y
  159. select PINMUX
  160. select PINCONF
  161. select GENERIC_PINCONF
  162. select GPIOLIB_IRQCHIP
  163. select REGMAP
  164. help
  165. Say yes here to provide support for Semtech SX150x-series I2C
  166. GPIO expanders as pinctrl module.
  167. Compatible models include:
  168. - 8 bits: sx1508q, sx1502q
  169. - 16 bits: sx1509q, sx1506q
  170. config PINCTRL_PISTACHIO
  171. def_bool y if MACH_PISTACHIO
  172. depends on GPIOLIB
  173. select PINMUX
  174. select GENERIC_PINCONF
  175. select GPIOLIB_IRQCHIP
  176. select OF_GPIO
  177. config PINCTRL_ST
  178. bool
  179. depends on OF
  180. select PINMUX
  181. select PINCONF
  182. select GPIOLIB_IRQCHIP
  183. config PINCTRL_TZ1090
  184. bool "Toumaz Xenif TZ1090 pin control driver"
  185. depends on SOC_TZ1090
  186. select PINMUX
  187. select GENERIC_PINCONF
  188. config PINCTRL_TZ1090_PDC
  189. bool "Toumaz Xenif TZ1090 PDC pin control driver"
  190. depends on SOC_TZ1090
  191. select PINMUX
  192. select PINCONF
  193. config PINCTRL_U300
  194. bool "U300 pin controller driver"
  195. depends on ARCH_U300
  196. select PINMUX
  197. select GENERIC_PINCONF
  198. config PINCTRL_COH901
  199. bool "ST-Ericsson U300 COH 901 335/571 GPIO"
  200. depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
  201. select GPIOLIB_IRQCHIP
  202. help
  203. Say yes here to support GPIO interface on ST-Ericsson U300.
  204. The names of the two IP block variants supported are
  205. COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
  206. ports of 8 GPIO pins each.
  207. config PINCTRL_MAX77620
  208. tristate "MAX77620/MAX20024 Pincontrol support"
  209. depends on MFD_MAX77620 && OF
  210. select PINMUX
  211. select GENERIC_PINCONF
  212. help
  213. Say Yes here to enable Pin control support for Maxim PMIC MAX77620.
  214. This PMIC has 8 GPIO pins that work as GPIO as well as special
  215. function in alternate mode. This driver also configure push-pull,
  216. open drain, FPS slots etc.
  217. config PINCTRL_PALMAS
  218. tristate "Pinctrl driver for the PALMAS Series MFD devices"
  219. depends on OF && MFD_PALMAS
  220. select PINMUX
  221. select GENERIC_PINCONF
  222. help
  223. Palmas device supports the configuration of pins for different
  224. functionality. This driver supports the pinmux, push-pull and
  225. open drain configuration for the Palmas series devices like
  226. TPS65913, TPS80036 etc.
  227. config PINCTRL_PIC32
  228. bool "Microchip PIC32 pin controller driver"
  229. depends on OF
  230. depends on MACH_PIC32
  231. select PINMUX
  232. select GENERIC_PINCONF
  233. select GPIOLIB_IRQCHIP
  234. select OF_GPIO
  235. help
  236. This is the pin controller and gpio driver for Microchip PIC32
  237. microcontrollers. This option is selected automatically when specific
  238. machine and arch are selected to build.
  239. config PINCTRL_PIC32MZDA
  240. def_bool y if PIC32MZDA
  241. select PINCTRL_PIC32
  242. config PINCTRL_ZYNQ
  243. bool "Pinctrl driver for Xilinx Zynq"
  244. depends on ARCH_ZYNQ
  245. select PINMUX
  246. select GENERIC_PINCONF
  247. help
  248. This selects the pinctrl driver for Xilinx Zynq.
  249. source "drivers/pinctrl/aspeed/Kconfig"
  250. source "drivers/pinctrl/bcm/Kconfig"
  251. source "drivers/pinctrl/berlin/Kconfig"
  252. source "drivers/pinctrl/freescale/Kconfig"
  253. source "drivers/pinctrl/intel/Kconfig"
  254. source "drivers/pinctrl/mvebu/Kconfig"
  255. source "drivers/pinctrl/nomadik/Kconfig"
  256. source "drivers/pinctrl/pxa/Kconfig"
  257. source "drivers/pinctrl/qcom/Kconfig"
  258. source "drivers/pinctrl/samsung/Kconfig"
  259. source "drivers/pinctrl/sh-pfc/Kconfig"
  260. source "drivers/pinctrl/spear/Kconfig"
  261. source "drivers/pinctrl/stm32/Kconfig"
  262. source "drivers/pinctrl/sunxi/Kconfig"
  263. source "drivers/pinctrl/tegra/Kconfig"
  264. source "drivers/pinctrl/ti/Kconfig"
  265. source "drivers/pinctrl/uniphier/Kconfig"
  266. source "drivers/pinctrl/vt8500/Kconfig"
  267. source "drivers/pinctrl/mediatek/Kconfig"
  268. config PINCTRL_XWAY
  269. bool
  270. depends on SOC_TYPE_XWAY
  271. depends on PINCTRL_LANTIQ
  272. config PINCTRL_TB10X
  273. bool
  274. depends on OF && ARC_PLAT_TB10X
  275. select GPIOLIB
  276. endmenu