summaryrefslogtreecommitdiff
path: root/lib_arm/bootm.c
diff options
context:
space:
mode:
authorMarian Balakowicz <m8@semihalf.com>2008-02-21 17:18:01 +0100
committerMarian Balakowicz <m8@semihalf.com>2008-02-21 17:18:01 +0100
commit20c93959330aba8b5bbdbfde1ef319e99eba235d (patch)
treeef82297e3aeb904f94584e6d136fac55ec32c317 /lib_arm/bootm.c
parent5cf746c303710329f8040d9c62ee354313e3e91f (diff)
parent928d1d77f8623c120d8763e20e1ca58df9c5c4c6 (diff)
Merge branch 'master' of /home/git/u-boot
Diffstat (limited to 'lib_arm/bootm.c')
-rw-r--r--lib_arm/bootm.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/lib_arm/bootm.c b/lib_arm/bootm.c
index 529b0975e..31c2d6722 100644
--- a/lib_arm/bootm.c
+++ b/lib_arm/bootm.c
@@ -66,6 +66,8 @@ void do_bootm_linux (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[],
ulong initrd_start, initrd_end;
void (*theKernel)(int zero, int arch, uint params);
bd_t *bd = gd->bd;
+ int machid = bd->bi_arch_number;
+ char *s;
#ifdef CONFIG_CMDLINE_TAG
char *commandline = getenv ("bootargs");
@@ -73,6 +75,12 @@ void do_bootm_linux (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[],
theKernel = (void (*)(int, int, uint))image_get_ep (hdr);
+ s = getenv ("machid");
+ if (s) {
+ machid = simple_strtoul (s, NULL, 16);
+ printf ("Using machid 0x%x from environment\n", machid);
+ }
+
get_ramdisk (cmdtp, flag, argc, argv, hdr, verify,
IH_ARCH_ARM, &initrd_start, &initrd_end);
@@ -123,7 +131,7 @@ void do_bootm_linux (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[],
cleanup_before_linux ();
- theKernel (0, bd->bi_arch_number, bd->bi_boot_params);
+ theKernel (0, machid, bd->bi_boot_params);
}