diff options
author | Ric Claus <claus@slac.stanford.edu> | 2013-06-20 09:48:27 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-06-20 10:15:14 +0200 |
commit | cddb8f4a45fffdf76a61724e83f3cd3c15c338a5 (patch) | |
tree | 146003f0ed717558319d7bd47cd1d958b1114ca0 | |
parent | bsps/arm: Set vector base address if necessary (diff) | |
download | rtems-cddb8f4a45fffdf76a61724e83f3cd3c15c338a5.tar.bz2 |
bsps/arm: Fix some GIC functions
-rw-r--r-- | c/src/lib/libbsp/arm/shared/include/arm-gic.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/c/src/lib/libbsp/arm/shared/include/arm-gic.h b/c/src/lib/libbsp/arm/shared/include/arm-gic.h index ff5eee5cde..a336bfa7b4 100644 --- a/c/src/lib/libbsp/arm/shared/include/arm-gic.h +++ b/c/src/lib/libbsp/arm/shared/include/arm-gic.h @@ -127,7 +127,8 @@ static inline gic_trigger_mode gic_id_get_trigger_mode( uint32_t o = GIC_ID_TO_TWO_BITS_REG_OFFSET(id) + 1; uint32_t bit = 1U << o; - return dist->icdicfr[i] & bit; + return (dist->icdicfr[i] & bit) != 0 ? + GIC_EDGE_TRIGGERED : GIC_LEVEL_SENSITIVE; } static inline void gic_id_set_trigger_mode( @@ -162,7 +163,7 @@ static inline gic_handling_model gic_id_get_handling_model( uint32_t o = GIC_ID_TO_TWO_BITS_REG_OFFSET(id); uint32_t bit = 1U << o; - return dist->icdicfr[i] & bit; + return (dist->icdicfr[i] & bit) != 0 ? GIC_1_TO_N : GIC_N_TO_N; } static inline void gic_id_set_handling_model( |