From 595cf90a367c18e6f6c85773e94265b562d75364 Mon Sep 17 00:00:00 2001 From: Ioannis Glaropoulos Date: Tue, 14 May 2019 11:28:31 +0200 Subject: [PATCH 1/3] arch: arm: mpu: move internal API inside arch/arm/cortex_m/mpu arm_core_mpu_dev.h is an internal API, and is not supposed to be directly called by kernel / application functions, therefore, we can move it inside arch/arm/core/cortex_m/mpu directory. Signed-off-by: Ioannis Glaropoulos --- arch/arm/core/cortex_m/mpu/arm_core_mpu.c | 2 +- .../arch/arm => arch/arm/core}/cortex_m/mpu/arm_core_mpu_dev.h | 0 arch/arm/core/cortex_m/mpu/arm_mpu.c | 2 +- arch/arm/core/cortex_m/mpu/nxp_mpu.c | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) rename {include/arch/arm => arch/arm/core}/cortex_m/mpu/arm_core_mpu_dev.h (100%) diff --git a/arch/arm/core/cortex_m/mpu/arm_core_mpu.c b/arch/arm/core/cortex_m/mpu/arm_core_mpu.c index 4a380a794675c..670eed0e83855 100644 --- a/arch/arm/core/cortex_m/mpu/arm_core_mpu.c +++ b/arch/arm/core/cortex_m/mpu/arm_core_mpu.c @@ -9,7 +9,7 @@ #include #include -#include +#include "arm_core_mpu_dev.h" #include #define LOG_LEVEL CONFIG_MPU_LOG_LEVEL diff --git a/include/arch/arm/cortex_m/mpu/arm_core_mpu_dev.h b/arch/arm/core/cortex_m/mpu/arm_core_mpu_dev.h similarity index 100% rename from include/arch/arm/cortex_m/mpu/arm_core_mpu_dev.h rename to arch/arm/core/cortex_m/mpu/arm_core_mpu_dev.h diff --git a/arch/arm/core/cortex_m/mpu/arm_mpu.c b/arch/arm/core/cortex_m/mpu/arm_mpu.c index 6ace1d66bcc82..b847450f7f656 100644 --- a/arch/arm/core/cortex_m/mpu/arm_mpu.c +++ b/arch/arm/core/cortex_m/mpu/arm_mpu.c @@ -8,7 +8,7 @@ #include #include #include -#include +#include "arm_core_mpu_dev.h" #include #include diff --git a/arch/arm/core/cortex_m/mpu/nxp_mpu.c b/arch/arm/core/cortex_m/mpu/nxp_mpu.c index e26c7de45604a..cb6bbf54c5082 100644 --- a/arch/arm/core/cortex_m/mpu/nxp_mpu.c +++ b/arch/arm/core/cortex_m/mpu/nxp_mpu.c @@ -8,7 +8,7 @@ #include #include #include -#include +#include "arm_core_mpu_dev.h" #include #include #include From fc06809cf02634294b1150310c128cd1e3b36a68 Mon Sep 17 00:00:00 2001 From: Ioannis Glaropoulos Date: Tue, 14 May 2019 11:44:05 +0200 Subject: [PATCH 2/3] tests: kernel: userspace: explicitly declare function for the test In the wake of moving the internal API header arm_core_mpu_dev.h into arch/arm/cortex_m/mpu, we need to explicitly declare the arm_core_mpu_disable() function in the userspace test. Note that arm_core_mpu_disable() (as any other function in this internal API) is not supposed to be called directly by kernel/application functions; an exception is allowed in this test suite, so we are able to test the MPU disabling functionality. Signed-off-by: Ioannis Glaropoulos --- tests/kernel/mem_protect/userspace/src/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/kernel/mem_protect/userspace/src/main.c b/tests/kernel/mem_protect/userspace/src/main.c index 3a7a312c38ca9..cd4d53618dc79 100644 --- a/tests/kernel/mem_protect/userspace/src/main.c +++ b/tests/kernel/mem_protect/userspace/src/main.c @@ -23,7 +23,7 @@ #endif #if defined(CONFIG_ARM) -#include +extern void arm_core_mpu_disable(void); #endif #define INFO(fmt, ...) printk(fmt, ##__VA_ARGS__) From 7720d45465f2caf62728483383bb41f5c9ebb2a7 Mon Sep 17 00:00:00 2001 From: Ioannis Glaropoulos Date: Wed, 15 May 2019 14:10:00 +0200 Subject: [PATCH 3/3] arch: arm: mpu: remove arm_core_mpu_enable/disable internal API arm_core_mpu_enable() and arm_core_mpu_disable() functions are effectively static functions, only used in the drivers for ARM and NXP MPU, therefore, we do not need to expose them in the arm_core_mpu_dev.h header. Signed-off-by: Ioannis Glaropoulos --- arch/arm/core/cortex_m/mpu/arm_core_mpu_dev.h | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/arch/arm/core/cortex_m/mpu/arm_core_mpu_dev.h b/arch/arm/core/cortex_m/mpu/arm_core_mpu_dev.h index 0f813592fb83d..d55a06a9366ed 100644 --- a/arch/arm/core/cortex_m/mpu/arm_core_mpu_dev.h +++ b/arch/arm/core/cortex_m/mpu/arm_core_mpu_dev.h @@ -106,16 +106,6 @@ struct k_thread; * ARM_MPU support. */ -/** - * @brief enable the MPU - */ -void arm_core_mpu_enable(void); - -/** - * @brief disable the MPU - */ -void arm_core_mpu_disable(void); - /** * @brief configure a set of fixed (static) MPU regions *