ArmPkg/ArmMmuLib: Introduce region types for RO/XP WB cached memory
To prepare for the enablement of booting EFI with the SCTLR.WXN control enabled, which makes all writeable memory regions non-executable by default, introduce a memory type that we will use to describe the flash region that carries the SEC and PEIM modules that execute in place. Even if these are implicitly read-only due to the ROM nature, they need to be mapped with read-only attributes in the page tables to be able to execute from them. Also add the XP counterpart which will be used for all normal DRAM right at the outset. Signed-off-by: Ard Biesheuvel <ardb@kernel.org> Reviewed-by: Leif Lindholm <quic_llindhol@quicinc.com>
This commit is contained in:
committed by
mergify[bot]
parent
852227a9d5
commit
b05523a4e9
@@ -35,6 +35,12 @@ typedef enum {
|
||||
// Do NOT use below two attributes if you are not sure.
|
||||
ARM_MEMORY_REGION_ATTRIBUTE_WRITE_BACK_NONSHAREABLE,
|
||||
|
||||
// Special region types for memory that must be mapped with read-only or
|
||||
// non-execute permissions from the very start, e.g., to support the use
|
||||
// of the WXN virtual memory control.
|
||||
ARM_MEMORY_REGION_ATTRIBUTE_WRITE_BACK_RO,
|
||||
ARM_MEMORY_REGION_ATTRIBUTE_WRITE_BACK_XP,
|
||||
|
||||
ARM_MEMORY_REGION_ATTRIBUTE_WRITE_THROUGH,
|
||||
ARM_MEMORY_REGION_ATTRIBUTE_DEVICE,
|
||||
} ARM_MEMORY_REGION_ATTRIBUTES;
|
||||
|
Reference in New Issue
Block a user