ATMEL: fix nand ecc support
[firefly-linux-kernel-4.4.55.git] / arch / arm / mach-at91 / Kconfig
1 if ARCH_AT91
2
3 config HAVE_AT91_DATAFLASH_CARD
4         bool
5
6 config HAVE_AT91_DBGU0
7         bool
8
9 config HAVE_AT91_DBGU1
10         bool
11
12 config HAVE_AT91_USART3
13         bool
14
15 config HAVE_AT91_USART4
16         bool
17
18 config HAVE_AT91_USART5
19         bool
20
21 config AT91_SAM9_ALT_RESET
22         bool
23
24 config AT91_SAM9G45_RESET
25         bool
26
27 menu "Atmel AT91 System-on-Chip"
28
29 choice
30         prompt "Atmel AT91 Processor"
31
32 config ARCH_AT91RM9200
33         bool "AT91RM9200"
34         select CPU_ARM920T
35         select GENERIC_CLOCKEVENTS
36         select HAVE_AT91_DBGU0
37         select HAVE_AT91_USART3
38
39 config 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
50 config 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
58 config 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
66 config 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
75 config 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
84 config 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
95 config 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
105 config ARCH_AT91SAM9X5
106         bool "AT91SAM9x5 family"
107         select CPU_ARM926T
108         select GENERIC_CLOCKEVENTS
109         select HAVE_FB_ATMEL
110         select HAVE_NET_MACB
111         select HAVE_AT91_DBGU0
112         select AT91_SAM9G45_RESET
113
114 config ARCH_AT91X40
115         bool "AT91x40"
116         select ARCH_USES_GETTIMEOFFSET
117
118 endchoice
119
120 config AT91_PMC_UNIT
121         bool
122         default !ARCH_AT91X40
123
124 # ----------------------------------------------------------
125
126 if ARCH_AT91RM9200
127
128 comment "AT91RM9200 Board Type"
129
130 config 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
136 config 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
143 config 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
150 config 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
156 config 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
162 config 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
168 config 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
174 config 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
180 config MACH_PICOTUX2XX
181         bool "picotux 200"
182         help
183           Select this if you are using a picotux 200.
184           <http://www.picotux.com/>
185
186 config MACH_KAFA
187         bool "Sperry-Sun KAFA board"
188         help
189           Select this if you are using Sperry-Sun's KAFA board.
190
191 config 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
198 config MACH_YL9200
199         bool "ucDragon YL-9200"
200         help
201           Select this if you are using the ucDragon YL-9200 board.
202
203 config 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
209 config MACH_ECO920
210         bool "eco920"
211         help
212           Select this if you are using the eco920 board
213
214 config 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.
219 endif
220
221 # ----------------------------------------------------------
222
223 if ARCH_AT91SAM9260
224
225 comment "AT91SAM9260 Variants"
226
227 comment "AT91SAM9260 / AT91SAM9XE Board Type"
228
229 config 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
236 config 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
242 config 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
249 config 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
257 config 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
263 config 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
269 config 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
275 config 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
281 endif
282
283 # ----------------------------------------------------------
284
285 if ARCH_AT91SAM9261
286
287 comment "AT91SAM9261 Board Type"
288
289 config 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
296 endif
297
298 # ----------------------------------------------------------
299
300 if ARCH_AT91SAM9G10
301
302 comment "AT91SAM9G10 Board Type"
303
304 config 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
311 endif
312
313 # ----------------------------------------------------------
314
315 if ARCH_AT91SAM9263
316
317 comment "AT91SAM9263 Board Type"
318
319 config 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
326 config 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
332 config 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
338 endif
339
340 # ----------------------------------------------------------
341
342 if ARCH_AT91SAM9RL
343
344 comment "AT91SAM9RL Board Type"
345
346 config 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
351 endif
352
353 # ----------------------------------------------------------
354
355 if ARCH_AT91SAM9G20
356
357 comment "AT91SAM9G20 Board Type"
358
359 config 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
366 config 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
374 config 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
380 config 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
386 config 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
392 config 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
399 config 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
406 config 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
413 config 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
420 endif
421
422 if (ARCH_AT91SAM9260 || ARCH_AT91SAM9G20)
423 comment "AT91SAM9260/AT91SAM9G20 boards"
424
425 config 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/>
431 endif
432
433 # ----------------------------------------------------------
434
435 if ARCH_AT91SAM9G45
436
437 comment "AT91SAM9G45 Board Type"
438
439 config 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
446 endif
447
448 # ----------------------------------------------------------
449
450 if ARCH_AT91X40
451
452 comment "AT91X40 Board Type"
453
454 config MACH_AT91EB01
455         bool "Atmel AT91EB01 Evaluation Kit"
456         help
457           Select this if you are using Atmel's AT91EB01 Evaluation Kit.
458           It is also a popular target for simulators such as GDB's
459           ARM simulator (commonly known as the ARMulator) and the
460           Skyeye simulator.
461
462 endif
463
464 # ----------------------------------------------------------
465
466 comment "Generic Board Type"
467
468 config MACH_AT91SAM_DT
469         bool "Atmel AT91SAM Evaluation Kits with device-tree support"
470         select USE_OF
471         help
472           Select this if you want to experiment device-tree with
473           an Atmel Evaluation Kit.
474
475 # ----------------------------------------------------------
476
477 comment "AT91 Board Options"
478
479 config MTD_AT91_DATAFLASH_CARD
480         bool "Enable DataFlash Card support"
481         depends on HAVE_AT91_DATAFLASH_CARD
482         help
483           Enable support for the DataFlash card.
484
485 # ----------------------------------------------------------
486
487 comment "AT91 Feature Selections"
488
489 config AT91_PROGRAMMABLE_CLOCKS
490         bool "Programmable Clocks"
491         help
492           Select this if you need to program one or more of the PCK0..PCK3
493           programmable clock outputs.
494
495 config AT91_SLOW_CLOCK
496         bool "Suspend-to-RAM disables main oscillator"
497         depends on SUSPEND
498         help
499           Select this if you want Suspend-to-RAM to save the most power
500           possible (without powering off the CPU) by disabling the PLLs
501           and main oscillator so that only the 32 KiHz clock is available.
502
503           When only that slow-clock is available, some peripherals lose
504           functionality.  Many can't issue wakeup events unless faster
505           clocks are available.  Some lose their operating state and
506           need to be completely re-initialized.
507
508 config AT91_TIMER_HZ
509        int "Kernel HZ (jiffies per second)"
510        range 32 1024
511        depends on ARCH_AT91
512        default "128" if ARCH_AT91RM9200
513        default "100"
514        help
515           On AT91rm9200 chips where you're using a system clock derived
516           from the 32768 Hz hardware clock, this tick rate should divide
517           it exactly: use a power-of-two value, such as 128 or 256, to
518           reduce timing errors caused by rounding.
519
520           On AT91sam926x chips, or otherwise when using a higher precision
521           system clock (of at least several MHz), rounding is less of a
522           problem so it can be safer to use a decimal values like 100.
523
524 choice
525         prompt "Select a UART for early kernel messages"
526
527 config AT91_EARLY_DBGU0
528         bool "DBGU on rm9200, 9260/9g20, 9261/9g10 and 9rl"
529         depends on HAVE_AT91_DBGU0
530
531 config AT91_EARLY_DBGU1
532         bool "DBGU on 9263 and 9g45"
533         depends on HAVE_AT91_DBGU1
534
535 config AT91_EARLY_USART0
536         bool "USART0"
537
538 config AT91_EARLY_USART1
539         bool "USART1"
540
541 config AT91_EARLY_USART2
542         bool "USART2"
543         depends on ! ARCH_AT91X40
544
545 config AT91_EARLY_USART3
546         bool "USART3"
547         depends on HAVE_AT91_USART3
548
549 config AT91_EARLY_USART4
550         bool "USART4"
551         depends on HAVE_AT91_USART4
552
553 config AT91_EARLY_USART5
554         bool "USART5"
555         depends on HAVE_AT91_USART5
556
557 endchoice
558
559 endmenu
560
561 endif