diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2015-04-20 08:45:41 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2015-04-21 08:25:31 +0200 |
commit | 4db0ae8e07870d4ca23dc1b9f8097e3494fe82a2 (patch) | |
tree | e7ba3533960b935b67b152198bba713b1c4ebed2 /cpukit/score/src/objectgetisr.c | |
parent | score: Add _ISR_lock_ISR_disable/enable() (diff) | |
download | rtems-4db0ae8e07870d4ca23dc1b9f8097e3494fe82a2.tar.bz2 |
score: _Objects_Get_isr_disable()
Use ISR_lock_Context instead of ISR_Level to allow use of ISR locks for
low-level locking.
Update #2273.
Diffstat (limited to 'cpukit/score/src/objectgetisr.c')
-rw-r--r-- | cpukit/score/src/objectgetisr.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/cpukit/score/src/objectgetisr.c b/cpukit/score/src/objectgetisr.c index 25e8a3b8d0..4feb7aaffb 100644 --- a/cpukit/score/src/objectgetisr.c +++ b/cpukit/score/src/objectgetisr.c @@ -24,12 +24,11 @@ Objects_Control *_Objects_Get_isr_disable( Objects_Information *information, Objects_Id id, Objects_Locations *location, - ISR_Level *level_p + ISR_lock_Context *lock_context ) { Objects_Control *the_object; uint32_t index; - ISR_Level level; index = id - information->minimum_id + 1; @@ -37,13 +36,12 @@ Objects_Control *_Objects_Get_isr_disable( #if defined(RTEMS_SMP) _Thread_Disable_dispatch(); #endif - _ISR_Disable( level ); + _ISR_lock_ISR_disable( lock_context ); if ( (the_object = information->local_table[ index ]) != NULL ) { *location = OBJECTS_LOCAL; - *level_p = level; return the_object; } - _ISR_Enable( level ); + _ISR_lock_ISR_enable( lock_context ); #if defined(RTEMS_SMP) _Thread_Enable_dispatch(); #endif |