mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-05-08 10:08:47 +00:00
feat(pie/por): support permission indirection and overlay
Arm v8.9 introduces a series of features providing a new way to set memory permissions. Instead of directly encoding the permissions in the page tables the PTEs contain indexes into an array of permissions stored in system registers, allowing greater flexibility and density of encoding. Enable access to these features for EL2 and below, context switching the newly added EL2 registers as appropriate. Since all of FEAT_S[12]P[IO]E are separately discoverable we have separate build time options for enabling them, but note that there is overlap in the registers that they implement and the enable bit required for lower EL access. Change the FVP platform to default to handling them as dynamic options so the right decision can be made by the code at runtime. Signed-off-by: Mark Brown <broonie@kernel.org> Change-Id: Icf89e444e39e1af768739668b505661df18fb234
This commit is contained in:
parent
2237e562fd
commit
062b6c6bf2
10 changed files with 197 additions and 1 deletions
|
@ -230,9 +230,13 @@
|
|||
|
||||
// Starting with Armv8.9
|
||||
#define CTX_TCR2_EL2 U(0x1d8)
|
||||
#define CTX_POR_EL2 U(0x1e0)
|
||||
#define CTX_PIRE0_EL2 U(0x1e8)
|
||||
#define CTX_PIR_EL2 U(0x1f0)
|
||||
#define CTX_S2PIR_EL2 U(0x1f8)
|
||||
|
||||
/* Align to the next 16 byte boundary */
|
||||
#define CTX_EL2_SYSREGS_END U(0x1e0)
|
||||
#define CTX_EL2_SYSREGS_END U(0x200)
|
||||
|
||||
#endif /* CTX_INCLUDE_EL2_REGS */
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue