Index: boot/arch/ppc32/src/asm.S
===================================================================
--- boot/arch/ppc32/src/asm.S	(revision d59718e246e2f30ad97e0364fac7e75455fcb7d1)
+++ boot/arch/ppc32/src/asm.S	(revision 00e8290f885b3dc03a5c5a191983eb336d1e852c)
@@ -152,7 +152,4 @@
 FUNCTION_END(jump_to_kernel)
 
-.section REALMODE, "ax"
-
-.align PAGE_WIDTH
 SYMBOL(real_mode)
 
Index: boot/arch/ppc32/src/main.c
===================================================================
--- boot/arch/ppc32/src/main.c	(revision d59718e246e2f30ad97e0364fac7e75455fcb7d1)
+++ boot/arch/ppc32/src/main.c	(revision 00e8290f885b3dc03a5c5a191983eb336d1e852c)
@@ -42,4 +42,5 @@
 #include <errno.h>
 #include <payload.h>
+#include <kernel.h>
 
 #define BALLOC_MAX_SIZE  131072
@@ -68,6 +69,4 @@
 	printf(" %p|%p: real mode trampoline\n", &real_mode, real_mode_pa);
 	printf(" %p|%p: boot info structure\n", &bootinfo, bootinfo_pa);
-	printf(" %p|%p: kernel entry point\n",
-	    (void *) PA2KA(BOOT_OFFSET), (void *) BOOT_OFFSET);
 	printf(" %p|%p: loader entry point\n",
 	    (void *) LOADER_ADDRESS, loader_address_pa);
@@ -144,6 +143,7 @@
 	}
 
+	uintptr_t entry = check_kernel_translated(inflate_base, 0);
+
 	printf("Booting the kernel...\n");
-	jump_to_kernel(bootinfo_pa, transtable_pa, pages, real_mode_pa,
-	    PA2KA(BOOT_OFFSET));
+	jump_to_kernel(bootinfo_pa, transtable_pa, pages, real_mode_pa, entry);
 }
