[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH v3 52/52] xen/arm: add Kconfig option CONFIG_HAS_MPU to enable MPU system support



Introduce a Kconfig option CONFIG_HAS_MPU to enable MPU architecture
support. STATIC_MEMORY, ARCH_MAP_DOMAIN_PAGE and ARM_SECURE_STATE will
be selected by MPU system by default. Also, features like, ARM_EFI, are
not supported right now.

Current MPU system design is only for ARM 64-bit platform.

Signed-off-by: Penny Zheng <penny.zheng@xxxxxxx>
Signed-off-by: Wei Chen <wei.chen@xxxxxxx>
---
v3:
- select ARCH_MAP_DOMAIN_PAGE and ARM_SECURE_STATE
- remove platform-specific config: CONFIG_ARM_V8R
---
 xen/arch/arm/Kconfig | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 3f67aacbbf..2acdf39ec8 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -62,6 +62,7 @@ source "arch/Kconfig"
 config HAS_MMU
        bool "Memory Management Unit support in a VMSA system"
        default y
+       depends on !HAS_MPU
        select HAS_PAGING_MEMPOOL
        select HAS_PMAP
        select HAS_VMAP
@@ -70,6 +71,17 @@ config HAS_MMU
          a memory system through a set of virtual to physical address mappings 
and associated memory
          properties held in memory-mapped tables known as translation tables.
 
+config HAS_MPU
+       bool "Memory Protection Unit support in a PMSA system"
+       default n
+       depends on ARM_64
+       select ARCH_MAP_DOMAIN_PAGE
+       select ARM_SECURE_STATE
+       select STATIC_MEMORY
+       help
+         The PMSA is based on a Memory Protection Unit (MPU), which provides a 
much simpler
+         memory protection scheme than the MMU based VMSA.
+
 config HAS_FIXMAP
        bool "Provide special-purpose 4K mapping slots in a VMSA"
        depends on HAS_MMU
@@ -85,7 +97,7 @@ config ACPI
 
 config ARM_EFI
        bool "UEFI boot service support"
-       depends on ARM_64
+       depends on ARM_64 && !HAS_MPU
        default y
        help
          This option provides support for boot services through
-- 
2.25.1




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.