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.
All the current platforms are now made dependent on MMU.

Signed-off-by: Ayan Kumar Halder <ayan.kumar.hal...@amd.com>
---
 xen/arch/arm/Kconfig           | 17 ++++++++++++++++-
 xen/arch/arm/platforms/Kconfig |  2 +-
 2 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 323c967361..686948cefd 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -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 if ARM
+       help
+         User can choose between the different forms of memory management 
system.
+         Most of the Arm based systems support MMU.
+
 config MMU
-       def_bool y
+       bool "MMU"
        select HAS_PMAP
        select HAS_VMAP
+       help
+         Memory management unit is supported on most Arm based systems.
+
+config MPU
+       bool "MPU"
+       help
+         Memory protection unit is supported on some Cortex-R systems.
+endchoice
 
 source "arch/Kconfig"
 
diff --git a/xen/arch/arm/platforms/Kconfig b/xen/arch/arm/platforms/Kconfig
index 76f7e76b1b..02322c259c 100644
--- a/xen/arch/arm/platforms/Kconfig
+++ b/xen/arch/arm/platforms/Kconfig
@@ -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.
-- 
2.25.1


Reply via email to