summaryrefslogtreecommitdiffstats
path: root/sys/boot/arm
diff options
context:
space:
mode:
authorimp <imp@FreeBSD.org>2012-05-11 14:45:29 +0000
committerimp <imp@FreeBSD.org>2012-05-11 14:45:29 +0000
commit4f44deacc1c22fda9b42e028e61d2c78097282e9 (patch)
tree482da32e97081a29f7a90d5020e4f3c1c8e82d51 /sys/boot/arm
parent2aac3bff63ca2057a8a5b12b9cf8c1335d4bd1bc (diff)
downloadFreeBSD-src-4f44deacc1c22fda9b42e028e61d2c78097282e9.zip
FreeBSD-src-4f44deacc1c22fda9b42e028e61d2c78097282e9.tar.gz
Add support for passing in the board ID.
# This doesn't implement the full Linux boot ABI for arm yet. # since there's no ATAGs list passed in for r2, and r0 has # boot options rather than 0 as specified in the standard. # Commited code to the tree won't touch any of this anyway, but # future code may be able to use this.
Diffstat (limited to 'sys/boot/arm')
-rw-r--r--sys/boot/arm/at91/boot2/boot2.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/boot/arm/at91/boot2/boot2.c b/sys/boot/arm/at91/boot2/boot2.c
index e585ada..f84ac30 100644
--- a/sys/boot/arm/at91/boot2/boot2.c
+++ b/sys/boot/arm/at91/boot2/boot2.c
@@ -86,11 +86,12 @@ static const unsigned char flags[NOPT] = {
RBX_VERBOSE
};
+unsigned board_id; /* board type to pass to kernel, if set by board_* code */
unsigned dsk_start;
static char cmd[512];
static char kname[1024];
static uint32_t opts;
-static int dsk_meta;
+static uint8_t dsk_meta;
static void load(void);
static int parse(void);
@@ -241,7 +242,7 @@ load(void)
#ifdef FIXUP_BOOT_DRV
fixup_boot_drv(staddr, klen, bootslice, bootpart);
#endif
- ((void(*)(int))addr)(opts & RBX_MASK);
+ ((void(*)(int, int, int, int))addr)(opts & RBX_MASK, board_id, 0, 0);
}
static int
OpenPOWER on IntegriCloud