aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>2009-10-22 12:50:26 -0400
committerNicolas Ferre <nicolas.ferre@atmel.com>2009-11-16 10:56:22 -0500
commit2ef9f59a7a3a0894be63836542f0902a45ffdd22 (patch)
tree19b3a3f831fd5bd302279f554b1fba3dcf7b40f9 /arch
parentc4e4ab9f23d26498a01316428d710833fb96f214 (diff)
at91: Kconfig simplification
Instead of adding "depends on" at config level, introduce HAVE_* config variables. Add them at machine or soc level to specify the ability of a particular support. It will ease new board introduction and readability. Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Acked-by: Andrew Victor <linux@maxim.org.za>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-at91/Kconfig53
1 files changed, 48 insertions, 5 deletions
diff --git a/arch/arm/mach-at91/Kconfig b/arch/arm/mach-at91/Kconfig
index 4301c6bad80c..bb4cd27c322f 100644
--- a/arch/arm/mach-at91/Kconfig
+++ b/arch/arm/mach-at91/Kconfig
@@ -1,5 +1,20 @@
1if ARCH_AT91 1if ARCH_AT91
2 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
3menu "Atmel AT91 System-on-Chip" 18menu "Atmel AT91 System-on-Chip"
4 19
5choice 20choice
@@ -10,12 +25,16 @@ config ARCH_AT91RM9200
10 select CPU_ARM920T 25 select CPU_ARM920T
11 select GENERIC_TIME 26 select GENERIC_TIME
12 select GENERIC_CLOCKEVENTS 27 select GENERIC_CLOCKEVENTS
28 select HAVE_AT91_USART3
13 29
14config ARCH_AT91SAM9260 30config ARCH_AT91SAM9260
15 bool "AT91SAM9260 or AT91SAM9XE" 31 bool "AT91SAM9260 or AT91SAM9XE"
16 select CPU_ARM926T 32 select CPU_ARM926T
17 select GENERIC_TIME 33 select GENERIC_TIME
18 select GENERIC_CLOCKEVENTS 34 select GENERIC_CLOCKEVENTS
35 select HAVE_AT91_USART3
36 select HAVE_AT91_USART4
37 select HAVE_AT91_USART5
19 38
20config ARCH_AT91SAM9261 39config ARCH_AT91SAM9261
21 bool "AT91SAM9261" 40 bool "AT91SAM9261"
@@ -40,18 +59,23 @@ config ARCH_AT91SAM9RL
40 select CPU_ARM926T 59 select CPU_ARM926T
41 select GENERIC_TIME 60 select GENERIC_TIME
42 select GENERIC_CLOCKEVENTS 61 select GENERIC_CLOCKEVENTS
62 select HAVE_AT91_USART3
43 63
44config ARCH_AT91SAM9G20 64config ARCH_AT91SAM9G20
45 bool "AT91SAM9G20" 65 bool "AT91SAM9G20"
46 select CPU_ARM926T 66 select CPU_ARM926T
47 select GENERIC_TIME 67 select GENERIC_TIME
48 select GENERIC_CLOCKEVENTS 68 select GENERIC_CLOCKEVENTS
69 select HAVE_AT91_USART3
70 select HAVE_AT91_USART4
71 select HAVE_AT91_USART5
49 72
50config ARCH_AT91SAM9G45 73config ARCH_AT91SAM9G45
51 bool "AT91SAM9G45" 74 bool "AT91SAM9G45"
52 select CPU_ARM926T 75 select CPU_ARM926T
53 select GENERIC_TIME 76 select GENERIC_TIME
54 select GENERIC_CLOCKEVENTS 77 select GENERIC_CLOCKEVENTS
78 select HAVE_AT91_USART3
55 79
56config ARCH_AT91CAP9 80config ARCH_AT91CAP9
57 bool "AT91CAP9" 81 bool "AT91CAP9"
@@ -82,12 +106,14 @@ config MACH_ONEARM
82 106
83config ARCH_AT91RM9200DK 107config ARCH_AT91RM9200DK
84 bool "Atmel AT91RM9200-DK Development board" 108 bool "Atmel AT91RM9200-DK Development board"
109 select HAVE_AT91_DATAFLASH_CARD
85 help 110 help
86 Select this if you are using Atmel's AT91RM9200-DK Development board. 111 Select this if you are using Atmel's AT91RM9200-DK Development board.
87 (Discontinued) 112 (Discontinued)
88 113
89config MACH_AT91RM9200EK 114config MACH_AT91RM9200EK
90 bool "Atmel AT91RM9200-EK Evaluation Kit" 115 bool "Atmel AT91RM9200-EK Evaluation Kit"
116 select HAVE_AT91_DATAFLASH_CARD
91 help 117 help
92 Select this if you are using Atmel's AT91RM9200-EK Evaluation Kit. 118 Select this if you are using Atmel's AT91RM9200-EK Evaluation Kit.
93 <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3507> 119 <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3507>
@@ -135,6 +161,7 @@ config MACH_KAFA
135 161
136config MACH_ECBAT91 162config MACH_ECBAT91
137 bool "emQbit ECB_AT91 SBC" 163 bool "emQbit ECB_AT91 SBC"
164 select HAVE_AT91_DATAFLASH_CARD
138 help 165 help
139 Select this if you are using emQbit's ECB_AT91 board. 166 Select this if you are using emQbit's ECB_AT91 board.
140 <http://wiki.emqbit.com/free-ecb-at91> 167 <http://wiki.emqbit.com/free-ecb-at91>
@@ -168,6 +195,8 @@ comment "AT91SAM9260 / AT91SAM9XE Board Type"
168 195
169config MACH_AT91SAM9260EK 196config MACH_AT91SAM9260EK
170 bool "Atmel AT91SAM9260-EK / AT91SAM9XE Evaluation Kit" 197 bool "Atmel AT91SAM9260-EK / AT91SAM9XE Evaluation Kit"
198 select HAVE_AT91_DATAFLASH_CARD
199 select HAVE_NAND_ATMEL_BUSWIDTH_16
171 help 200 help
172 Select this if you are using Atmel's AT91SAM9260-EK or AT91SAM9XE Evaluation Kit 201 Select this if you are using Atmel's AT91SAM9260-EK or AT91SAM9XE Evaluation Kit
173 <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3933> 202 <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3933>
@@ -180,6 +209,7 @@ config MACH_CAM60
180 209
181config MACH_SAM9_L9260 210config MACH_SAM9_L9260
182 bool "Olimex SAM9-L9260 board" 211 bool "Olimex SAM9-L9260 board"
212 select HAVE_AT91_DATAFLASH_CARD
183 help 213 help
184 Select this if you are using Olimex's SAM9-L9260 board based on the Atmel AT91SAM9260. 214 Select this if you are using Olimex's SAM9-L9260 board based on the Atmel AT91SAM9260.
185 <http://www.olimex.com/dev/sam9-L9260.html> 215 <http://www.olimex.com/dev/sam9-L9260.html>
@@ -220,6 +250,8 @@ comment "AT91SAM9261 Board Type"
220 250
221config MACH_AT91SAM9261EK 251config MACH_AT91SAM9261EK
222 bool "Atmel AT91SAM9261-EK Evaluation Kit" 252 bool "Atmel AT91SAM9261-EK Evaluation Kit"
253 select HAVE_AT91_DATAFLASH_CARD
254 select HAVE_NAND_ATMEL_BUSWIDTH_16
223 help 255 help
224 Select this if you are using Atmel's AT91SAM9261-EK Evaluation Kit. 256 Select this if you are using Atmel's AT91SAM9261-EK Evaluation Kit.
225 <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3820> 257 <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3820>
@@ -234,6 +266,8 @@ comment "AT91SAM9G10 Board Type"
234 266
235config MACH_AT91SAM9G10EK 267config MACH_AT91SAM9G10EK
236 bool "Atmel AT91SAM9G10-EK Evaluation Kit" 268 bool "Atmel AT91SAM9G10-EK Evaluation Kit"
269 select HAVE_AT91_DATAFLASH_CARD
270 select HAVE_NAND_ATMEL_BUSWIDTH_16
237 help 271 help
238 Select this if you are using Atmel's AT91SAM9G10-EK Evaluation Kit. 272 Select this if you are using Atmel's AT91SAM9G10-EK Evaluation Kit.
239 <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4588> 273 <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4588>
@@ -248,6 +282,8 @@ comment "AT91SAM9263 Board Type"
248 282
249config MACH_AT91SAM9263EK 283config MACH_AT91SAM9263EK
250 bool "Atmel AT91SAM9263-EK Evaluation Kit" 284 bool "Atmel AT91SAM9263-EK Evaluation Kit"
285 select HAVE_AT91_DATAFLASH_CARD
286 select HAVE_NAND_ATMEL_BUSWIDTH_16
251 help 287 help
252 Select this if you are using Atmel's AT91SAM9263-EK Evaluation Kit. 288 Select this if you are using Atmel's AT91SAM9263-EK Evaluation Kit.
253 <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4057> 289 <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4057>
@@ -260,6 +296,7 @@ config MACH_USB_A9263
260 296
261config MACH_NEOCORE926 297config MACH_NEOCORE926
262 bool "Adeneo NEOCORE926" 298 bool "Adeneo NEOCORE926"
299 select HAVE_AT91_DATAFLASH_CARD
263 help 300 help
264 Select this if you are using the Adeneo Neocore 926 board. 301 Select this if you are using the Adeneo Neocore 926 board.
265 302
@@ -286,12 +323,15 @@ comment "AT91SAM9G20 Board Type"
286 323
287config MACH_AT91SAM9G20EK 324config MACH_AT91SAM9G20EK
288 bool "Atmel AT91SAM9G20-EK Evaluation Kit" 325 bool "Atmel AT91SAM9G20-EK Evaluation Kit"
326 select HAVE_AT91_DATAFLASH_CARD
327 select HAVE_NAND_ATMEL_BUSWIDTH_16
289 help 328 help
290 Select this if you are using Atmel's AT91SAM9G20-EK Evaluation Kit 329 Select this if you are using Atmel's AT91SAM9G20-EK Evaluation Kit
291 that embeds only one SD/MMC slot. 330 that embeds only one SD/MMC slot.
292 331
293config MACH_AT91SAM9G20EK_2MMC 332config MACH_AT91SAM9G20EK_2MMC
294 bool "Atmel AT91SAM9G20-EK Evaluation Kit with 2 SD/MMC Slots" 333 bool "Atmel AT91SAM9G20-EK Evaluation Kit with 2 SD/MMC Slots"
334 select HAVE_NAND_ATMEL_BUSWIDTH_16
295 help 335 help
296 Select this if you are using an Atmel AT91SAM9G20-EK Evaluation Kit 336 Select this if you are using an Atmel AT91SAM9G20-EK Evaluation Kit
297 with 2 SD/MMC Slots. This is the case for AT91SAM9G20-EK rev. C and 337 with 2 SD/MMC Slots. This is the case for AT91SAM9G20-EK rev. C and
@@ -313,6 +353,7 @@ comment "AT91SAM9G45 Board Type"
313 353
314config MACH_AT91SAM9G45EKES 354config MACH_AT91SAM9G45EKES
315 bool "Atmel AT91SAM9G45-EKES Evaluation Kit" 355 bool "Atmel AT91SAM9G45-EKES Evaluation Kit"
356 select HAVE_NAND_ATMEL_BUSWIDTH_16
316 help 357 help
317 Select this if you are using Atmel's AT91SAM9G45-EKES Evaluation Kit. 358 Select this if you are using Atmel's AT91SAM9G45-EKES Evaluation Kit.
318 "ES" at the end of the name means that this board is an 359 "ES" at the end of the name means that this board is an
@@ -328,6 +369,8 @@ comment "AT91CAP9 Board Type"
328 369
329config MACH_AT91CAP9ADK 370config MACH_AT91CAP9ADK
330 bool "Atmel AT91CAP9A-DK Evaluation Kit" 371 bool "Atmel AT91CAP9A-DK Evaluation Kit"
372 select HAVE_AT91_DATAFLASH_CARD
373 select HAVE_NAND_ATMEL_BUSWIDTH_16
331 help 374 help
332 Select this if you are using Atmel's AT91CAP9A-DK Evaluation Kit. 375 Select this if you are using Atmel's AT91CAP9A-DK Evaluation Kit.
333 <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4138> 376 <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4138>
@@ -356,13 +399,13 @@ comment "AT91 Board Options"
356 399
357config MTD_AT91_DATAFLASH_CARD 400config MTD_AT91_DATAFLASH_CARD
358 bool "Enable DataFlash Card support" 401 bool "Enable DataFlash Card support"
359 depends on (ARCH_AT91RM9200DK || MACH_AT91RM9200EK || MACH_AT91SAM9260EK || MACH_AT91SAM9261EK || MACH_AT91SAM9G10EK || MACH_AT91SAM9263EK || MACH_AT91SAM9G20EK || MACH_ECBAT91 || MACH_SAM9_L9260 || MACH_AT91CAP9ADK || MACH_NEOCORE926) 402 depends on HAVE_AT91_DATAFLASH_CARD
360 help 403 help
361 Enable support for the DataFlash card. 404 Enable support for the DataFlash card.
362 405
363config MTD_NAND_ATMEL_BUSWIDTH_16 406config MTD_NAND_ATMEL_BUSWIDTH_16
364 bool "Enable 16-bit data bus interface to NAND flash" 407 bool "Enable 16-bit data bus interface to NAND flash"
365 depends on (MACH_AT91SAM9260EK || MACH_AT91SAM9261EK || MACH_AT91SAM9G10EK || MACH_AT91SAM9263EK || MACH_AT91SAM9G20EK || MACH_AT91SAM9G20EK_2MMC || MACH_AT91SAM9G45EKES || MACH_AT91CAP9ADK) 408 depends on HAVE_NAND_ATMEL_BUSWIDTH_16
366 help 409 help
367 On AT91SAM926x boards both types of NAND flash can be present 410 On AT91SAM926x boards both types of NAND flash can be present
368 (8 and 16 bit data bus width). 411 (8 and 16 bit data bus width).
@@ -424,15 +467,15 @@ config AT91_EARLY_USART2
424 467
425config AT91_EARLY_USART3 468config AT91_EARLY_USART3
426 bool "USART3" 469 bool "USART3"
427 depends on (ARCH_AT91RM9200 || ARCH_AT91SAM9RL || ARCH_AT91SAM9260 || ARCH_AT91SAM9G20 || ARCH_AT91SAM9G45) 470 depends on HAVE_AT91_USART3
428 471
429config AT91_EARLY_USART4 472config AT91_EARLY_USART4
430 bool "USART4" 473 bool "USART4"
431 depends on ARCH_AT91SAM9260 || ARCH_AT91SAM9G20 474 depends on HAVE_AT91_USART4
432 475
433config AT91_EARLY_USART5 476config AT91_EARLY_USART5
434 bool "USART5" 477 bool "USART5"
435 depends on ARCH_AT91SAM9260 || ARCH_AT91SAM9G20 478 depends on HAVE_AT91_USART5
436 479
437endchoice 480endchoice
438 481