![]() |
SuperTinyKernel™ RTOS 1.08.x
Lightweight, high-performance, deterministic, bare-metal C++ RTOS for resource-constrained embedded systems. MIT Open Source License.
|
Platform port for ARM Cortex-M. More...
#include "stk_common.h"Go to the source code of this file.
Classes | |
| class | stk::PlatformArmCortexM |
| Concrete implementation of IPlatform driver for the Arm Cortex-M0, M3, M4, M7 processors. More... | |
| struct | stk::hw::ExceptionFrame |
| ARMv7-M/ARMv8-M hardware exception frame (8 words, highest address on the stack). More... | |
| struct | stk::FaultContext |
| ARMv7-M/ARMv8-M system fault exception context state capture. More... | |
| struct | stk::FaultContext::Mpu |
| Hardware Memory Protection Unit (MPU) status register snapshot. More... | |
| struct | stk::FaultContext::Mpu::Region |
| Register snapshot for an individual hardware MPU region slot. More... | |
Namespaces | |
| namespace | stk |
| Namespace of STK package. | |
| namespace | stk::hw |
| Hardware Abstraction Layer (HAL) for architecture-specific operations. | |
Macros | |
| #define | STK_ARCH_ARMV6_M (0) |
| ARMv6-M platform (Cortex-M0, Cortex-M0+, Cortex-M1). | |
| #define | STK_ARCH_ARMV7_M (0) |
| ARMv7-M platform (Cortex-M3, Cortex-M4, Cortex-M7). | |
| #define | STK_ARCH_ARMV8_M (0) |
| ARMv8-M platform (Cortex-M23, Cortex-M33, Cortex-M55, Cortex-M85). | |
| #define | STK_TZ_SECURE (0) |
| ARM TrustZone: Defines Secure (1) build. | |
| #define | STK_TZ_NON_SECURE (0) |
| ARM TrustZone: Defines Non-Secure (1) build. | |
| #define | __stk_tz_nsc_entry |
| ARM TrustZone: attribute for Non-Secure callable gateway functions. | |
| #define | __stk_tz_ns_call |
| ARM TrustZone: attribute for calling Non-Secure functions from Secure state. | |
| #define | STK_TZ_NSC_GATEWAY extern "C" __stk_tz_nsc_entry |
| #define | STK_CORTEX_M_MPU_REGIONS_MAX (8U) |
| Number of MPU regions supported by MPU peripheral. | |
| #define | STK_MPU_SHARED_DATA_SECTION |
| #define | STK_MPU_SHARED_CODE_SECTION |
| #define | STK_MPU_SHARED_BSS_SECTION |
Typedefs | |
| typedef PlatformArmCortexM | stk::PlatformDefault |
| Default platform implementation. | |
Functions | |
| static void | __stk_dmb () |
| Hardware memory barrier: ensures visibility across cores and bus masters. | |
Platform port for ARM Cortex-M.
Definition in file stk_arch_arm-cortex-m.h.
| #define __stk_tz_ns_call |
ARM TrustZone: attribute for calling Non-Secure functions from Secure state.
Definition at line 107 of file stk_arch_arm-cortex-m.h.
| #define __stk_tz_nsc_entry |
ARM TrustZone: attribute for Non-Secure callable gateway functions.
Definition at line 98 of file stk_arch_arm-cortex-m.h.
| #define STK_ARCH_ARMV6_M (0) |
ARMv6-M platform (Cortex-M0, Cortex-M0+, Cortex-M1).
Definition at line 25 of file stk_arch_arm-cortex-m.h.
| #define STK_ARCH_ARMV7_M (0) |
ARMv7-M platform (Cortex-M3, Cortex-M4, Cortex-M7).
Definition at line 40 of file stk_arch_arm-cortex-m.h.
| #define STK_ARCH_ARMV8_M (0) |
ARMv8-M platform (Cortex-M23, Cortex-M33, Cortex-M55, Cortex-M85).
Definition at line 55 of file stk_arch_arm-cortex-m.h.
| #define STK_CORTEX_M_MPU_REGIONS_MAX (8U) |
Number of MPU regions supported by MPU peripheral.
Definition at line 131 of file stk_arch_arm-cortex-m.h.
| #define STK_MPU_SHARED_BSS_SECTION |
Definition at line 471 of file stk_arch_arm-cortex-m.h.
| #define STK_MPU_SHARED_CODE_SECTION |
Definition at line 470 of file stk_arch_arm-cortex-m.h.
| #define STK_MPU_SHARED_DATA_SECTION |
Definition at line 469 of file stk_arch_arm-cortex-m.h.
| #define STK_TZ_NON_SECURE (0) |
ARM TrustZone: Defines Non-Secure (1) build.
Definition at line 88 of file stk_arch_arm-cortex-m.h.
| #define STK_TZ_NSC_GATEWAY extern "C" __stk_tz_nsc_entry |
Definition at line 113 of file stk_arch_arm-cortex-m.h.
| #define STK_TZ_SECURE (0) |
ARM TrustZone: Defines Secure (1) build.
Definition at line 79 of file stk_arch_arm-cortex-m.h.
|
inlinestatic |
Hardware memory barrier: ensures visibility across cores and bus masters.
Definition at line 136 of file stk_arch_arm-cortex-m.h.
References __stk_forceinline.