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