Fixed documentation tags.

git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@14469 27425a3e-05d8-49a3-a47f-9c15f0e5edd8
This commit is contained in:
Giovanni Di Sirio 2021-06-04 14:50:58 +00:00
parent 0ce2db283b
commit f3b1bd3859
36 changed files with 105 additions and 163 deletions

View File

@ -18,7 +18,7 @@
*/ */
/** /**
* @file chcore_timer.h * @file ARM/chcore_timer.h
* @brief System timer header file. * @brief System timer header file.
* *
* @addtogroup ARM_TIMER * @addtogroup ARM_TIMER

View File

@ -21,7 +21,7 @@
* @file ARMv6-M-RP2/chcore.c * @file ARMv6-M-RP2/chcore.c
* @brief ARMv6-M-RP2 port code. * @brief ARMv6-M-RP2 port code.
* *
* @addtogroup ARMv6_M_RP2_CORE * @addtogroup ARMV6M_RP2_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv6-M-RP2/chcore.h * @file ARMv6-M-RP2/chcore.h
* @brief ARMv6-M-RP2 port macros and structures. * @brief ARMv6-M-RP2 port macros and structures.
* *
* @addtogroup ARMv6_M_RP2_CORE * @addtogroup ARMV6M_RP2_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv6-M-RP2/chcore_timer.h * @file ARMv6-M-RP2/chcore_timer.h
* @brief System timer header file. * @brief System timer header file.
* *
* @addtogroup ARMv6_M_RP2_TIMER * @addtogroup ARMV6M_RP2_TIMER
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv6-M-RP2/compilers/GCC/chcoreasm.S * @file ARMv6-M-RP2/compilers/GCC/chcoreasm.S
* @brief ARMv6-M-RP2 port low level code. * @brief ARMv6-M-RP2 port low level code.
* *
* @addtogroup ARMv6_M_RP2_GCC_CORE * @addtogroup ARMV6M_RP2_GCC_CORE
* @{ * @{
*/ */

View File

@ -19,9 +19,9 @@
/** /**
* @file ARMv6-M-RP2/compilers/GCC/chtypes.h * @file ARMv6-M-RP2/compilers/GCC/chtypes.h
* @brief ARMv6-M port system types. * @brief ARMv6-M-RP2 port system types.
* *
* @addtogroup ARMv6_M_RP2_GCC_CORE * @addtogroup ARMV6M_RP2_GCC_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv6-M/chcore.c * @file ARMv6-M/chcore.c
* @brief ARMv6-M port code. * @brief ARMv6-M port code.
* *
* @addtogroup ARMv6_M_CORE * @addtogroup ARMV6M_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv6-M/chcore.h * @file ARMv6-M/chcore.h
* @brief ARMv6-M port macros and structures. * @brief ARMv6-M port macros and structures.
* *
* @addtogroup ARMv6_M_CORE * @addtogroup ARMV6M_CORE
* @{ * @{
*/ */

View File

@ -18,10 +18,10 @@
*/ */
/** /**
* @file chcore_timer.h * @file ARMv6-M/chcore_timer.h
* @brief System timer header file. * @brief System timer header file.
* *
* @addtogroup ARMv6_M_TIMER * @addtogroup ARMV6M_TIMER
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv6-M/compilers/GCC/chcoreasm.S * @file ARMv6-M/compilers/GCC/chcoreasm.S
* @brief ARMv6-M port low level code. * @brief ARMv6-M port low level code.
* *
* @addtogroup ARMv6_M_GCC_CORE * @addtogroup ARMV6M_GCC_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv6-M/compilers/GCC/chtypes.h * @file ARMv6-M/compilers/GCC/chtypes.h
* @brief ARMv6-M port system types. * @brief ARMv6-M port system types.
* *
* @addtogroup ARMv6_M_GCC_CORE * @addtogroup ARMV6M_GCC_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv6-M/compilers/IAR/chcoreasm.s * @file ARMv6-M/compilers/IAR/chcoreasm.s
* @brief ARMv6-M port low level code. * @brief ARMv6-M port low level code.
* *
* @addtogroup ARMv6_M_IAR_CORE * @addtogroup ARMV6M_IAR_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMCMx/compilers/IAR/chtypes.h * @file ARMCMx/compilers/IAR/chtypes.h
* @brief ARM Cortex-Mx port system types. * @brief ARM Cortex-Mx port system types.
* *
* @addtogroup ARMCMx_IAR_CORE * @addtogroup ARMV6M_IAR_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv6-M/compilers/RVCT/chcoreasm.s * @file ARMv6-M/compilers/RVCT/chcoreasm.s
* @brief ARMv6-M port low level code. * @brief ARMv6-M port low level code.
* *
* @addtogroup ARMv6_M_RVCT_CORE * @addtogroup ARMV6M_RVCT_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMCMx/compilers/RVCT/chtypes.h * @file ARMCMx/compilers/RVCT/chtypes.h
* @brief ARM Cortex-Mx port system types. * @brief ARM Cortex-Mx port system types.
* *
* @addtogroup ARMCMx_RVCT_CORE * @addtogroup ARMV6M_RVCT_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv7-M/chcore.c * @file ARMv7-M/chcore.c
* @brief ARMv7-M port code. * @brief ARMv7-M port code.
* *
* @addtogroup ARMv7_M_CORE * @addtogroup ARMV7M_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv7-M/chcore.h * @file ARMv7-M/chcore.h
* @brief ARMv7-M port macros and structures. * @brief ARMv7-M port macros and structures.
* *
* @addtogroup ARMv7_M_CORE * @addtogroup ARMV7M_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv7-M/chcore_timer.h * @file ARMv7-M/chcore_timer.h
* @brief System timer header file. * @brief System timer header file.
* *
* @addtogroup ARMv7_M_TIMER * @addtogroup ARMV7M_TIMER
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv7-M/compilers/GCC/chcoreasm.S * @file ARMv7-M/compilers/GCC/chcoreasm.S
* @brief ARMv7-M port low level code. * @brief ARMv7-M port low level code.
* *
* @addtogroup ARMv7_M_GCC_CORE * @addtogroup ARMV7M_GCC_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv7-M/compilers/GCC/chtypes.h * @file ARMv7-M/compilers/GCC/chtypes.h
* @brief ARMv7-M port system types. * @brief ARMv7-M port system types.
* *
* @addtogroup ARMv7_M_GCC_CORE * @addtogroup ARMV7M_GCC_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv7-M/compilers/IAR/chcoreasm.s * @file ARMv7-M/compilers/IAR/chcoreasm.s
* @brief ARMv7-M port low level code. * @brief ARMv7-M port low level code.
* *
* @addtogroup ARMv7_M_IAR_CORE * @addtogroup ARMV7M_IAR_CORE
* @{ * @{
*/ */

View File

@ -18,10 +18,10 @@
*/ */
/** /**
* @file ARMCMx/compilers/IAR/chtypes.h * @file ARMv7-M/compilers/IAR/chtypes.h
* @brief ARM Cortex-Mx port system types. * @brief ARMv7-M port system types.
* *
* @addtogroup ARMv7_M_IAR_CORE * @addtogroup ARMV7M_IAR_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv7-M/compilers/RVCT/chcoreasm.s * @file ARMv7-M/compilers/RVCT/chcoreasm.s
* @brief ARMv7-M port low level code. * @brief ARMv7-M port low level code.
* *
* @addtogroup ARMv7_M_RVCT_CORE * @addtogroup ARMV7M_RVCT_CORE
* @{ * @{
*/ */

View File

@ -18,10 +18,10 @@
*/ */
/** /**
* @file ARMCMx/compilers/RVCT/chtypes.h * @file ARMv7-M/compilers/RVCT/chtypes.h
* @brief ARM Cortex-Mx port system types. * @brief ARMv7-M port system types.
* *
* @addtogroup ARMv7_M_RVCT_CORE * @addtogroup ARMV7M_RVCT_CORE
* @{ * @{
*/ */

View File

@ -18,7 +18,7 @@
* @file ARMv7-M/mpu.h * @file ARMv7-M/mpu.h
* @brief ARMv7-M MPU support macros and structures. * @brief ARMv7-M MPU support macros and structures.
* *
* @addtogroup ARMv7_M_MPU * @addtogroup ARMV7M_MPU
* @{ * @{
*/ */

View File

@ -18,10 +18,10 @@
*/ */
/** /**
* @file ARMv8-M-ML/chcore.c * @file ARMv8-M-ML-TZ/chcore.c
* @brief ARMv8-M mainline port code. * @brief ARMv8-M MainLine port code.
* *
* @addtogroup ARMV8M_ML_CORE * @addtogroup ARMV8M_ML_TZ_CORE
* @{ * @{
*/ */

View File

@ -18,10 +18,10 @@
*/ */
/** /**
* @file ARMv8-M-ML/chcore.h * @file ARMv8-M-ML-TZ/chcore.h
* @brief ARMv8-M mainline port macros and structures. * @brief ARMv8-M MainLine port macros and structures.
* *
* @addtogroup ARMV8M_ML_CORE * @addtogroup ARMV8M_ML_TZ_CORE
* @{ * @{
*/ */
@ -378,14 +378,6 @@
asm module.*/ asm module.*/
#if !defined(_FROM_ASM_) #if !defined(_FROM_ASM_)
/**
* @brief Type of stack and memory alignment enforcement.
* @note In this architecture the stack alignment is enforced to 64 bits,
* 32 bits alignment is supported by hardware but deprecated by ARM,
* the implementation choice is to not offer the option.
*/
typedef uint64_t stkalign_t;
/** /**
* @brief Interrupt saved context. * @brief Interrupt saved context.
* @details This structure represents the stack frame saved during a * @details This structure represents the stack frame saved during a
@ -497,6 +489,11 @@ struct port_context {
#define PORT_IRQ_IS_VALID_KERNEL_PRIORITY(n) \ #define PORT_IRQ_IS_VALID_KERNEL_PRIORITY(n) \
(((n) >= CORTEX_MAX_KERNEL_PRIORITY) && ((n) <= CORTEX_PRIORITY_PENDSV)) (((n) >= CORTEX_MAX_KERNEL_PRIORITY) && ((n) <= CORTEX_PRIORITY_PENDSV))
/**
* @brief Optimized thread function declaration macro.
*/
#define PORT_THD_FUNCTION(tname, arg) void tname(void *arg)
/** /**
* @brief Initialization of stack check part of thread context. * @brief Initialization of stack check part of thread context.
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv8-M-ML/chcore_timer.h * @file ARMv8-M-ML/chcore_timer.h
* @brief System timer header file. * @brief System timer header file.
* *
* @addtogroup ARMV8M_ML_TIMER * @addtogroup ARMV8M_ML_TZ_TIMER
* @{ * @{
*/ */

View File

@ -18,10 +18,10 @@
*/ */
/** /**
* @file ARMv8-M-ML/compilers/GCC/chtypes.h * @file ARMv8-M-ML-TZ/chtypes.h
* @brief ARMv8-M mainline port system types. * @brief ARMv8-M MainLine port system types.
* *
* @addtogroup ARMV8M_ML_CORE * @addtogroup ARMV8M_ML_TZ_CORE
* @{ * @{
*/ */
@ -32,65 +32,74 @@
#include <stdint.h> #include <stdint.h>
#include <stdbool.h> #include <stdbool.h>
#include "ccportab.h"
/** /**
* @name Kernel types * @name Architecture data constraints
*/
#define PORT_ARCH_SIZEOF_DATA_PTR 4
#define PORT_ARCH_SIZEOF_CODE_PTR 4
#define PORT_ARCH_REGISTERS_WIDTH 32
#define PORT_ARCH_REVERSE_ORDER 1
/** @} */
/**
* @name Port types
* @{ * @{
*/ */
typedef uint32_t rtcnt_t; /**< Realtime counter. */ /**
typedef uint64_t rttime_t; /**< Realtime accumulator. */ * @brief Realtime counter.
typedef uint32_t syssts_t; /**< System status word. */ */
typedef uint8_t tmode_t; /**< Thread flags. */ typedef uint32_t port_rtcnt_t;
typedef uint8_t tstate_t; /**< Thread state. */
typedef uint8_t trefs_t; /**< Thread references counter. */ /**
typedef uint8_t tslices_t; /**< Thread time slices counter.*/ * @brief Realtime accumulator.
typedef uint32_t tprio_t; /**< Thread priority. */ */
typedef int32_t msg_t; /**< Inter-thread message. */ typedef uint64_t port_rttime_t;
typedef int32_t eventid_t; /**< Numeric event identifier. */
typedef uint32_t eventmask_t; /**< Mask of event identifiers. */ /**
typedef uint32_t eventflags_t; /**< Mask of event flags. */ * @brief System status word.
typedef int32_t cnt_t; /**< Generic signed counter. */ */
typedef uint32_t ucnt_t; /**< Generic unsigned counter. */ typedef uint32_t port_syssts_t;
/**
* @brief Type of stack and memory alignment enforcement.
* @note In this architecture the stack alignment is enforced to 64 bits,
* 32 bits alignment is supported by hardware but deprecated by ARM,
* the implementation choice is to not offer the option.
*/
typedef uint64_t port_stkalign_t;
/** @} */ /** @} */
/**
* @brief This port does not define OS-related types.
*/
#define PORT_DOES_NOT_PROVIDE_TYPES
/** /**
* @brief ROM constant modifier. * @brief ROM constant modifier.
* @note It is set to use the "const" keyword in this port. * @note It is set to use the "const" keyword in this port.
*/ */
#define ROMCONST const #define ROMCONST CC_ROMCONST
/** /**
* @brief Makes functions not inlineable. * @brief Makes functions not inlineable.
* @note If the compiler does not support such attribute then some * @note If the compiler does not support such attribute then some
* time-dependent services could be degraded. * time-dependent services could be degraded.
*/ */
#define NOINLINE __attribute__((noinline)) #define NOINLINE CC_NO_INLINE
/**
* @brief Optimized thread function declaration macro.
*/
#define PORT_THD_FUNCTION(tname, arg) void tname(void *arg)
/**
* @brief Packed variable specifier.
*/
#define PACKED_VAR __attribute__((packed))
/** /**
* @brief Memory alignment enforcement for variables. * @brief Memory alignment enforcement for variables.
*/ */
#define ALIGNED_VAR(n) __attribute__((aligned(n))) #define ALIGNED_VAR(n) CC_ALIGN_DATA(n)
/** /**
* @brief Size of a pointer. * @brief Size of a pointer.
* @note To be used where the sizeof operator cannot be used, preprocessor * @note To be used where the sizeof operator cannot be used, preprocessor
* expressions for example. * expressions for example.
*/ */
#define SIZEOF_PTR 4 #define SIZEOF_PTR PORT_ARCH_SIZEOF_DATA_PTR
/**
* @brief True if alignment is low-high in current architecture.
*/
#define REVERSE_ORDER 1
#endif /* CHTYPES_H */ #endif /* CHTYPES_H */

View File

@ -18,10 +18,10 @@
*/ */
/** /**
* @file compilers/GCC/chcoreasm_v7m.S * @file ARMv8-M-ML-TZ/compilers/GCC/chcoreasm.S
* @brief ARMv7-M architecture port low level code. * @brief ARMv8-M MainLine architecture port low level code.
* *
* @addtogroup ARMCMx_GCC_CORE * @addtogroup ARMV8M_ML_TZ_GCC_CORE
* @{ * @{
*/ */
@ -218,7 +218,7 @@ PendSV_Handler:
beq.w port_delay_reschedule /* Tail call on far address.*/ beq.w port_delay_reschedule /* Tail call on far address.*/
#endif #endif
/* Pointer to the current thread.*/ /* Pointer to the current thread.*/
ldr r0, =ch ldr r0, =ch0
// movw r0, #:lower16:ch // movw r0, #:lower16:ch
// movt r0, #:upper16:ch // movt r0, #:upper16:ch
ldr r0, [r0, #CURRENT_OFFSET] ldr r0, [r0, #CURRENT_OFFSET]

View File

@ -1,61 +0,0 @@
/*
ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
/**
* @file common/ARMCMx/mpu_v8m.h
* @brief ARMv8-M MPU support macros and structures.
*
* @addtogroup COMMON_ARMV8M_MPU
* @{
*/
#ifndef MPU_ARMV8M_H
#define MPU_ARMV8M_H
/*===========================================================================*/
/* Driver constants. */
/*===========================================================================*/
/*===========================================================================*/
/* Driver pre-compile time settings. */
/*===========================================================================*/
/*===========================================================================*/
/* Derived constants and error checks. */
/*===========================================================================*/
/*===========================================================================*/
/* Driver data structures and types. */
/*===========================================================================*/
/*===========================================================================*/
/* Driver macros. */
/*===========================================================================*/
/*===========================================================================*/
/* External declarations. */
/*===========================================================================*/
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif
#endif /* MPU_ARMV8M_H */
/** @} */

View File

@ -21,7 +21,7 @@
* @file ARMv8-M-ML/chcore.c * @file ARMv8-M-ML/chcore.c
* @brief ARMv8-M MainLine port code. * @brief ARMv8-M MainLine port code.
* *
* @addtogroup ARMv8_M_ML_CORE * @addtogroup ARMV8M_ML_CORE
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv8-M-ML/chcore.h * @file ARMv8-M-ML/chcore.h
* @brief ARMv8-M MainLine port macros and structures. * @brief ARMv8-M MainLine port macros and structures.
* *
* @addtogroup ARMv8_M_ML_CORE * @addtogroup ARMV8M_ML_CORE
* @{ * @{
*/ */
@ -299,14 +299,6 @@
asm module.*/ asm module.*/
#if !defined(_FROM_ASM_) #if !defined(_FROM_ASM_)
/**
* @brief Type of stack and memory alignment enforcement.
* @note In this architecture the stack alignment is enforced to 64 bits,
* 32 bits alignment is supported by hardware but deprecated by ARM,
* the implementation choice is to not offer the option.
*/
typedef uint64_t stkalign_t;
/** /**
* @brief Interrupt saved context. * @brief Interrupt saved context.
* @details This structure represents the stack frame saved during a * @details This structure represents the stack frame saved during a
@ -410,6 +402,11 @@ struct port_context {
#define PORT_IRQ_IS_VALID_KERNEL_PRIORITY(n) \ #define PORT_IRQ_IS_VALID_KERNEL_PRIORITY(n) \
(((n) >= CORTEX_MAX_KERNEL_PRIORITY) && ((n) < CORTEX_PRIORITY_LEVELS)) (((n) >= CORTEX_MAX_KERNEL_PRIORITY) && ((n) < CORTEX_PRIORITY_LEVELS))
/**
* @brief Optimized thread function declaration macro.
*/
#define PORT_THD_FUNCTION(tname, arg) void tname(void *arg)
/** /**
* @brief Initialization of stack check part of thread context. * @brief Initialization of stack check part of thread context.
*/ */

View File

@ -18,10 +18,10 @@
*/ */
/** /**
* @file chcore_timer.h * @file ARMv8-M-ML/chcore_timer.h
* @brief System timer header file. * @brief System timer header file.
* *
* @addtogroup ARMv8_M_ML_TIMER * @addtogroup ARMV8M_ML_TIMER
* @{ * @{
*/ */

View File

@ -21,7 +21,7 @@
* @file ARMv8-M-ML/compilers/GCC/chcoreasm.S * @file ARMv8-M-ML/compilers/GCC/chcoreasm.S
* @brief ARMv8-M MainLine port low level code. * @brief ARMv8-M MainLine port low level code.
* *
* @addtogroup ARMv8_M_ML_GCC_CORE * @addtogroup ARMV8M_ML_GCC_CORE
* @{ * @{
*/ */

View File

@ -19,9 +19,9 @@
/** /**
* @file ARMv8-M-ML/compilers/GCC/chtypes.h * @file ARMv8-M-ML/compilers/GCC/chtypes.h
* @brief ARMv8-M-ML port system types. * @brief ARMv8-M MainLine port system types.
* *
* @addtogroup ARMv8_M_ML_GCC_CORE * @addtogroup ARMV8M_ML_GCC_CORE
* @{ * @{
*/ */