X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=ArmPkg%2FDrivers%2FCpuDxe%2FAArch64%2FMmu.c;fp=ArmPkg%2FDrivers%2FCpuDxe%2FAArch64%2FMmu.c;h=6cba1218c61c532e7f18a7437b32fe2ec80f4a51;hp=95bf10bcb2b0502b8c83266d3a9fc64f1552dbad;hb=48ef4e4276fcd748f10f9a12f8dad6cc3c62ee01;hpb=7da62bc02d70f11d6294efc71ccebb65199655d0 diff --git a/ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c b/ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c index 95bf10bcb2..6cba1218c6 100644 --- a/ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c +++ b/ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c @@ -32,9 +32,8 @@ GetFirstPageAttribute ( // Get the first entry of the table FirstEntry = *FirstLevelTableAddress; - if ((FirstEntry & TT_TYPE_MASK) == TT_TYPE_TABLE_ENTRY) { + if ((TableLevel != 3) && (FirstEntry & TT_TYPE_MASK) == TT_TYPE_TABLE_ENTRY) { // Only valid for Levels 0, 1 and 2 - ASSERT (TableLevel < 3); // Get the attribute of the subsequent table return GetFirstPageAttribute ((UINT64*)(FirstEntry & TT_ADDRESS_MASK_DESCRIPTION_TABLE), TableLevel + 1);