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