summaryrefslogtreecommitdiffstats
path: root/sys/boot/ia64/common
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2002-03-30 23:00:05 +0000
committermarcel <marcel@FreeBSD.org>2002-03-30 23:00:05 +0000
commit83aa1632bb0b8706135df7bb695c019511ba8169 (patch)
tree19ac7d5e267eca6c21acb4ab09acec6a684bc339 /sys/boot/ia64/common
parent84ad095a1c8ea2ab3b70872f4e100e782371e88b (diff)
downloadFreeBSD-src-83aa1632bb0b8706135df7bb695c019511ba8169.zip
FreeBSD-src-83aa1632bb0b8706135df7bb695c019511ba8169.tar.gz
Pass the physical address of the bootinfo block to the kernel in
register r8. We continue to write the bootinfo block at the same hardwired address, because the kernel still expects it there. It is expected that future kernels use register r8 to get to the bootinfo block and don't depend on the hardwired address anymore. Bump the loader version once again due to the interface change.
Diffstat (limited to 'sys/boot/ia64/common')
-rw-r--r--sys/boot/ia64/common/exec.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/boot/ia64/common/exec.c b/sys/boot/ia64/common/exec.c
index 2aaaa39..1d99d72 100644
--- a/sys/boot/ia64/common/exec.c
+++ b/sys/boot/ia64/common/exec.c
@@ -129,7 +129,7 @@ enter_kernel(u_int64_t start, struct bootinfo *bi)
__asm __volatile("mov cr.iip=%0" :: "r"(start));
__asm __volatile("mov cr.ifs=r0;;");
__asm __volatile("mov ar.rsc=0;; flushrs;;");
-
+ __asm __volatile("mov r8=%0" :: "r" (bi));
__asm __volatile("rfi;;");
}
OpenPOWER on IntegriCloud