Commit Graph

18 Commits

Author SHA1 Message Date
Sebastian Huber
c331bdc777 record: Allow tracing of ISR disable/enable
Directly use the CPU port API in boot_card() to allow tracing of the
higher level interrupt disable/enable routines, e.g.
_ISR_Local_disable() and _ISR_Local_enable().  Currently, there is no
configuration option to enable this.  Below is a patch.  It may be used
to investigate some nasty low level bugs in the system.

Update #3665.

diff --git a/cpukit/include/rtems/score/isrlevel.h b/cpukit/include/rtems/score/isrlevel.h
index c42451d010..46d361ddc2 100644
--- a/cpukit/include/rtems/score/isrlevel.h
+++ b/cpukit/include/rtems/score/isrlevel.h
@@ -40,6 +40,10 @@ extern "C" {
  */
 typedef uint32_t   ISR_Level;

+uint32_t rtems_record_interrupt_disable( void );
+
+void rtems_record_interrupt_enable( uint32_t level );
+
 /**
  *  @brief Disables interrupts on this processor.
  *
@@ -56,8 +60,7 @@ typedef uint32_t   ISR_Level;
  */
 #define _ISR_Local_disable( _level ) \
   do { \
-    _CPU_ISR_Disable( _level ); \
-    RTEMS_COMPILER_MEMORY_BARRIER(); \
+    _level = rtems_record_interrupt_disable(); \
   } while (0)

 /**
@@ -72,10 +75,7 @@ typedef uint32_t   ISR_Level;
  *  _ISR_Local_disable().
  */
 #define _ISR_Local_enable( _level ) \
-  do { \
-    RTEMS_COMPILER_MEMORY_BARRIER(); \
-    _CPU_ISR_Enable( _level ); \
-  } while (0)
+  rtems_record_interrupt_enable( _level )

 /**
  *  @brief Temporarily enables interrupts on this processor.
@@ -98,9 +98,8 @@ typedef uint32_t   ISR_Level;
  */
 #define _ISR_Local_flash( _level ) \
   do { \
-    RTEMS_COMPILER_MEMORY_BARRIER(); \
-    _CPU_ISR_Flash( _level ); \
-    RTEMS_COMPILER_MEMORY_BARRIER(); \
+    rtems_record_interrupt_enable( _level ); \
+    _level = rtems_record_interrupt_disable(); \
   } while (0)

 /
2019-09-06 08:09:34 +02:00
Sebastian Huber
5ee70c5487 Add and use THREAD_DEFAULT_MAXIMUM_NAME_SIZE 2019-07-30 07:21:06 +02:00
Sebastian Huber
212663bede bsps: Adjust architecture Doxygen groups
- Use CamelCase as it is not used in our C code.  Enables simple search and
   replace.

 - Prefix with "RTEMS" to aid deployment and integration.  It aids
   searching and sorting.

Update #3706.
2019-03-04 07:51:38 +01:00
Sebastian Huber
fad3f79b88 bsps: BSP_INTERRUPT_STACK_AT_WORK_AREA_BEGIN
Remove the BSP_INTERRUPT_STACK_AT_WORK_AREA_BEGIN hack.  The interrupt
stacks are now allocated by the linker.

Update #3459.
2018-09-03 07:03:09 +02:00
Sebastian Huber
5c5b021f51 bsps: Move bspsmpgetcurrentprocessor.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:38 +02:00
Sebastian Huber
2584f5b2b5 bsps: Move bspsmp.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:38 +02:00
Sebastian Huber
bc010a8d48 bsps: Move setvec.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:38 +02:00
Sebastian Huber
a4429391b6 bsps: Move sbrk.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:38 +02:00
Sebastian Huber
c4ccf26cb7 bsps: Convert all bsp_predriver_hook()
Use RTEMS_SYSINIT_ITEM() instead.

Update #2408.
2018-04-20 09:49:36 +02:00
Sebastian Huber
5a06b187fb bsps: Move bspgetworkarea.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:35 +02:00
Sebastian Huber
0b93d4f843 bsps: Move bspstart.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:35 +02:00
Sebastian Huber
07364103a8 bsps: Move bspreset_loop.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:35 +02:00
Sebastian Huber
554e39c8e5 bsps: Move bspreset.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:34 +02:00
Sebastian Huber
43bda786e7 bsps: Move bspclean.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:34 +02:00
Sebastian Huber
0a09ac58ac bsps: Move stackalloc.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-16 14:56:10 +02:00
Sebastian Huber
9d44ae78cf bsps: Move bsp-uboot-board-info.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-16 14:56:10 +02:00
Sebastian Huber
1cba1de115 bsps: Move bsp-fdt.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-16 14:56:10 +02:00
Sebastian Huber
c5fe44319e bsps: Move bootcard.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-12 07:09:12 +02:00