summaryrefslogtreecommitdiffstats
path: root/sys/boot
diff options
context:
space:
mode:
Diffstat (limited to 'sys/boot')
-rw-r--r--sys/boot/efi/libefi/elf_freebsd.c2
-rw-r--r--sys/boot/efi/loader/version2
-rw-r--r--sys/boot/ia64/common/exec.c2
-rw-r--r--sys/boot/ia64/efi/version2
4 files changed, 6 insertions, 2 deletions
diff --git a/sys/boot/efi/libefi/elf_freebsd.c b/sys/boot/efi/libefi/elf_freebsd.c
index 2aaaa39..1d99d72 100644
--- a/sys/boot/efi/libefi/elf_freebsd.c
+++ b/sys/boot/efi/libefi/elf_freebsd.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;;");
}
diff --git a/sys/boot/efi/loader/version b/sys/boot/efi/loader/version
index ce84d78..b1f04d7 100644
--- a/sys/boot/efi/loader/version
+++ b/sys/boot/efi/loader/version
@@ -3,6 +3,8 @@ $FreeBSD$
NOTE ANY CHANGES YOU MAKE TO THE BOOTBLOCKS HERE. The format of this
file is important. Make sure the current version number is on line 6.
+0.3: Pass the physical address of the bootinfo block in register r8
+ to the kernel. Continue to put it at the fixed address for now.
0.2: Much improved version. Significant is the support for passing
the FPSWA interface pointer to the kernel.
0.1: Initial EFI version, germinated from the NetBSD i386
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;;");
}
diff --git a/sys/boot/ia64/efi/version b/sys/boot/ia64/efi/version
index ce84d78..b1f04d7 100644
--- a/sys/boot/ia64/efi/version
+++ b/sys/boot/ia64/efi/version
@@ -3,6 +3,8 @@ $FreeBSD$
NOTE ANY CHANGES YOU MAKE TO THE BOOTBLOCKS HERE. The format of this
file is important. Make sure the current version number is on line 6.
+0.3: Pass the physical address of the bootinfo block in register r8
+ to the kernel. Continue to put it at the fixed address for now.
0.2: Much improved version. Significant is the support for passing
the FPSWA interface pointer to the kernel.
0.1: Initial EFI version, germinated from the NetBSD i386
OpenPOWER on IntegriCloud