1if ARCH_AT91
2
3config HAVE_AT91_DATAFLASH_CARD
4	bool
5
6config HAVE_AT91_DBGU0
7	bool
8
9config HAVE_AT91_DBGU1
10	bool
11
12config HAVE_AT91_USART3
13	bool
14
15config HAVE_AT91_USART4
16	bool
17
18config HAVE_AT91_USART5
19	bool
20
21config AT91_SAM9_ALT_RESET
22	bool
23
24config AT91_SAM9G45_RESET
25	bool
26
27menu "Atmel AT91 System-on-Chip"
28
29choice
30	prompt "Atmel AT91 Processor"
31
32config ARCH_AT91RM9200
33	bool "AT91RM9200"
34	select CPU_ARM920T
35	select GENERIC_CLOCKEVENTS
36	select HAVE_AT91_DBGU0
37	select HAVE_AT91_USART3
38
39config ARCH_AT91SAM9260
40	bool "AT91SAM9260 or AT91SAM9XE"
41	select CPU_ARM926T
42	select GENERIC_CLOCKEVENTS
43	select HAVE_AT91_DBGU0
44	select HAVE_AT91_USART3
45	select HAVE_AT91_USART4
46	select HAVE_AT91_USART5
47	select HAVE_NET_MACB
48	select AT91_SAM9_ALT_RESET
49
50config ARCH_AT91SAM9261
51	bool "AT91SAM9261"
52	select CPU_ARM926T
53	select GENERIC_CLOCKEVENTS
54	select HAVE_FB_ATMEL
55	select HAVE_AT91_DBGU0
56	select AT91_SAM9_ALT_RESET
57
58config ARCH_AT91SAM9G10
59	bool "AT91SAM9G10"
60	select CPU_ARM926T
61	select GENERIC_CLOCKEVENTS
62	select HAVE_AT91_DBGU0
63	select HAVE_FB_ATMEL
64	select AT91_SAM9_ALT_RESET
65
66config ARCH_AT91SAM9263
67	bool "AT91SAM9263"
68	select CPU_ARM926T
69	select GENERIC_CLOCKEVENTS
70	select HAVE_FB_ATMEL
71	select HAVE_NET_MACB
72	select HAVE_AT91_DBGU1
73	select AT91_SAM9_ALT_RESET
74
75config ARCH_AT91SAM9RL
76	bool "AT91SAM9RL"
77	select CPU_ARM926T
78	select GENERIC_CLOCKEVENTS
79	select HAVE_AT91_USART3
80	select HAVE_FB_ATMEL
81	select HAVE_AT91_DBGU0
82	select AT91_SAM9_ALT_RESET
83
84config ARCH_AT91SAM9G20
85	bool "AT91SAM9G20"
86	select CPU_ARM926T
87	select GENERIC_CLOCKEVENTS
88	select HAVE_AT91_DBGU0
89	select HAVE_AT91_USART3
90	select HAVE_AT91_USART4
91	select HAVE_AT91_USART5
92	select HAVE_NET_MACB
93	select AT91_SAM9_ALT_RESET
94
95config ARCH_AT91SAM9G45
96	bool "AT91SAM9G45"
97	select CPU_ARM926T
98	select GENERIC_CLOCKEVENTS
99	select HAVE_AT91_USART3
100	select HAVE_FB_ATMEL
101	select HAVE_NET_MACB
102	select HAVE_AT91_DBGU1
103	select AT91_SAM9G45_RESET
104
105config ARCH_AT91CAP9
106	bool "AT91CAP9"
107	select CPU_ARM926T
108	select GENERIC_CLOCKEVENTS
109	select HAVE_FB_ATMEL
110	select HAVE_NET_MACB
111	select HAVE_AT91_DBGU1
112	select AT91_SAM9G45_RESET
113
114config ARCH_AT91X40
115	bool "AT91x40"
116	select ARCH_USES_GETTIMEOFFSET
117
118endchoice
119
120config AT91_PMC_UNIT
121	bool
122	default !ARCH_AT91X40
123
124# ----------------------------------------------------------
125
126if ARCH_AT91RM9200
127
128comment "AT91RM9200 Board Type"
129
130config MACH_ONEARM
131	bool "Ajeco 1ARM Single Board Computer"
132	help
133	  Select this if you are using Ajeco's 1ARM Single Board Computer.
134	  <http://www.ajeco.fi/>
135
136config ARCH_AT91RM9200DK
137	bool "Atmel AT91RM9200-DK Development board"
138	select HAVE_AT91_DATAFLASH_CARD
139	help
140	  Select this if you are using Atmel's AT91RM9200-DK Development board.
141	  (Discontinued)
142
143config MACH_AT91RM9200EK
144	bool "Atmel AT91RM9200-EK Evaluation Kit"
145	select HAVE_AT91_DATAFLASH_CARD
146	help
147	  Select this if you are using Atmel's AT91RM9200-EK Evaluation Kit.
148	  <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3507>
149
150config MACH_CSB337
151	bool "Cogent CSB337"
152	help
153	  Select this if you are using Cogent's CSB337 board.
154	  <http://www.cogcomp.com/csb_csb337.htm>
155
156config MACH_CSB637
157	bool "Cogent CSB637"
158	help
159	  Select this if you are using Cogent's CSB637 board.
160	  <http://www.cogcomp.com/csb_csb637.htm>
161
162config MACH_CARMEVA
163	bool "Conitec ARM&EVA"
164	help
165	  Select this if you are using Conitec's AT91RM9200-MCU-Module.
166	  <http://www.conitec.net/english/linuxboard.php>
167
168config MACH_ATEB9200
169	bool "Embest ATEB9200"
170	help
171	  Select this if you are using Embest's ATEB9200 board.
172	  <http://www.embedinfo.com/english/product/ATEB9200.asp>
173
174config MACH_KB9200
175	bool "KwikByte KB920x"
176	help
177	  Select this if you are using KwikByte's KB920x board.
178	  <http://www.kwikbyte.com/KB9202.html>
179
180config MACH_PICOTUX2XX
181	bool "picotux 200"
182	help
183	  Select this if you are using a picotux 200.
184	  <http://www.picotux.com/>
185
186config MACH_KAFA
187	bool "Sperry-Sun KAFA board"
188	help
189	  Select this if you are using Sperry-Sun's KAFA board.
190
191config MACH_ECBAT91
192	bool "emQbit ECB_AT91 SBC"
193	select HAVE_AT91_DATAFLASH_CARD
194	help
195	  Select this if you are using emQbit's ECB_AT91 board.
196	  <http://wiki.emqbit.com/free-ecb-at91>
197
198config MACH_YL9200
199	bool "ucDragon YL-9200"
200	help
201	  Select this if you are using the ucDragon YL-9200 board.
202
203config MACH_CPUAT91
204	bool "Eukrea CPUAT91"
205	help
206	  Select this if you are using the Eukrea Electromatique's
207	  CPUAT91 board <http://www.eukrea.com/>.
208
209config MACH_ECO920
210	bool "eco920"
211	help
212	  Select this if you are using the eco920 board
213
214config MACH_RSI_EWS
215	bool "RSI Embedded Webserver"
216	depends on ARCH_AT91RM9200
217	help
218	  Select this if you are using RSIs EWS board.
219endif
220
221# ----------------------------------------------------------
222
223if ARCH_AT91SAM9260
224
225comment "AT91SAM9260 Variants"
226
227comment "AT91SAM9260 / AT91SAM9XE Board Type"
228
229config MACH_AT91SAM9260EK
230	bool "Atmel AT91SAM9260-EK / AT91SAM9XE Evaluation Kit"
231	select HAVE_AT91_DATAFLASH_CARD
232	help
233	  Select this if you are using Atmel's AT91SAM9260-EK or AT91SAM9XE Evaluation Kit
234	  <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3933>
235
236config MACH_CAM60
237	bool "KwikByte KB9260 (CAM60) board"
238	help
239	  Select this if you are using KwikByte's KB9260 (CAM60) board based on the Atmel AT91SAM9260.
240	  <http://www.kwikbyte.com/KB9260.html>
241
242config MACH_SAM9_L9260
243	bool "Olimex SAM9-L9260 board"
244	select HAVE_AT91_DATAFLASH_CARD
245	help
246	  Select this if you are using Olimex's SAM9-L9260 board based on the Atmel AT91SAM9260.
247	  <http://www.olimex.com/dev/sam9-L9260.html>
248
249config MACH_AFEB9260
250	bool "Custom afeb9260 board v1"
251	help
252	  Select this if you are using custom afeb9260 board based on
253	  open hardware design. Select this for revision 1 of the board.
254	  <svn://194.85.238.22/home/users/george/svn/arm9eb>
255	  <http://groups.google.com/group/arm9fpga-evolution-board>
256
257config MACH_USB_A9260
258	bool "CALAO USB-A9260"
259	help
260	  Select this if you are using a Calao Systems USB-A9260.
261	  <http://www.calao-systems.com>
262
263config MACH_QIL_A9260
264	bool "CALAO QIL-A9260 board"
265	help
266	  Select this if you are using a Calao Systems QIL-A9260 Board.
267	  <http://www.calao-systems.com>
268
269config MACH_CPU9260
270	bool "Eukrea CPU9260 board"
271	help
272	  Select this if you are using a Eukrea Electromatique's
273	  CPU9260 Board <http://www.eukrea.com/>
274
275config MACH_FLEXIBITY
276	bool "Flexibity Connect board"
277	help
278	  Select this if you are using Flexibity Connect board
279	  <http://www.flexibity.com>
280
281endif
282
283# ----------------------------------------------------------
284
285if ARCH_AT91SAM9261
286
287comment "AT91SAM9261 Board Type"
288
289config MACH_AT91SAM9261EK
290	bool "Atmel AT91SAM9261-EK Evaluation Kit"
291	select HAVE_AT91_DATAFLASH_CARD
292	help
293	  Select this if you are using Atmel's AT91SAM9261-EK Evaluation Kit.
294	  <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3820>
295
296endif
297
298# ----------------------------------------------------------
299
300if ARCH_AT91SAM9G10
301
302comment "AT91SAM9G10 Board Type"
303
304config MACH_AT91SAM9G10EK
305	bool "Atmel AT91SAM9G10-EK Evaluation Kit"
306	select HAVE_AT91_DATAFLASH_CARD
307	help
308	  Select this if you are using Atmel's AT91SAM9G10-EK Evaluation Kit.
309	  <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4588>
310
311endif
312
313# ----------------------------------------------------------
314
315if ARCH_AT91SAM9263
316
317comment "AT91SAM9263 Board Type"
318
319config MACH_AT91SAM9263EK
320	bool "Atmel AT91SAM9263-EK Evaluation Kit"
321	select HAVE_AT91_DATAFLASH_CARD
322	help
323	  Select this if you are using Atmel's AT91SAM9263-EK Evaluation Kit.
324	  <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4057>
325
326config MACH_USB_A9263
327	bool "CALAO USB-A9263"
328	help
329	  Select this if you are using a Calao Systems USB-A9263.
330	  <http://www.calao-systems.com>
331
332config MACH_NEOCORE926
333	bool "Adeneo NEOCORE926"
334	select HAVE_AT91_DATAFLASH_CARD
335	help
336	  Select this if you are using the Adeneo Neocore 926 board.
337
338endif
339
340# ----------------------------------------------------------
341
342if ARCH_AT91SAM9RL
343
344comment "AT91SAM9RL Board Type"
345
346config MACH_AT91SAM9RLEK
347	bool "Atmel AT91SAM9RL-EK Evaluation Kit"
348	help
349	  Select this if you are using Atmel's AT91SAM9RL-EK Evaluation Kit.
350
351endif
352
353# ----------------------------------------------------------
354
355if ARCH_AT91SAM9G20
356
357comment "AT91SAM9G20 Board Type"
358
359config MACH_AT91SAM9G20EK
360	bool "Atmel AT91SAM9G20-EK Evaluation Kit"
361	select HAVE_AT91_DATAFLASH_CARD
362	help
363	  Select this if you are using Atmel's AT91SAM9G20-EK Evaluation Kit
364	  that embeds only one SD/MMC slot.
365
366config MACH_AT91SAM9G20EK_2MMC
367	depends on MACH_AT91SAM9G20EK
368	bool "Atmel AT91SAM9G20-EK Evaluation Kit with 2 SD/MMC Slots"
369	help
370	  Select this if you are using an Atmel AT91SAM9G20-EK Evaluation Kit
371	  with 2 SD/MMC Slots. This is the case for AT91SAM9G20-EK rev. C and
372	  onwards.
373
374config MACH_CPU9G20
375	bool "Eukrea CPU9G20 board"
376	help
377	  Select this if you are using a Eukrea Electromatique's
378	  CPU9G20 Board <http://www.eukrea.com/>
379
380config MACH_ACMENETUSFOXG20
381	bool "Acme Systems srl FOX Board G20"
382	help
383	  Select this if you are using Acme Systems
384	  FOX Board G20 <http://www.acmesystems.it>
385
386config MACH_PORTUXG20
387	bool "taskit PortuxG20"
388	help
389	  Select this if you are using taskit's PortuxG20.
390	  <http://www.taskit.de/en/>
391
392config MACH_STAMP9G20
393	bool "taskit Stamp9G20 CPU module"
394	help
395	  Select this if you are using taskit's Stamp9G20 CPU module on its
396	  evaluation board.
397	  <http://www.taskit.de/en/>
398
399config MACH_PCONTROL_G20
400	bool "PControl G20 CPU module"
401	help
402	  Select this if you are using taskit's Stamp9G20 CPU module on this
403	  carrier board, beeing the decentralized unit of a building automation
404	  system; featuring nvram, eth-switch, iso-rs485, display, io
405
406config MACH_GSIA18S
407	bool "GS_IA18_S board"
408	help
409	  This enables support for the GS_IA18_S board
410	  produced by GeoSIG Ltd company. This is an internet accelerograph.
411	  <http://www.geosig.com>
412
413config MACH_USB_A9G20
414	bool "CALAO USB-A9G20"
415	depends on ARCH_AT91SAM9G20
416	help
417	  Select this if you are using a Calao Systems USB-A9G20.
418	  <http://www.calao-systems.com>
419
420endif
421
422if (ARCH_AT91SAM9260 || ARCH_AT91SAM9G20)
423comment "AT91SAM9260/AT91SAM9G20 boards"
424
425config MACH_SNAPPER_9260
426        bool "Bluewater Systems Snapper 9260/9G20 module"
427        help
428          Select this if you are using the Bluewater Systems Snapper 9260 or
429          Snapper 9G20 modules.
430          <http://www.bluewatersys.com/>
431endif
432
433# ----------------------------------------------------------
434
435if ARCH_AT91SAM9G45
436
437comment "AT91SAM9G45 Board Type"
438
439config MACH_AT91SAM9M10G45EK
440	bool "Atmel AT91SAM9M10G45-EK Evaluation Kits"
441	help
442	  Select this if you are using Atmel's AT91SAM9G45-EKES Evaluation Kit.
443	  "ES" at the end of the name means that this board is an
444	  Engineering Sample.
445
446endif
447
448# ----------------------------------------------------------
449
450if ARCH_AT91CAP9
451
452comment "AT91CAP9 Board Type"
453
454config MACH_AT91CAP9ADK
455	bool "Atmel AT91CAP9A-DK Evaluation Kit"
456	select HAVE_AT91_DATAFLASH_CARD
457	help
458	  Select this if you are using Atmel's AT91CAP9A-DK Evaluation Kit.
459	  <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4138>
460
461endif
462
463# ----------------------------------------------------------
464
465if ARCH_AT91X40
466
467comment "AT91X40 Board Type"
468
469config MACH_AT91EB01
470	bool "Atmel AT91EB01 Evaluation Kit"
471	help
472	  Select this if you are using Atmel's AT91EB01 Evaluation Kit.
473	  It is also a popular target for simulators such as GDB's
474	  ARM simulator (commonly known as the ARMulator) and the
475	  Skyeye simulator.
476
477endif
478
479# ----------------------------------------------------------
480
481comment "Generic Board Type"
482
483config MACH_AT91SAM_DT
484	bool "Atmel AT91SAM Evaluation Kits with device-tree support"
485	select USE_OF
486	help
487	  Select this if you want to experiment device-tree with
488	  an Atmel Evaluation Kit.
489
490# ----------------------------------------------------------
491
492comment "AT91 Board Options"
493
494config MTD_AT91_DATAFLASH_CARD
495	bool "Enable DataFlash Card support"
496	depends on HAVE_AT91_DATAFLASH_CARD
497	help
498	  Enable support for the DataFlash card.
499
500# ----------------------------------------------------------
501
502comment "AT91 Feature Selections"
503
504config AT91_PROGRAMMABLE_CLOCKS
505	bool "Programmable Clocks"
506	help
507	  Select this if you need to program one or more of the PCK0..PCK3
508	  programmable clock outputs.
509
510config AT91_SLOW_CLOCK
511	bool "Suspend-to-RAM disables main oscillator"
512	depends on SUSPEND
513	help
514	  Select this if you want Suspend-to-RAM to save the most power
515	  possible (without powering off the CPU) by disabling the PLLs
516	  and main oscillator so that only the 32 KiHz clock is available.
517
518	  When only that slow-clock is available, some peripherals lose
519	  functionality.  Many can't issue wakeup events unless faster
520	  clocks are available.  Some lose their operating state and
521	  need to be completely re-initialized.
522
523config AT91_TIMER_HZ
524       int "Kernel HZ (jiffies per second)"
525       range 32 1024
526       depends on ARCH_AT91
527       default "128" if ARCH_AT91RM9200
528       default "100"
529       help
530	  On AT91rm9200 chips where you're using a system clock derived
531	  from the 32768 Hz hardware clock, this tick rate should divide
532	  it exactly: use a power-of-two value, such as 128 or 256, to
533	  reduce timing errors caused by rounding.
534
535	  On AT91sam926x chips, or otherwise when using a higher precision
536	  system clock (of at least several MHz), rounding is less of a
537	  problem so it can be safer to use a decimal values like 100.
538
539choice
540	prompt "Select a UART for early kernel messages"
541
542config AT91_EARLY_DBGU0
543	bool "DBGU on rm9200, 9260/9g20, 9261/9g10 and 9rl"
544	depends on HAVE_AT91_DBGU0
545
546config AT91_EARLY_DBGU1
547	bool "DBGU on 9263, 9g45 and cap9"
548	depends on HAVE_AT91_DBGU1
549
550config AT91_EARLY_USART0
551	bool "USART0"
552
553config AT91_EARLY_USART1
554	bool "USART1"
555
556config AT91_EARLY_USART2
557	bool "USART2"
558	depends on ! ARCH_AT91X40
559
560config AT91_EARLY_USART3
561	bool "USART3"
562	depends on HAVE_AT91_USART3
563
564config AT91_EARLY_USART4
565	bool "USART4"
566	depends on HAVE_AT91_USART4
567
568config AT91_EARLY_USART5
569	bool "USART5"
570	depends on HAVE_AT91_USART5
571
572endchoice
573
574endmenu
575
576endif
577