Merge branches 'for-5.7/upstream-fixes', 'for-5.8/apple', 'for-5.8/asus', 'for-5...
[linux-2.6-microblaze.git] / arch / arm / mach-at91 / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 menuconfig 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
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
20 config 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
35 config 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
47 config 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
60 config SOC_AT91RM9200
61         bool "AT91RM9200"
62         depends on ARCH_MULTI_V4T
63         select ATMEL_AIC_IRQ
64         select ATMEL_PM if PM
65         select ATMEL_ST
66         select CPU_ARM920T
67         select HAVE_AT91_USB_CLK
68         select PINCTRL_AT91
69         select SOC_SAM_V4_V5
70         select SRAM if PM
71         help
72           Select this if you are using Microchip's AT91RM9200 SoC.
73
74 config SOC_AT91SAM9
75         bool "AT91SAM9"
76         depends on ARCH_MULTI_V5
77         select ATMEL_AIC_IRQ
78         select ATMEL_PM if PM
79         select ATMEL_SDRAMC
80         select CPU_ARM926T
81         select HAVE_AT91_SMD
82         select HAVE_AT91_USB_CLK
83         select HAVE_AT91_UTMI
84         select HAVE_FB_ATMEL
85         select MEMORY
86         select PINCTRL_AT91
87         select SOC_SAM_V4_V5
88         select SRAM if PM
89         help
90           Select this if you are using one of those Microchip SoC:
91             AT91SAM9260
92             AT91SAM9261
93             AT91SAM9263
94             AT91SAM9G15
95             AT91SAM9G20
96             AT91SAM9G25
97             AT91SAM9G35
98             AT91SAM9G45
99             AT91SAM9G46
100             AT91SAM9M10
101             AT91SAM9M11
102             AT91SAM9N12
103             AT91SAM9RL
104             AT91SAM9X25
105             AT91SAM9X35
106             AT91SAM9XE
107
108 config SOC_SAM9X60
109         bool "SAM9X60"
110         depends on ARCH_MULTI_V5
111         select ATMEL_AIC5_IRQ
112         select ATMEL_PM if PM
113         select ATMEL_SDRAMC
114         select CPU_ARM926T
115         select HAVE_AT91_USB_CLK
116         select HAVE_AT91_GENERATED_CLK
117         select HAVE_AT91_SAM9X60_PLL
118         select MEMORY
119         select PINCTRL_AT91
120         select SOC_SAM_V4_V5
121         select SRAM if PM
122         help
123           Select this if you are using Microchip's SAM9X60 SoC
124
125 comment "Clocksource driver selection"
126
127 config ATMEL_CLOCKSOURCE_PIT
128         bool "Periodic Interval Timer (PIT) support"
129         depends on SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAMA5
130         default SOC_AT91SAM9 || SOC_SAMA5
131         select ATMEL_PIT
132         help
133           Select this to get a clocksource based on the Atmel Periodic Interval
134           Timer. It has a relatively low resolution and the TC Block clocksource
135           should be preferred.
136
137 config ATMEL_CLOCKSOURCE_TCB
138         bool "Timer Counter Blocks (TCB) support"
139         default SOC_AT91RM9200 || SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAMA5
140         select ATMEL_TCB_CLKSRC
141         help
142           Select this to get a high precision clocksource based on a
143           TC block with a 5+ MHz base clock rate.
144           On platforms with 16-bit counters, two timer channels are combined
145           to make a single 32-bit timer.
146           It can also be used as a clock event device supporting oneshot mode.
147
148 config HAVE_AT91_UTMI
149         bool
150
151 config HAVE_AT91_USB_CLK
152         bool
153
154 config COMMON_CLK_AT91
155         bool
156         select MFD_SYSCON
157
158 config HAVE_AT91_SMD
159         bool
160
161 config HAVE_AT91_H32MX
162         bool
163
164 config HAVE_AT91_GENERATED_CLK
165         bool
166
167 config HAVE_AT91_AUDIO_PLL
168         bool
169
170 config HAVE_AT91_I2S_MUX_CLK
171         bool
172
173 config HAVE_AT91_SAM9X60_PLL
174         bool
175
176 config SOC_SAM_V4_V5
177         bool
178
179 config SOC_SAM_V7
180         bool
181
182 config SOC_SAMA5
183         bool
184         select ATMEL_AIC5_IRQ
185         select ATMEL_PM if PM
186         select ATMEL_SDRAMC
187         select MEMORY
188         select SOC_SAM_V7
189         select SRAM if PM
190
191 config ATMEL_PM
192         bool
193
194 endif