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