diff --git a/src/system/boot/loader/elf.cpp b/src/system/boot/loader/elf.cpp index fd4655d2a9..99495aaf93 100644 --- a/src/system/boot/loader/elf.cpp +++ b/src/system/boot/loader/elf.cpp @@ -152,7 +152,7 @@ struct ELF64Class { #else void *result; if (platform_kernel_address_to_bootloader_address(address, &result) != B_OK) { - panic("Couldn't convert address %#lx", address); + panic("Couldn't convert address %#" PRIx64, address); } return result; #endif diff --git a/src/system/boot/platform/openfirmware/mmu.cpp b/src/system/boot/platform/openfirmware/mmu.cpp index b765e8dcb1..4f47608268 100644 --- a/src/system/boot/platform/openfirmware/mmu.cpp +++ b/src/system/boot/platform/openfirmware/mmu.cpp @@ -28,6 +28,22 @@ platform_allocate_region(void **_address, size_t size, uint8 protection, } +extern "C" status_t +platform_bootloader_address_to_kernel_address(void *address, addr_t *_result) +{ + *_result = (addr_t)address; + return B_OK; +} + + +extern "C" status_t +platform_kernel_address_to_bootloader_address(addr_t address, void **_result) +{ + *_result = (void*)address; + return B_OK; +} + + status_t platform_free_region(void *address, size_t size) {