diff options
author | Olivier Martin <Olivier.Martin@arm.com> | 2015-07-06 16:53:37 +0000 |
---|---|---|
committer | oliviermartin <oliviermartin@Edk2> | 2015-07-06 16:53:37 +0000 |
commit | c4149528d4603656fbddb21b5cba821cac90cbdb (patch) | |
tree | 05fc40738dcbc211217c4f320a46f6931c0c509d /ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c | |
parent | a786522d956d26d67df811d9170cd90b99e40615 (diff) | |
download | edk2-platforms-c4149528d4603656fbddb21b5cba821cac90cbdb.tar.xz |
ArmPkg/CpuDxe: Fixed AArch64 MMU
When the function that determines the size of a contiguous region
was returning from a sub-level table scanning it was forgetting to
move to the next entry of its own level table.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <Olivier.Martin@arm.com>
Reviewed-by: Ronald Cron <Ronald.Cron@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17832 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c')
-rw-r--r-- | ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c b/ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c index 6cba1218c6..d8bb419780 100644 --- a/ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c +++ b/ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c @@ -279,6 +279,9 @@ GetMemoryRegionRec ( if (!EFI_ERROR(Status)) {
return EFI_SUCCESS;
}
+
+ // Now we processed the table move to the next entry
+ BlockEntry++;
} else if (EntryType == BlockEntryType) {
// We have found the BlockEntry attached to the address. We save its start address (the start
// address might be before the 'BaseAdress') and attributes
|