Victory!
I just booted my laptop and the ordinary Haiku disk using UEFI with this
change. So getting UEFI booting on my hard-drive is no longer on my
TODO-list.
This needs to be merged..
/Fredrik Holmqvist, TQH
sön 8 jan. 2017 kl 08:01 skrev jessicah-github.uefi-mmu-fix <
community@xxxxxxxxxxxx>:
added 1 changeset to branch 'refs/remotes/jessicah-github/uefi-mmu-fix'
old head: 0000000000000000000000000000000000000000
new head: d7ff3334445dbd75ec53778321eb94309c842722
overview: https://github.com/jessicah/haiku/compare/d7ff3334445d
----------------------------------------------------------------------------
d7ff3334445d: UEFI: leave runtime memory identity mapped.
* We don't have kernel/userspace access to UEFI at this point
either, and with some firmware, if we don't keep the
runtime memory identity mapped, then the loader dies. This
will fix booting on such machines, and shouldn't have any
impact on already working machines.
[ Jessica Hamilton <jessica.l.hamilton@xxxxxxxxx>
]
----------------------------------------------------------------------------
Commit: d7ff3334445dbd75ec53778321eb94309c842722
Author: Jessica Hamilton <jessica.l.hamilton@xxxxxxxxx>
Date: Sun Jan 8 19:33:08 2017 UTC
----------------------------------------------------------------------------
1 file changed, 1 insertion(+), 1 deletion(-)
src/system/boot/platform/efi/mmu.cpp | 2 +-
----------------------------------------------------------------------------
diff --git a/src/system/boot/platform/efi/mmu.cpp
b/src/system/boot/platform/efi/mmu.cpp
index 3567a2e..d3057c3 100644
--- a/src/system/boot/platform/efi/mmu.cpp
+++ b/src/system/boot/platform/efi/mmu.cpp
@@ -183,7 +183,7 @@ mmu_post_efi_setup(UINTN memory_map_size,
EFI_MEMORY_DESCRIPTOR *memory_map, UIN
break;
case EfiRuntimeServicesCode:
case EfiRuntimeServicesData:
- entry->VirtualStart = entry->PhysicalStart +
0xFFFFFF0000000000ull;
+ entry->VirtualStart = entry->PhysicalStart;
break;
}
}