[rtems commit] bsp/arm: RTEMS_SMP to arm erratum 764369 detection

Sebastian Huber sebh at rtems.org
Thu Apr 17 11:21:10 UTC 2014


Module:    rtems
Branch:    master
Commit:    e331e69a470b597f35b1ab08eca90acdff56bb70
Changeset: http://git.rtems.org/rtems/commit/?id=e331e69a470b597f35b1ab08eca90acdff56bb70

Author:    Ralf Kirchner <ralf.kirchner at embedded-brains.de>
Date:      Wed Apr 16 16:07:13 2014 +0200

bsp/arm: RTEMS_SMP to arm erratum 764369 detection

Move the RTEMS_SMP conditional compilation to the detection method of arm erratum 764369

---

 .../libbsp/arm/shared/include/arm-a9mpcore-start.h |    2 --
 c/src/lib/libbsp/arm/shared/include/arm-cache-l1.h |   12 ++++--------
 c/src/lib/libbsp/arm/shared/include/arm-errata.h   |    4 ++++
 3 files changed, 8 insertions(+), 10 deletions(-)

diff --git a/c/src/lib/libbsp/arm/shared/include/arm-a9mpcore-start.h b/c/src/lib/libbsp/arm/shared/include/arm-a9mpcore-start.h
index 4e8f323..9ecb375 100644
--- a/c/src/lib/libbsp/arm/shared/include/arm-a9mpcore-start.h
+++ b/c/src/lib/libbsp/arm/shared/include/arm-a9mpcore-start.h
@@ -83,11 +83,9 @@ BSP_START_TEXT_SECTION static inline arm_a9mpcore_start_scu_invalidate(
 BSP_START_TEXT_SECTION static void inline
 arm_a9mpcore_start_errata_764369_handler(volatile a9mpcore_scu *scu)
 {
-#ifdef RTEMS_SMP
   if (arm_errata_is_applicable_processor_errata_764369()) {
     scu->diagn_ctrl |= A9MPCORE_SCU_DIAGN_CTRL_MIGRATORY_BIT_DISABLE;
   }
-#endif
 }
 
 BSP_START_TEXT_SECTION static inline
diff --git a/c/src/lib/libbsp/arm/shared/include/arm-cache-l1.h b/c/src/lib/libbsp/arm/shared/include/arm-cache-l1.h
index a062071..72d3ee3 100644
--- a/c/src/lib/libbsp/arm/shared/include/arm-cache-l1.h
+++ b/c/src/lib/libbsp/arm/shared/include/arm-cache-l1.h
@@ -46,14 +46,10 @@ extern "C" {
     - 1 )
 
 /* Errata Handlers */
-#if ( defined( RTEMS_SMP ) )
-  #define ARM_CACHE_L1_ERRATA_764369_HANDLER()                 \
-    if( arm_errata_is_applicable_processor_errata_764369() ) { \
-      _ARM_Data_synchronization_barrier();                     \
-    }                                           
-#else /* #if ( defined( RTEMS_SMP ) ) */
-  #define ARM_CACHE_L1_ERRATA_764369_HANDLER()
-#endif /* #if ( defined( RTEMS_SMP ) ) */
+#define ARM_CACHE_L1_ERRATA_764369_HANDLER()                 \
+  if( arm_errata_is_applicable_processor_errata_764369() ) { \
+    _ARM_Data_synchronization_barrier();                     \
+  }
 
     
 static void arm_cache_l1_select( const uint32_t selection )
diff --git a/c/src/lib/libbsp/arm/shared/include/arm-errata.h b/c/src/lib/libbsp/arm/shared/include/arm-errata.h
index bfb3577..c58084a 100644
--- a/c/src/lib/libbsp/arm/shared/include/arm-errata.h
+++ b/c/src/lib/libbsp/arm/shared/include/arm-errata.h
@@ -47,6 +47,7 @@ static arm_release_id arm_errata_get_processor_release(
 #endif /* #if defined( __ARM_ARCH_7A__ ) */
 
 #if defined( __ARM_ARCH_7A__ )
+#if ( defined( RTEMS_SMP ) )
 static bool arm_errata_is_applicable_processor_errata_764369(
   void
 )
@@ -84,6 +85,9 @@ static bool arm_errata_is_applicable_processor_errata_764369(
   
   return is_applicable;
 }
+#else
+  #define arm_errata_is_applicable_processor_errata_764369() false
+#endif /*  ( defined( RTEMS_SMP ) ) */
 #endif /* #if defined( __ARM_ARCH_7A__ ) */
 
 #if defined( __ARM_ARCH_7A__ )




More information about the vc mailing list