audk/ArmPkg
Ard Biesheuvel 54d8d4dc97 ArmPkg/Mmu: do not configure block translations at level 0
Now that the AArch64 MMU code correctly identifies and handles
naturally aligned regions of more than 2 MB in size, it will happily
try to use block mappings at level 0 to map huge memory regions, such
as the single cacheable 1:1 mapping we use for Xen domU to map the
entire PA space. However, block mappings are not supported at level 0
so the resulting translation tables will be incorrect, causing
execution to fail as soon as the MMU is enabled.

So use level 1 as the minimum level at which to perform block
translations.

Reported-by: Julien Grall <julien.grall@citrix.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Tested-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18568 6f19259b-4bc3-4df7-8a09-765794883524
2015-10-02 14:48:21 +00:00
..
Application/LinuxLoader ArmPkg/Application: Add new EFI application to boot Linux 2015-07-06 16:49:40 +00:00
Drivers ArmPkg/CpuDxe: Disable interrupt before restoring context 2015-09-24 17:05:39 +00:00
Filesystem/SemihostFs ArmPkg/SemihostFs: Implement SetInfo() and handle seeking past the end of a file 2014-10-27 10:42:51 +00:00
Include ArmPkg: remove ARMv6 support code 2015-08-19 10:51:59 +00:00
Library ArmPkg/Mmu: do not configure block translations at level 0 2015-10-02 14:48:21 +00:00
ArmPkg.dec ArmPkg: split off ArmGicArchLib from ArmGicLib 2015-07-28 20:44:44 +00:00
ArmPkg.dsc ArmPkg: remove ARMv6 support code 2015-08-19 10:51:59 +00:00
Contributions.txt */Contributions.txt: Update example email address 2015-02-03 17:29:14 +00:00
License.txt EDK II Packages: Added License.txt files 2012-04-12 16:40:32 +00:00