Kconfig 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. menuconfig ARCH_AT91
  3. bool "AT91/Microchip SoCs"
  4. depends on (CPU_LITTLE_ENDIAN && (ARCH_MULTI_V4T || ARCH_MULTI_V5)) || \
  5. ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M
  6. select ARM_CPU_SUSPEND if PM && ARCH_MULTI_V7
  7. select COMMON_CLK_AT91
  8. select GPIOLIB
  9. select PINCTRL
  10. select SOC_BUS
  11. if ARCH_AT91
  12. config SOC_SAMV7
  13. bool "SAM Cortex-M7 family" if ARM_SINGLE_ARMV7M
  14. select COMMON_CLK_AT91
  15. select PINCTRL_AT91
  16. help
  17. Select this if you are using an SoC from Microchip's SAME7, SAMS7 or SAMV7
  18. families.
  19. config SOC_SAMA5D2
  20. bool "SAMA5D2 family"
  21. depends on ARCH_MULTI_V7
  22. select SOC_SAMA5
  23. select CACHE_L2X0
  24. select HAVE_AT91_UTMI
  25. select HAVE_AT91_USB_CLK
  26. select HAVE_AT91_H32MX
  27. select HAVE_AT91_GENERATED_CLK
  28. select HAVE_AT91_AUDIO_PLL
  29. select HAVE_AT91_I2S_MUX_CLK
  30. select PINCTRL_AT91PIO4
  31. help
  32. Select this if ou are using one of Microchip's SAMA5D2 family SoC.
  33. config SOC_SAMA5D3
  34. bool "SAMA5D3 family"
  35. depends on ARCH_MULTI_V7
  36. select SOC_SAMA5
  37. select HAVE_AT91_UTMI
  38. select HAVE_AT91_SMD
  39. select HAVE_AT91_USB_CLK
  40. select PINCTRL_AT91
  41. help
  42. Select this if you are using one of Microchip's SAMA5D3 family SoC.
  43. This support covers SAMA5D31, SAMA5D33, SAMA5D34, SAMA5D35, SAMA5D36.
  44. config SOC_SAMA5D4
  45. bool "SAMA5D4 family"
  46. depends on ARCH_MULTI_V7
  47. select SOC_SAMA5
  48. select CACHE_L2X0
  49. select HAVE_AT91_UTMI
  50. select HAVE_AT91_SMD
  51. select HAVE_AT91_USB_CLK
  52. select HAVE_AT91_H32MX
  53. select PINCTRL_AT91
  54. help
  55. Select this if you are using one of Microchip's SAMA5D4 family SoC.
  56. config SOC_SAMA7G5
  57. bool "SAMA7G5 family"
  58. depends on ARCH_MULTI_V7
  59. select HAVE_AT91_GENERATED_CLK
  60. select HAVE_AT91_SAM9X60_PLL
  61. select HAVE_AT91_UTMI
  62. select PM_OPP
  63. select SOC_SAMA7
  64. help
  65. Select this if you are using one of Microchip's SAMA7G5 family SoC.
  66. config SOC_LAN966
  67. bool "ARMv7 based Microchip LAN966 SoC family"
  68. depends on ARCH_MULTI_V7
  69. select DW_APB_TIMER_OF
  70. select ARM_GIC
  71. select MEMORY
  72. help
  73. This enables support for ARMv7 based Microchip LAN966 SoC family.
  74. config SOC_AT91RM9200
  75. bool "AT91RM9200"
  76. depends on ARCH_MULTI_V4T
  77. select ATMEL_AIC_IRQ
  78. select ATMEL_PM if PM
  79. select ATMEL_ST
  80. select CPU_ARM920T
  81. select HAVE_AT91_USB_CLK
  82. select PINCTRL_AT91
  83. select SOC_SAM_V4_V5
  84. select SRAM if PM
  85. help
  86. Select this if you are using Microchip's AT91RM9200 SoC.
  87. config SOC_AT91SAM9
  88. bool "AT91SAM9"
  89. depends on ARCH_MULTI_V5
  90. select ATMEL_AIC_IRQ
  91. select ATMEL_PM if PM
  92. select ATMEL_SDRAMC
  93. select CPU_ARM926T
  94. select HAVE_AT91_SMD
  95. select HAVE_AT91_USB_CLK
  96. select HAVE_AT91_UTMI
  97. select HAVE_FB_ATMEL
  98. select MEMORY
  99. select PINCTRL_AT91
  100. select SOC_SAM_V4_V5
  101. select SRAM if PM
  102. help
  103. Select this if you are using one of those Microchip SoC:
  104. AT91SAM9260
  105. AT91SAM9261
  106. AT91SAM9263
  107. AT91SAM9G15
  108. AT91SAM9G20
  109. AT91SAM9G25
  110. AT91SAM9G35
  111. AT91SAM9G45
  112. AT91SAM9G46
  113. AT91SAM9M10
  114. AT91SAM9M11
  115. AT91SAM9N12
  116. AT91SAM9RL
  117. AT91SAM9X25
  118. AT91SAM9X35
  119. AT91SAM9XE
  120. config SOC_SAM9X60
  121. bool "SAM9X60"
  122. depends on ARCH_MULTI_V5
  123. select ATMEL_AIC5_IRQ
  124. select ATMEL_PM if PM
  125. select ATMEL_SDRAMC
  126. select CPU_ARM926T
  127. select HAVE_AT91_USB_CLK
  128. select HAVE_AT91_GENERATED_CLK
  129. select HAVE_AT91_SAM9X60_PLL
  130. select MEMORY
  131. select PINCTRL_AT91
  132. select SOC_SAM_V4_V5
  133. select SRAM if PM
  134. help
  135. Select this if you are using Microchip's SAM9X60 SoC
  136. comment "Clocksource driver selection"
  137. config ATMEL_CLOCKSOURCE_PIT
  138. bool "Periodic Interval Timer (PIT) support"
  139. depends on SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAMA5
  140. default SOC_AT91SAM9 || SOC_SAMA5
  141. select ATMEL_PIT
  142. help
  143. Select this to get a clocksource based on the Atmel Periodic Interval
  144. Timer. It has a relatively low resolution and the TC Block clocksource
  145. should be preferred.
  146. config ATMEL_CLOCKSOURCE_TCB
  147. bool "Timer Counter Blocks (TCB) support"
  148. default SOC_AT91RM9200 || SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAMA5
  149. select ATMEL_TCB_CLKSRC
  150. help
  151. Select this to get a high precision clocksource based on a
  152. TC block with a 5+ MHz base clock rate.
  153. On platforms with 16-bit counters, two timer channels are combined
  154. to make a single 32-bit timer.
  155. It can also be used as a clock event device supporting oneshot mode.
  156. config MICROCHIP_CLOCKSOURCE_PIT64B
  157. bool "64-bit Periodic Interval Timer (PIT64B) support"
  158. default SOC_SAM9X60 || SOC_SAMA7
  159. select MICROCHIP_PIT64B
  160. help
  161. Select this to get a high resolution clockevent (SAM9X60) or
  162. clocksource and clockevent (SAMA7G5) based on Microchip 64-bit
  163. Periodic Interval Timer.
  164. config HAVE_AT91_UTMI
  165. bool
  166. config HAVE_AT91_USB_CLK
  167. bool
  168. config COMMON_CLK_AT91
  169. bool
  170. select MFD_SYSCON
  171. config HAVE_AT91_SMD
  172. bool
  173. config HAVE_AT91_H32MX
  174. bool
  175. config HAVE_AT91_GENERATED_CLK
  176. bool
  177. config HAVE_AT91_AUDIO_PLL
  178. bool
  179. config HAVE_AT91_I2S_MUX_CLK
  180. bool
  181. config HAVE_AT91_SAM9X60_PLL
  182. bool
  183. config SOC_SAM_V4_V5
  184. bool
  185. config SOC_SAM_V7
  186. bool
  187. config SOC_SAMA5
  188. bool
  189. select ATMEL_AIC5_IRQ
  190. select ATMEL_PM if PM
  191. select ATMEL_SDRAMC
  192. select MEMORY
  193. select SOC_SAM_V7
  194. select SRAM if PM
  195. config ATMEL_PM
  196. bool
  197. config ATMEL_SECURE_PM
  198. bool "Atmel Secure PM support"
  199. depends on SOC_SAMA5D2 && ATMEL_PM
  200. select ARM_PSCI
  201. help
  202. When running under a TEE, the suspend mode must be requested to be set
  203. at TEE level. When enable, this option will use secure monitor calls
  204. to set the suspend level. PSCI is then used to enter suspend.
  205. config SOC_SAMA7
  206. bool
  207. select ARM_GIC
  208. select ATMEL_PM if PM
  209. select ATMEL_SDRAMC
  210. select MEMORY
  211. select SOC_SAM_V7
  212. select SRAM if PM
  213. endif