seL4/include
Rafal Kolanski fce5cece4d arm: consolidate stage 1 translation function use
This commit introduces `addressTranslateS1` to be used on Arm platforms
with hypervisor enabled for stage 1 (vaddr to IPA) translation. On
AArch32 this is a rename from `addressTranslateS1CPR`, and on AArch64 it
wraps `ats1e1r`. This changes the ABI on AArch64 to report faulting
address as IPA.

Reasoning:

With hypervisor enabled, AArch64 defined `addressTranslateS1CPR` to do
nothing, while AArch32 defined it to do stage 1 translation. This
delivered VM faults to the user with the faulting address being either
an IPA or a vaddr depending on mode. This inconsistency is undesireable.

This commit proposes adjusting the inconsistency to match AArch32
behaviour, as it is one of the verified platforms.

Signed-off-by: Rafal Kolanski <rafal.kolanski@proofcraft.systems>
2022-06-06 10:10:49 +10:00
..
32/mode replacing all ifndef with pargma once 2020-03-23 11:04:46 +11:00
64/mode replacing all ifndef with pargma once 2020-03-23 11:04:46 +11:00
api print value for unknown entry reason 2022-03-16 16:00:42 +11:00
arch arm: consolidate stage 1 translation function use 2022-06-06 10:10:49 +10:00
benchmark benchmark: config opt. name to enable log buffer 2022-03-31 08:56:06 +11:00
drivers allwinnerA20: switch to the ARM generic timer 2021-10-28 08:30:41 +11:00
fastpath replacing all ifndef with pargma once 2020-03-23 11:04:46 +11:00
kernel consolidate idle thread prototypes 2022-01-19 09:35:27 +11:00
machine debug: restructure kernel console handling 2021-05-14 13:13:36 +10:00
model mcs: Create ksIdleSC global variable 2022-01-04 19:00:24 +11:00
object Trivial: Remove now incorrect comment 2021-09-10 20:48:04 +10:00
plat pc99: use ackInterrupt() 2021-10-01 15:18:51 +10:00
smp create helper function handle_SysDebugSendIPI() 2022-01-10 11:58:30 +11:00
api.h replacing all ifndef with pargma once 2020-03-23 11:04:46 +11:00
assert.h trivial: fix typos 2022-02-27 13:10:34 +11:00
basic_types.h unify libsel4 type definitions 2021-12-06 16:48:01 +11:00
bootinfo.h boot: use helper variable to simplify code 2021-09-06 09:22:04 +10:00
compound_types.h trivial: remove superfluous empty lines 2021-09-27 23:09:09 +10:00
config.h libsel4: Fix name for AARCH64_VSPACE_S2_START_L1 2021-09-06 08:08:54 +10:00
hardware.h remove unused define KERNEL_ELF_PADDR_TOP 2021-11-17 11:29:36 +11:00
linker.h replacing all ifndef with pargma once 2020-03-23 11:04:46 +11:00
machine.h remove unnecessary brackets 2021-09-27 23:09:09 +10:00
object.h trivial: remove duplicate headers 2022-02-05 15:30:25 +11:00
stdarg.h trivial: remove superfluous empty lines 2021-09-27 23:09:09 +10:00
stdint.h print 64-bit integers on 32-bits systems fully 2021-11-26 06:01:11 +01:00
string.h trivial: remove superfluous empty lines 2021-09-27 23:09:09 +10:00
types.h trivial: remove superfluous empty lines 2021-09-27 23:09:09 +10:00
util.h make macro ARRAY_SIZE() handle corner cases 2022-03-10 18:16:00 +11:00