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