[PATCH 04/25] score: Add lm32 CPU architecture group

Sebastian Huber sebastian.huber at embedded-brains.de
Fri Mar 29 10:52:49 UTC 2019


From: Andreas Dachsberger <andreas.dachsberger at embedded-brains.de>

Update #3706.
---
 cpukit/score/cpu/lm32/include/rtems/asm.h          | 11 +++++++
 cpukit/score/cpu/lm32/include/rtems/score/cpu.h    | 36 +++++++++++++---------
 .../score/cpu/lm32/include/rtems/score/cpuimpl.h   | 11 +++++++
 3 files changed, 44 insertions(+), 14 deletions(-)

diff --git a/cpukit/score/cpu/lm32/include/rtems/asm.h b/cpukit/score/cpu/lm32/include/rtems/asm.h
index 15046df81c..312602491c 100644
--- a/cpukit/score/cpu/lm32/include/rtems/asm.h
+++ b/cpukit/score/cpu/lm32/include/rtems/asm.h
@@ -39,6 +39,15 @@
 #include <rtems/score/cpuopts.h>
 #include <rtems/score/lm32.h>
 
+/**
+ * @defgroup RTEMSScoreCPUlm32ASM lm32 Assembler Support
+ *
+ * @ingroup RTEMSScoreCPUlm32
+ *
+ * @brief LatticeMicro32 (lm32) Assembler Support
+ */
+/**@{**/
+
 #ifndef __USER_LABEL_PREFIX__
 /**
  * Recent versions of GNU cpp define variables which indicate the
@@ -124,4 +133,6 @@
  */
 #define EXTERN(sym) .globl SYM (sym)
 
+/**@}**/
+
 #endif
diff --git a/cpukit/score/cpu/lm32/include/rtems/score/cpu.h b/cpukit/score/cpu/lm32/include/rtems/score/cpu.h
index 64983839b2..12bdc495bf 100644
--- a/cpukit/score/cpu/lm32/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/lm32/include/rtems/score/cpu.h
@@ -185,7 +185,7 @@ extern "C" {
 #define CPU_STRUCTURE_ALIGNMENT RTEMS_ALIGNED( CPU_CACHE_LINE_BYTES )
 
 /**
- * @ingroup CPUInterrupt
+ * @addtogroup RTEMSScoreCPUlm32Interrupt
  * The following defines the number of bits actually used in the
  * interrupt field of the task mode.  How those bits map to the
  * CPU interrupt levels is defined by the routine @ref _CPU_ISR_Set_level.
@@ -209,7 +209,9 @@ extern "C" {
 /* may need to put some structures here.  */
 
 /**
- * @defgroup CPUContext Processor Dependent Context Management
+ * @defgroup RTEMSScoreCPUlm32Context Processor Dependent Context Management
+ * 
+ * @ingroup RTEMSScoreCPUlm32
  *
  * From the highest level viewpoint, there are 2 types of context to save.
  *
@@ -336,9 +338,12 @@ extern Context_Control_fp _CPU_Null_fp_context;
 /** @} */
 
 /**
- * @defgroup CPUInterrupt Processor Dependent Interrupt Management
+ * @defgroup RTEMSScoreCPUlm32Interrupt Processor Dependent Interrupt Management
+ * 
+ * @ingroup RTEMSScoreCPUlm32
  */
-/**@{**/
+/** @{ **/
+/** @} **/
 
 /*
  * Nothing prevents the porter from declaring more CPU specific variables.
@@ -351,7 +356,7 @@ extern Context_Control_fp _CPU_Null_fp_context;
 /* XXX: if needed, put more variables here */
 
 /**
- * @ingroup CPUContext
+ * @addtogroup RTEMSScoreCPUlm32Context
  * The size of the floating point context area.  On some CPUs this
  * will not be a "sizeof" because the format of the floating point
  * area is not defined -- only the size is.  This is usually on
@@ -364,6 +369,7 @@ extern Context_Control_fp _CPU_Null_fp_context;
 #define CPU_CONTEXT_FP_SIZE sizeof( Context_Control_fp )
 
 /**
+ * @addtogroup RTEMSScoreCPUlm32Interrupt
  * Amount of extra stack (above minimum stack size) required by
  * MPCI receive server thread.  Remember that in a multiprocessor
  * system this thread must exist and be able to process all directives.
@@ -375,6 +381,7 @@ extern Context_Control_fp _CPU_Null_fp_context;
 #define CPU_MPCI_RECEIVE_SERVER_EXTRA_STACK 0
 
 /**
+ * @addtogroup RTEMSScoreCPUlm32Interrupt
  * This defines the number of entries in the @ref _ISR_Vector_table managed
  * by RTEMS.
  *
@@ -385,20 +392,21 @@ extern Context_Control_fp _CPU_Null_fp_context;
 #define CPU_INTERRUPT_NUMBER_OF_VECTORS      32
 
 /**
+ * @addtogroup RTEMSScoreCPUlm32Interrupt
  * This defines the highest interrupt vector number for this port.
  */
 #define CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER  (CPU_INTERRUPT_NUMBER_OF_VECTORS - 1)
 
 /**
+ * @addtogroup RTEMSScoreCPUlm32Interrupt
  * This is defined if the port has a special way to report the ISR nesting
  * level.  Most ports maintain the variable @a _ISR_Nest_level.
  */
 #define CPU_PROVIDES_ISR_IS_IN_PROGRESS FALSE
 
-/** @} */
 
 /**
- * @ingroup CPUContext
+ * @addtogroup RTEMSScoreCPUlm32Context
  * Should be large enough to run all RTEMS tests.  This ensures
  * that a "reasonable" small application should not have any problems.
  *
@@ -466,7 +474,7 @@ extern Context_Control_fp _CPU_Null_fp_context;
  */
 
 /**
- * @addtogroup CPUInterrupt
+ * @addtogroup RTEMSScoreCPUlm32Interrupt
  */
 /**@{**/
 
@@ -565,7 +573,7 @@ uint32_t   _CPU_ISR_Get_level( void );
 /* Context handler macros */
 
 /**
- * @ingroup CPUContext
+ * @addtogroup RTEMSScoreCPUlm32Context
  * Initialize the context to a state suitable for starting a
  * task after a context restore operation.  Generally, this
  * involves:
@@ -686,7 +694,7 @@ extern char _gp[];
 void _CPU_Initialize(void);
 
 /**
- * @addtogroup CPUInterrupt
+ * @addtogroup RTEMSScoreCPUlm32Interrupt
  */
 /**@{**/
 
@@ -714,7 +722,7 @@ void _CPU_ISR_install_vector(
 void *_CPU_Thread_Idle_body( uintptr_t ignored );
 
 /**
- * @ingroup CPUContext
+ * @addtogroup RTEMSScoreCPUlm32Context
  * This routine switches from the run context to the heir context.
  *
  * @param[in] run points to the context of the currently executing task
@@ -730,7 +738,7 @@ void _CPU_Context_switch(
 );
 
 /**
- * @addtogroup CPUContext
+ * @addtogroup RTEMSScoreCPUlm32Context
  */
 /**@{**/
 
@@ -792,7 +800,7 @@ typedef CPU_Interrupt_frame CPU_Exception_frame;
 void _CPU_Exception_frame_print( const CPU_Exception_frame *frame );
 
 /**
- * @ingroup CPUEndian
+ * @addtogroup CPUEndian
  * The following routine swaps the endian format of an unsigned int.
  * It must be static because it is referenced indirectly.
  *
@@ -835,7 +843,7 @@ static inline uint32_t CPU_swap_u32(
 }
 
 /**
- * @ingroup CPUEndian
+ * @addtogroup CPUEndian
  * This routine swaps a 16 bir quantity.
  *
  * @param[in] value is the value to be swapped
diff --git a/cpukit/score/cpu/lm32/include/rtems/score/cpuimpl.h b/cpukit/score/cpu/lm32/include/rtems/score/cpuimpl.h
index 78b87ef981..ab43ddbf7d 100644
--- a/cpukit/score/cpu/lm32/include/rtems/score/cpuimpl.h
+++ b/cpukit/score/cpu/lm32/include/rtems/score/cpuimpl.h
@@ -17,6 +17,15 @@
 
 #include <rtems/score/cpu.h>
 
+/**
+ * @defgroup RTEMSScoreCPUlm32 LatticeMicro32 (lm32)
+ *
+ * @ingroup RTEMSScoreCPU
+ *
+ * @brief LatticeMicro32 (lm32) Architecture Support
+ */
+/** @{ */
+
 #define CPU_PER_CPU_CONTROL_SIZE 0
 
 #ifndef ASM
@@ -54,3 +63,5 @@ RTEMS_INLINE_ROUTINE void _CPU_Instruction_no_operation( void )
 #endif /* ASM */
 
 #endif /* _RTEMS_SCORE_CPUIMPL_H */
+
+/** @} */
-- 
2.16.4




More information about the devel mailing list