Skip to content

Commit

Permalink
xen/arm: mpu: Introduce choice between MMU and MPU
Browse files Browse the repository at this point in the history
There are features in the forthcoming patches which are dependent on
MPU. For eg fixed start address.
Also, some of the Xen features (eg STATIC_MEMORY) will be selected
by the MPU configuration.

Thus, this patch introduces a choice between MMU and MPU for the type
of memory management system. By default, MMU is selected.
MPU is now gated by UNSUPPORTED.

Update SUPPORT.md to state that the support for MPU is experimental.
Also updated CHANGELOG.md as well.

Signed-off-by: Ayan Kumar Halder <[email protected]>
Reviewed-by: Luca Fancellu <[email protected]>
Acked-by: Julien Grall <[email protected]>
Acked-by: Oleksii Kurochko <[email protected]>
  • Loading branch information
ayankuma-amd authored and Julien Grall committed Nov 1, 2024
1 parent b75dee1 commit 0388a59
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 2 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
- Prefer ACPI reboot over UEFI ResetSystem() run time service call.

### Added
- On Arm:
- Experimental support for Armv8-R.

### Removed
- On x86:
Expand Down
1 change: 1 addition & 0 deletions SUPPORT.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ supported in this document.

Status, Xen in AArch64 mode: Supported
Status, Xen in AArch32 mode: Tech Preview
Status, Xen in Armv8-R: Experimental
Status, Cortex A57 r0p0-r1p1: Supported, not security supported
Status, Cortex A77 r0p0-r1p0: Supported, not security supported

Expand Down
17 changes: 16 additions & 1 deletion xen/arch/arm/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -58,10 +58,25 @@ config PADDR_BITS
default 40 if ARM_PA_BITS_40
default 48 if ARM_64

choice
prompt "Memory management system"
default MMU
help
User can choose between the different forms of memory management system.

config MMU
def_bool y
bool "MMU"
select HAS_PMAP
select HAS_VMAP
help
Select it if you plan to run Xen on A-profile Armv7+

config MPU
bool "MPU" if UNSUPPORTED
help
Memory Protection Unit (MPU). Select if you plan to run Xen on ARMv8-R
systems supporting EL2. (UNSUPPORTED)
endchoice

source "arch/Kconfig"

Expand Down
2 changes: 1 addition & 1 deletion xen/arch/arm/platforms/Kconfig
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
choice
prompt "Platform Support"
prompt "Platform Support" if MMU
default ALL_PLAT
help
Choose which hardware platform to enable in Xen.
Expand Down

0 comments on commit 0388a59

Please sign in to comment.