From a15f32f58cdb813078fc2448d494b10a9b6b78f8 Mon Sep 17 00:00:00 2001 From: Anas Nashif Date: Fri, 26 Mar 2021 09:30:06 -0400 Subject: [PATCH] portability: move cmsis APIs to subsys/portability Move cmsis OS apis under subsystem/portability. Those are not libraries and only serve to provide a level of abstraction using the CMSIS OS APIs to existing Zephyr interfaces. Signed-off-by: Anas Nashif --- lib/CMakeLists.txt | 2 -- lib/Kconfig | 4 ---- subsys/CMakeLists.txt | 1 + subsys/Kconfig | 2 ++ subsys/portability/CMakeLists.txt | 4 ++++ subsys/portability/Kconfig | 10 ++++++++++ .../portability}/cmsis_rtos_v1/CMakeLists.txt | 0 {lib => subsys/portability}/cmsis_rtos_v1/Kconfig | 0 .../portability}/cmsis_rtos_v1/cmsis_kernel.c | 0 .../portability}/cmsis_rtos_v1/cmsis_mailq.c | 0 .../portability}/cmsis_rtos_v1/cmsis_mempool.c | 0 {lib => subsys/portability}/cmsis_rtos_v1/cmsis_msgq.c | 0 .../portability}/cmsis_rtos_v1/cmsis_mutex.c | 0 .../portability}/cmsis_rtos_v1/cmsis_semaphore.c | 0 .../portability}/cmsis_rtos_v1/cmsis_signal.c | 0 .../portability}/cmsis_rtos_v1/cmsis_thread.c | 0 .../portability}/cmsis_rtos_v1/cmsis_timer.c | 0 {lib => subsys/portability}/cmsis_rtos_v1/cmsis_wait.c | 0 .../portability}/cmsis_rtos_v2/CMakeLists.txt | 0 {lib => subsys/portability}/cmsis_rtos_v2/Kconfig | 0 .../portability}/cmsis_rtos_v2/event_flags.c | 0 {lib => subsys/portability}/cmsis_rtos_v2/kernel.c | 0 {lib => subsys/portability}/cmsis_rtos_v2/mempool.c | 0 {lib => subsys/portability}/cmsis_rtos_v2/msgq.c | 0 {lib => subsys/portability}/cmsis_rtos_v2/mutex.c | 0 {lib => subsys/portability}/cmsis_rtos_v2/semaphore.c | 0 {lib => subsys/portability}/cmsis_rtos_v2/thread.c | 0 .../portability}/cmsis_rtos_v2/thread_flags.c | 0 {lib => subsys/portability}/cmsis_rtos_v2/timer.c | 0 {lib => subsys/portability}/cmsis_rtos_v2/wrapper.h | 0 30 files changed, 17 insertions(+), 6 deletions(-) create mode 100644 subsys/portability/CMakeLists.txt create mode 100644 subsys/portability/Kconfig rename {lib => subsys/portability}/cmsis_rtos_v1/CMakeLists.txt (100%) rename {lib => subsys/portability}/cmsis_rtos_v1/Kconfig (100%) rename {lib => subsys/portability}/cmsis_rtos_v1/cmsis_kernel.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v1/cmsis_mailq.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v1/cmsis_mempool.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v1/cmsis_msgq.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v1/cmsis_mutex.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v1/cmsis_semaphore.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v1/cmsis_signal.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v1/cmsis_thread.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v1/cmsis_timer.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v1/cmsis_wait.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v2/CMakeLists.txt (100%) rename {lib => subsys/portability}/cmsis_rtos_v2/Kconfig (100%) rename {lib => subsys/portability}/cmsis_rtos_v2/event_flags.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v2/kernel.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v2/mempool.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v2/msgq.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v2/mutex.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v2/semaphore.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v2/thread.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v2/thread_flags.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v2/timer.c (100%) rename {lib => subsys/portability}/cmsis_rtos_v2/wrapper.h (100%) diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt index f91943698e6..2077e657141 100644 --- a/lib/CMakeLists.txt +++ b/lib/CMakeLists.txt @@ -4,8 +4,6 @@ if(NOT CONFIG_EXTERNAL_LIBC) add_subdirectory(libc) add_subdirectory(posix) endif() -add_subdirectory_ifdef(CONFIG_CMSIS_RTOS_V1 cmsis_rtos_v1) -add_subdirectory_ifdef(CONFIG_CMSIS_RTOS_V2 cmsis_rtos_v2) add_subdirectory(gui) add_subdirectory(os) add_subdirectory(util) diff --git a/lib/Kconfig b/lib/Kconfig index 15b478f6ee6..120b7735e24 100644 --- a/lib/Kconfig +++ b/lib/Kconfig @@ -5,10 +5,6 @@ source "lib/libc/Kconfig" menu "Additional libraries" -source "lib/cmsis_rtos_v1/Kconfig" - -source "lib/cmsis_rtos_v2/Kconfig" - source "lib/gui/Kconfig" source "lib/os/Kconfig" diff --git a/subsys/CMakeLists.txt b/subsys/CMakeLists.txt index 6fd7c8bcd07..44ec94c6fa7 100644 --- a/subsys/CMakeLists.txt +++ b/subsys/CMakeLists.txt @@ -19,6 +19,7 @@ add_subdirectory(random) add_subdirectory(storage) add_subdirectory_ifdef(CONFIG_SETTINGS settings) add_subdirectory(fb) +add_subdirectory(portability) add_subdirectory(power) add_subdirectory(stats) add_subdirectory(task_wdt) diff --git a/subsys/Kconfig b/subsys/Kconfig index cd5584b2a55..169d52ad8c2 100644 --- a/subsys/Kconfig +++ b/subsys/Kconfig @@ -38,6 +38,8 @@ source "subsys/modbus/Kconfig" source "subsys/net/Kconfig" +source "subsys/portability/Kconfig" + source "subsys/power/Kconfig" source "subsys/shell/Kconfig" diff --git a/subsys/portability/CMakeLists.txt b/subsys/portability/CMakeLists.txt new file mode 100644 index 00000000000..8ca1b9fca78 --- /dev/null +++ b/subsys/portability/CMakeLists.txt @@ -0,0 +1,4 @@ +# SPDX-License-Identifier: Apache-2.0 + +add_subdirectory_ifdef(CONFIG_CMSIS_RTOS_V1 cmsis_rtos_v1) +add_subdirectory_ifdef(CONFIG_CMSIS_RTOS_V2 cmsis_rtos_v2) diff --git a/subsys/portability/Kconfig b/subsys/portability/Kconfig new file mode 100644 index 00000000000..010160c1cb3 --- /dev/null +++ b/subsys/portability/Kconfig @@ -0,0 +1,10 @@ +# Copyright (c) 2021 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +menu "Portability" + +source "subsys/portability/cmsis_rtos_v1/Kconfig" + +source "subsys/portability/cmsis_rtos_v2/Kconfig" + +endmenu diff --git a/lib/cmsis_rtos_v1/CMakeLists.txt b/subsys/portability/cmsis_rtos_v1/CMakeLists.txt similarity index 100% rename from lib/cmsis_rtos_v1/CMakeLists.txt rename to subsys/portability/cmsis_rtos_v1/CMakeLists.txt diff --git a/lib/cmsis_rtos_v1/Kconfig b/subsys/portability/cmsis_rtos_v1/Kconfig similarity index 100% rename from lib/cmsis_rtos_v1/Kconfig rename to subsys/portability/cmsis_rtos_v1/Kconfig diff --git a/lib/cmsis_rtos_v1/cmsis_kernel.c b/subsys/portability/cmsis_rtos_v1/cmsis_kernel.c similarity index 100% rename from lib/cmsis_rtos_v1/cmsis_kernel.c rename to subsys/portability/cmsis_rtos_v1/cmsis_kernel.c diff --git a/lib/cmsis_rtos_v1/cmsis_mailq.c b/subsys/portability/cmsis_rtos_v1/cmsis_mailq.c similarity index 100% rename from lib/cmsis_rtos_v1/cmsis_mailq.c rename to subsys/portability/cmsis_rtos_v1/cmsis_mailq.c diff --git a/lib/cmsis_rtos_v1/cmsis_mempool.c b/subsys/portability/cmsis_rtos_v1/cmsis_mempool.c similarity index 100% rename from lib/cmsis_rtos_v1/cmsis_mempool.c rename to subsys/portability/cmsis_rtos_v1/cmsis_mempool.c diff --git a/lib/cmsis_rtos_v1/cmsis_msgq.c b/subsys/portability/cmsis_rtos_v1/cmsis_msgq.c similarity index 100% rename from lib/cmsis_rtos_v1/cmsis_msgq.c rename to subsys/portability/cmsis_rtos_v1/cmsis_msgq.c diff --git a/lib/cmsis_rtos_v1/cmsis_mutex.c b/subsys/portability/cmsis_rtos_v1/cmsis_mutex.c similarity index 100% rename from lib/cmsis_rtos_v1/cmsis_mutex.c rename to subsys/portability/cmsis_rtos_v1/cmsis_mutex.c diff --git a/lib/cmsis_rtos_v1/cmsis_semaphore.c b/subsys/portability/cmsis_rtos_v1/cmsis_semaphore.c similarity index 100% rename from lib/cmsis_rtos_v1/cmsis_semaphore.c rename to subsys/portability/cmsis_rtos_v1/cmsis_semaphore.c diff --git a/lib/cmsis_rtos_v1/cmsis_signal.c b/subsys/portability/cmsis_rtos_v1/cmsis_signal.c similarity index 100% rename from lib/cmsis_rtos_v1/cmsis_signal.c rename to subsys/portability/cmsis_rtos_v1/cmsis_signal.c diff --git a/lib/cmsis_rtos_v1/cmsis_thread.c b/subsys/portability/cmsis_rtos_v1/cmsis_thread.c similarity index 100% rename from lib/cmsis_rtos_v1/cmsis_thread.c rename to subsys/portability/cmsis_rtos_v1/cmsis_thread.c diff --git a/lib/cmsis_rtos_v1/cmsis_timer.c b/subsys/portability/cmsis_rtos_v1/cmsis_timer.c similarity index 100% rename from lib/cmsis_rtos_v1/cmsis_timer.c rename to subsys/portability/cmsis_rtos_v1/cmsis_timer.c diff --git a/lib/cmsis_rtos_v1/cmsis_wait.c b/subsys/portability/cmsis_rtos_v1/cmsis_wait.c similarity index 100% rename from lib/cmsis_rtos_v1/cmsis_wait.c rename to subsys/portability/cmsis_rtos_v1/cmsis_wait.c diff --git a/lib/cmsis_rtos_v2/CMakeLists.txt b/subsys/portability/cmsis_rtos_v2/CMakeLists.txt similarity index 100% rename from lib/cmsis_rtos_v2/CMakeLists.txt rename to subsys/portability/cmsis_rtos_v2/CMakeLists.txt diff --git a/lib/cmsis_rtos_v2/Kconfig b/subsys/portability/cmsis_rtos_v2/Kconfig similarity index 100% rename from lib/cmsis_rtos_v2/Kconfig rename to subsys/portability/cmsis_rtos_v2/Kconfig diff --git a/lib/cmsis_rtos_v2/event_flags.c b/subsys/portability/cmsis_rtos_v2/event_flags.c similarity index 100% rename from lib/cmsis_rtos_v2/event_flags.c rename to subsys/portability/cmsis_rtos_v2/event_flags.c diff --git a/lib/cmsis_rtos_v2/kernel.c b/subsys/portability/cmsis_rtos_v2/kernel.c similarity index 100% rename from lib/cmsis_rtos_v2/kernel.c rename to subsys/portability/cmsis_rtos_v2/kernel.c diff --git a/lib/cmsis_rtos_v2/mempool.c b/subsys/portability/cmsis_rtos_v2/mempool.c similarity index 100% rename from lib/cmsis_rtos_v2/mempool.c rename to subsys/portability/cmsis_rtos_v2/mempool.c diff --git a/lib/cmsis_rtos_v2/msgq.c b/subsys/portability/cmsis_rtos_v2/msgq.c similarity index 100% rename from lib/cmsis_rtos_v2/msgq.c rename to subsys/portability/cmsis_rtos_v2/msgq.c diff --git a/lib/cmsis_rtos_v2/mutex.c b/subsys/portability/cmsis_rtos_v2/mutex.c similarity index 100% rename from lib/cmsis_rtos_v2/mutex.c rename to subsys/portability/cmsis_rtos_v2/mutex.c diff --git a/lib/cmsis_rtos_v2/semaphore.c b/subsys/portability/cmsis_rtos_v2/semaphore.c similarity index 100% rename from lib/cmsis_rtos_v2/semaphore.c rename to subsys/portability/cmsis_rtos_v2/semaphore.c diff --git a/lib/cmsis_rtos_v2/thread.c b/subsys/portability/cmsis_rtos_v2/thread.c similarity index 100% rename from lib/cmsis_rtos_v2/thread.c rename to subsys/portability/cmsis_rtos_v2/thread.c diff --git a/lib/cmsis_rtos_v2/thread_flags.c b/subsys/portability/cmsis_rtos_v2/thread_flags.c similarity index 100% rename from lib/cmsis_rtos_v2/thread_flags.c rename to subsys/portability/cmsis_rtos_v2/thread_flags.c diff --git a/lib/cmsis_rtos_v2/timer.c b/subsys/portability/cmsis_rtos_v2/timer.c similarity index 100% rename from lib/cmsis_rtos_v2/timer.c rename to subsys/portability/cmsis_rtos_v2/timer.c diff --git a/lib/cmsis_rtos_v2/wrapper.h b/subsys/portability/cmsis_rtos_v2/wrapper.h similarity index 100% rename from lib/cmsis_rtos_v2/wrapper.h rename to subsys/portability/cmsis_rtos_v2/wrapper.h