linux/arch/arm64
Ard Biesheuvel e4c5a68510 arm64: KVM: use ID map with increased VA range if required
This patch modifies the HYP init code so it can deal with system
RAM residing at an offset which exceeds the reach of VA_BITS.

Like for EL1, this involves configuring an additional level of
translation for the ID map. However, in case of EL2, this implies
that all translations use the extra level, as we cannot seamlessly
switch between translation tables with different numbers of
translation levels.

So add an extra translation table at the root level. Since the
ID map and the runtime HYP map are guaranteed not to overlap, they
can share this root level, and we can essentially merge these two
tables into one.

Tested-by: Marc Zyngier <marc.zyngier@arm.com>
Reviewed-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2015-03-23 11:35:29 +00:00
..
boot dtb: change binding name to match with newer firmware DT 2015-03-04 15:54:14 -05:00
configs ARM: SoC 64-bit changes and additions 2015-02-17 09:47:46 -08:00
crypto arm64/crypto: issue aese/aesmc instructions in pairs 2015-03-19 10:43:57 +00:00
include arm64: KVM: use ID map with increased VA range if required 2015-03-23 11:35:29 +00:00
kernel arm64: mm: increase VA range of identity map 2015-03-23 11:35:29 +00:00
kvm arm64: KVM: use ID map with increased VA range if required 2015-03-23 11:35:29 +00:00
lib arm64: __clear_user: handle exceptions on strb 2014-11-13 15:21:26 +00:00
mm arm64: mm: increase VA range of identity map 2015-03-23 11:35:29 +00:00
net arm64: bpf: lift restriction on last instruction 2014-12-03 18:04:09 +00:00
xen arm: xen: implement multicall hypercall support. 2014-04-24 13:09:46 +01:00
Kconfig arm64: kconfig: increase NR_CPUS range to 2-4096. 2015-03-19 19:46:00 +00:00
Kconfig.debug arm64: add better page protections to arm64 2015-01-22 14:54:29 +00:00
Makefile arm64: Adjust EFI libstub object include logic 2015-03-17 16:59:47 +00:00