diff options
author | Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> | 2009-10-22 12:50:26 -0400 |
---|---|---|
committer | Nicolas Ferre <nicolas.ferre@atmel.com> | 2009-11-16 10:56:22 -0500 |
commit | 2ef9f59a7a3a0894be63836542f0902a45ffdd22 (patch) | |
tree | 19b3a3f831fd5bd302279f554b1fba3dcf7b40f9 /arch | |
parent | c4e4ab9f23d26498a01316428d710833fb96f214 (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/Kconfig | 53 |
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 @@ | |||
1 | if ARCH_AT91 | 1 | if ARCH_AT91 |
2 | 2 | ||
3 | config HAVE_AT91_DATAFLASH_CARD | ||
4 | bool | ||
5 | |||
6 | config HAVE_NAND_ATMEL_BUSWIDTH_16 | ||
7 | bool | ||
8 | |||
9 | config HAVE_AT91_USART3 | ||
10 | bool | ||
11 | |||
12 | config HAVE_AT91_USART4 | ||
13 | bool | ||
14 | |||
15 | config HAVE_AT91_USART5 | ||
16 | bool | ||
17 | |||
3 | menu "Atmel AT91 System-on-Chip" | 18 | menu "Atmel AT91 System-on-Chip" |
4 | 19 | ||
5 | choice | 20 | choice |
@@ -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 | ||
14 | config ARCH_AT91SAM9260 | 30 | config 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 | ||
20 | config ARCH_AT91SAM9261 | 39 | config 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 | ||
44 | config ARCH_AT91SAM9G20 | 64 | config 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 | ||
50 | config ARCH_AT91SAM9G45 | 73 | config 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 | ||
56 | config ARCH_AT91CAP9 | 80 | config ARCH_AT91CAP9 |
57 | bool "AT91CAP9" | 81 | bool "AT91CAP9" |
@@ -82,12 +106,14 @@ config MACH_ONEARM | |||
82 | 106 | ||
83 | config ARCH_AT91RM9200DK | 107 | config 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 | ||
89 | config MACH_AT91RM9200EK | 114 | config 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 | ||
136 | config MACH_ECBAT91 | 162 | config 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 | ||
169 | config MACH_AT91SAM9260EK | 196 | config 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 | ||
181 | config MACH_SAM9_L9260 | 210 | config 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 | ||
221 | config MACH_AT91SAM9261EK | 251 | config 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 | ||
235 | config MACH_AT91SAM9G10EK | 267 | config 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 | ||
249 | config MACH_AT91SAM9263EK | 283 | config 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 | ||
261 | config MACH_NEOCORE926 | 297 | config 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 | ||
287 | config MACH_AT91SAM9G20EK | 324 | config 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 | ||
293 | config MACH_AT91SAM9G20EK_2MMC | 332 | config 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 | ||
314 | config MACH_AT91SAM9G45EKES | 354 | config 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 | ||
329 | config MACH_AT91CAP9ADK | 370 | config 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 | ||
357 | config MTD_AT91_DATAFLASH_CARD | 400 | config 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 | ||
363 | config MTD_NAND_ATMEL_BUSWIDTH_16 | 406 | config 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 | ||
425 | config AT91_EARLY_USART3 | 468 | config 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 | ||
429 | config AT91_EARLY_USART4 | 472 | config AT91_EARLY_USART4 |
430 | bool "USART4" | 473 | bool "USART4" |
431 | depends on ARCH_AT91SAM9260 || ARCH_AT91SAM9G20 | 474 | depends on HAVE_AT91_USART4 |
432 | 475 | ||
433 | config AT91_EARLY_USART5 | 476 | config AT91_EARLY_USART5 |
434 | bool "USART5" | 477 | bool "USART5" |
435 | depends on ARCH_AT91SAM9260 || ARCH_AT91SAM9G20 | 478 | depends on HAVE_AT91_USART5 |
436 | 479 | ||
437 | endchoice | 480 | endchoice |
438 | 481 | ||