xref: /openbmc/linux/arch/arm/mach-at91/Kconfig (revision c819e2cf)
1if ARCH_AT91
2
3config HAVE_AT91_UTMI
4	bool
5
6config HAVE_AT91_USB_CLK
7	bool
8
9config HAVE_AT91_DBGU0
10	bool
11
12config HAVE_AT91_DBGU1
13	bool
14
15config HAVE_AT91_DBGU2
16	bool
17
18config COMMON_CLK_AT91
19	bool
20	select COMMON_CLK
21
22config HAVE_AT91_SMD
23	bool
24
25config HAVE_AT91_H32MX
26	bool
27
28config SOC_AT91SAM9
29	bool
30	select ATMEL_AIC_IRQ
31	select COMMON_CLK_AT91
32	select CPU_ARM926T
33	select GENERIC_CLOCKEVENTS
34	select MEMORY
35	select ATMEL_SDRAMC
36
37config SOC_SAMA5
38	bool
39	select ATMEL_AIC5_IRQ
40	select COMMON_CLK_AT91
41	select CPU_V7
42	select GENERIC_CLOCKEVENTS
43	select MEMORY
44	select ATMEL_SDRAMC
45	select PHYLIB if NETDEVICES
46
47menu "Atmel AT91 System-on-Chip"
48
49choice
50
51	prompt "Core type"
52
53config SOC_SAM_V4_V5
54	bool "ARM9 AT91SAM9/AT91RM9200"
55	help
56	  Select this if you are using one of Atmel's AT91SAM9 or
57	  AT91RM9200 SoC.
58
59config SOC_SAM_V7
60	bool "Cortex A5"
61	help
62	  Select this if you are using one of Atmel's SAMA5D3 SoC.
63
64endchoice
65
66comment "Atmel AT91 Processor"
67
68if SOC_SAM_V7
69config SOC_SAMA5D3
70	bool "SAMA5D3 family"
71	select SOC_SAMA5
72	select HAVE_FB_ATMEL
73	select HAVE_AT91_DBGU1
74	select HAVE_AT91_UTMI
75	select HAVE_AT91_SMD
76	select HAVE_AT91_USB_CLK
77	help
78	  Select this if you are using one of Atmel's SAMA5D3 family SoC.
79	  This support covers SAMA5D31, SAMA5D33, SAMA5D34, SAMA5D35, SAMA5D36.
80
81config SOC_SAMA5D4
82	bool "SAMA5D4 family"
83	select SOC_SAMA5
84	select HAVE_AT91_DBGU2
85	select CLKSRC_MMIO
86	select CACHE_L2X0
87	select CACHE_PL310
88	select HAVE_FB_ATMEL
89	select HAVE_AT91_UTMI
90	select HAVE_AT91_SMD
91	select HAVE_AT91_USB_CLK
92	select HAVE_AT91_H32MX
93	help
94	  Select this if you are using one of Atmel's SAMA5D4 family SoC.
95endif
96
97if SOC_SAM_V4_V5
98config SOC_AT91RM9200
99	bool "AT91RM9200"
100	select ATMEL_AIC_IRQ
101	select COMMON_CLK_AT91
102	select CPU_ARM920T
103	select GENERIC_CLOCKEVENTS
104	select HAVE_AT91_DBGU0
105	select HAVE_AT91_USB_CLK
106
107config SOC_AT91SAM9260
108	bool "AT91SAM9260, AT91SAM9XE or AT91SAM9G20"
109	select HAVE_AT91_DBGU0
110	select SOC_AT91SAM9
111	select HAVE_AT91_USB_CLK
112	help
113	  Select this if you are using one of Atmel's AT91SAM9260, AT91SAM9XE
114	  or AT91SAM9G20 SoC.
115
116config SOC_AT91SAM9261
117	bool "AT91SAM9261 or AT91SAM9G10"
118	select HAVE_AT91_DBGU0
119	select HAVE_FB_ATMEL
120	select SOC_AT91SAM9
121	select HAVE_AT91_USB_CLK
122	help
123	  Select this if you are using one of Atmel's AT91SAM9261 or AT91SAM9G10 SoC.
124
125config SOC_AT91SAM9263
126	bool "AT91SAM9263"
127	select HAVE_AT91_DBGU1
128	select HAVE_FB_ATMEL
129	select SOC_AT91SAM9
130	select HAVE_AT91_USB_CLK
131
132config SOC_AT91SAM9RL
133	bool "AT91SAM9RL"
134	select HAVE_AT91_DBGU0
135	select HAVE_FB_ATMEL
136	select SOC_AT91SAM9
137	select HAVE_AT91_UTMI
138
139config SOC_AT91SAM9G45
140	bool "AT91SAM9G45 or AT91SAM9M10 families"
141	select HAVE_AT91_DBGU1
142	select HAVE_FB_ATMEL
143	select SOC_AT91SAM9
144	select HAVE_AT91_UTMI
145	select HAVE_AT91_USB_CLK
146	help
147	  Select this if you are using one of Atmel's AT91SAM9G45 family SoC.
148	  This support covers AT91SAM9G45, AT91SAM9G46, AT91SAM9M10 and AT91SAM9M11.
149
150config SOC_AT91SAM9X5
151	bool "AT91SAM9x5 family"
152	select HAVE_AT91_DBGU0
153	select HAVE_FB_ATMEL
154	select SOC_AT91SAM9
155	select HAVE_AT91_UTMI
156	select HAVE_AT91_SMD
157	select HAVE_AT91_USB_CLK
158	help
159	  Select this if you are using one of Atmel's AT91SAM9x5 family SoC.
160	  This means that your SAM9 name finishes with a '5' (except if it is
161	  AT91SAM9G45!).
162	  This support covers AT91SAM9G15, AT91SAM9G25, AT91SAM9X25, AT91SAM9G35
163	  and AT91SAM9X35.
164
165config SOC_AT91SAM9N12
166	bool "AT91SAM9N12 family"
167	select HAVE_AT91_DBGU0
168	select HAVE_FB_ATMEL
169	select SOC_AT91SAM9
170	select HAVE_AT91_USB_CLK
171	help
172	  Select this if you are using Atmel's AT91SAM9N12 SoC.
173
174# ----------------------------------------------------------
175endif # SOC_SAM_V4_V5
176
177config MACH_AT91RM9200_DT
178	def_bool SOC_AT91RM9200
179
180config MACH_AT91SAM9_DT
181	def_bool SOC_AT91SAM9
182
183# ----------------------------------------------------------
184
185comment "AT91 Feature Selections"
186
187config AT91_SLOW_CLOCK
188	bool "Suspend-to-RAM disables main oscillator"
189	depends on SUSPEND
190	help
191	  Select this if you want Suspend-to-RAM to save the most power
192	  possible (without powering off the CPU) by disabling the PLLs
193	  and main oscillator so that only the 32 KiHz clock is available.
194
195	  When only that slow-clock is available, some peripherals lose
196	  functionality.  Many can't issue wakeup events unless faster
197	  clocks are available.  Some lose their operating state and
198	  need to be completely re-initialized.
199
200config AT91_TIMER_HZ
201       int "Kernel HZ (jiffies per second)"
202       range 32 1024
203       depends on ARCH_AT91
204       default "128" if SOC_AT91RM9200
205       default "100"
206       help
207	  On AT91rm9200 chips where you're using a system clock derived
208	  from the 32768 Hz hardware clock, this tick rate should divide
209	  it exactly: use a power-of-two value, such as 128 or 256, to
210	  reduce timing errors caused by rounding.
211
212	  On AT91sam926x chips, or otherwise when using a higher precision
213	  system clock (of at least several MHz), rounding is less of a
214	  problem so it can be safer to use a decimal values like 100.
215
216endmenu
217
218endif
219