aboutsummaryrefslogtreecommitdiffstats
path: root/arch/avr32/kernel/setup.c
diff options
context:
space:
mode:
authorAndreas Bießmann <biessmann@corscience.de>2011-04-13 04:07:35 -0400
committerHans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>2011-04-13 09:46:59 -0400
commit24a1a47562b0fbb97321191dcc3a67b337b20f8f (patch)
tree4ca976a647a18658f0f80d9ec5c2856b958d395e /arch/avr32/kernel/setup.c
parentc7d876321f4cf252bc70c1995bbc077a65b3af2a (diff)
avr32: add ATAG_BOARDINFO
The ATAG_BOARDINFO is intended to hand over the information bd->bi_board_number from u-boot to the kernel. This piece of information can be used to implement some kind of board identification while booting the kernel. Therefore it is placed in .initdata section and can be accessed via the new symbol board_number only while initializing the kernel. Signed-off-by: Andreas Bießmann <biessmann@corscience.de> Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
Diffstat (limited to 'arch/avr32/kernel/setup.c')
-rw-r--r--arch/avr32/kernel/setup.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/avr32/kernel/setup.c b/arch/avr32/kernel/setup.c
index 5c7083916c3..bb0974cce4a 100644
--- a/arch/avr32/kernel/setup.c
+++ b/arch/avr32/kernel/setup.c
@@ -391,6 +391,21 @@ static int __init parse_tag_clock(struct tag *tag)
391__tagtable(ATAG_CLOCK, parse_tag_clock); 391__tagtable(ATAG_CLOCK, parse_tag_clock);
392 392
393/* 393/*
394 * The board_number correspond to the bd->bi_board_number in U-Boot. This
395 * parameter is only available during initialisation and can be used in some
396 * kind of board identification.
397 */
398u32 __initdata board_number;
399
400static int __init parse_tag_boardinfo(struct tag *tag)
401{
402 board_number = tag->u.boardinfo.board_number;
403
404 return 0;
405}
406__tagtable(ATAG_BOARDINFO, parse_tag_boardinfo);
407
408/*
394 * Scan the tag table for this tag, and call its parse function. The 409 * Scan the tag table for this tag, and call its parse function. The
395 * tag table is built by the linker from all the __tagtable 410 * tag table is built by the linker from all the __tagtable
396 * declarations. 411 * declarations.