1 # SPDX-License-Identifier: GPL-2.0-only
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
14 bool "SAM Cortex-M7 family" if ARM_SINGLE_ARMV7M
15 select COMMON_CLK_AT91
18 Select this if you are using an SoC from Microchip's SAME7, SAMS7 or SAMV7
23 depends on ARCH_MULTI_V7
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
34 Select this if ou are using one of Microchip's SAMA5D2 family SoC.
38 depends on ARCH_MULTI_V7
42 select HAVE_AT91_USB_CLK
45 Select this if you are using one of Microchip's SAMA5D3 family SoC.
46 This support covers SAMA5D31, SAMA5D33, SAMA5D34, SAMA5D35, SAMA5D36.
50 depends on ARCH_MULTI_V7
55 select HAVE_AT91_USB_CLK
56 select HAVE_AT91_H32MX
59 Select this if you are using one of Microchip's SAMA5D4 family SoC.
63 depends on ARCH_MULTI_V7
64 select HAVE_AT91_GENERATED_CLK
65 select HAVE_AT91_SAM9X60_PLL
70 Select this if you are using one of Microchip's SAMA7G5 family SoC.
73 bool "ARMv7 based Microchip LAN966 SoC family"
74 depends on ARCH_MULTI_V7
75 select DW_APB_TIMER_OF
79 This enables support for ARMv7 based Microchip LAN966 SoC family.
83 depends on ARCH_MULTI_V4T
88 select HAVE_AT91_USB_CLK
93 Select this if you are using Microchip's AT91RM9200 SoC.
97 depends on ARCH_MULTI_V5
102 select HAVE_AT91_USB_CLK
103 select HAVE_AT91_UTMI
110 Select this if you are using one of those Microchip SoC:
130 depends on ARCH_MULTI_V5
131 select ATMEL_AIC5_IRQ
132 select ATMEL_PM if PM
134 select HAVE_AT91_USB_CLK
135 select HAVE_AT91_GENERATED_CLK
136 select HAVE_AT91_SAM9X60_PLL
142 Select this if you are using Microchip's SAM9X60 SoC
146 depends on ARCH_MULTI_V5
147 select ATMEL_AIC5_IRQ
148 select ATMEL_PM if PM
150 select HAVE_AT91_USB_CLK
151 select HAVE_AT91_GENERATED_CLK
152 select HAVE_AT91_SAM9X60_PLL
158 Select this if you are using Microchip's SAM9X7 SoC
160 comment "Clocksource driver selection"
162 config ATMEL_CLOCKSOURCE_PIT
163 bool "Periodic Interval Timer (PIT) support"
164 depends on SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAM9X7 || SOC_SAMA5
165 default SOC_AT91SAM9 || SOC_SAMA5
168 Select this to get a clocksource based on the Atmel Periodic Interval
169 Timer. It has a relatively low resolution and the TC Block clocksource
172 config ATMEL_CLOCKSOURCE_TCB
173 bool "Timer Counter Blocks (TCB) support"
174 default SOC_AT91RM9200 || SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAM9X7 || SOC_SAMA5
175 select ATMEL_TCB_CLKSRC
177 Select this to get a high precision clocksource based on a
178 TC block with a 5+ MHz base clock rate.
179 On platforms with 16-bit counters, two timer channels are combined
180 to make a single 32-bit timer.
181 It can also be used as a clock event device supporting oneshot mode.
183 config MICROCHIP_CLOCKSOURCE_PIT64B
184 bool "64-bit Periodic Interval Timer (PIT64B) support"
185 default SOC_SAM9X60 || SOC_SAM9X7 || SOC_SAMA7
186 select MICROCHIP_PIT64B
188 Select this to get a high resolution clockevent (SAM9X60) or
189 clocksource and clockevent (SAMA7G5) based on Microchip 64-bit
190 Periodic Interval Timer.
192 config HAVE_AT91_UTMI
195 config HAVE_AT91_USB_CLK
198 config COMMON_CLK_AT91
205 config HAVE_AT91_H32MX
208 config HAVE_AT91_GENERATED_CLK
211 config HAVE_AT91_AUDIO_PLL
214 config HAVE_AT91_I2S_MUX_CLK
217 config HAVE_AT91_SAM9X60_PLL
228 select ATMEL_AIC5_IRQ
229 select ATMEL_PM if PM
237 config ATMEL_SECURE_PM
238 bool "Atmel Secure PM support"
239 depends on SOC_SAMA5D2 && ATMEL_PM
242 When running under a TEE, the suspend mode must be requested to be set
243 at TEE level. When enable, this option will use secure monitor calls
244 to set the suspend level. PSCI is then used to enter suspend.
249 select ATMEL_PM if PM