summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems/include/rtems/rtems/asrimpl.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2014-05-07 17:53:48 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2014-05-07 17:55:59 +0200
commit0960fee4067febf90823778a118f9ed2d7c1a8a5 (patch)
tree57be21d75e3e1512ceb5aa94482511e1031f5d48 /cpukit/rtems/include/rtems/rtems/asrimpl.h
parentscore: Fix SMP startup (diff)
downloadrtems-0960fee4067febf90823778a118f9ed2d7c1a8a5.tar.bz2
rtems: Fix ASR SMP support
Initialize the ISR lock only once and destroy it properly.
Diffstat (limited to 'cpukit/rtems/include/rtems/rtems/asrimpl.h')
-rw-r--r--cpukit/rtems/include/rtems/rtems/asrimpl.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/cpukit/rtems/include/rtems/rtems/asrimpl.h b/cpukit/rtems/include/rtems/rtems/asrimpl.h
index 4d8d7f4401..38ee35d83a 100644
--- a/cpukit/rtems/include/rtems/rtems/asrimpl.h
+++ b/cpukit/rtems/include/rtems/rtems/asrimpl.h
@@ -46,7 +46,17 @@ RTEMS_INLINE_ROUTINE void _ASR_Initialize (
asr->signals_posted = 0;
asr->signals_pending = 0;
asr->nest_level = 0;
+}
+
+RTEMS_INLINE_ROUTINE void _ASR_Create( ASR_Information *asr )
+{
_ISR_lock_Initialize( &asr->Lock, "ASR" );
+ _ASR_Initialize( asr );
+}
+
+RTEMS_INLINE_ROUTINE void _ASR_Destroy( ASR_Information *asr )
+{
+ _ISR_lock_Destroy( &asr->Lock );
}
/**