diff options
author | Kumar Gala <kumar.gala@linaro.org> | 2017-01-27 20:39:05 -0600 |
---|---|---|
committer | Maureen Helm <maureen.helm@nxp.com> | 2017-02-10 14:47:41 -0600 |
commit | a033a89d76a7f73d1bd09086c37c45588d948d7d (patch) | |
tree | d7453d4d638548f4d1df578d0f48c20242717b2f | |
parent | 388c26574f2a07e6543af4ae50ebc337ef328fd0 (diff) |
arm: cmsis: Convert _ScbActiveVectorGet to use direct CMSIS register access
Jira: ZEP-1568
Change-Id: Ibbb3f71d7ee42ab62f764d45bd334c7840b3c04d
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
-rw-r--r-- | arch/arm/core/fault.c | 2 | ||||
-rw-r--r-- | include/arch/arm/cortex_m/scb.h | 15 |
2 files changed, 1 insertions, 16 deletions
diff --git a/arch/arm/core/fault.c b/arch/arm/core/fault.c index 60ca5a0c6..38fbdd3cc 100644 --- a/arch/arm/core/fault.c +++ b/arch/arm/core/fault.c @@ -360,7 +360,7 @@ static void _FaultDump(const NANO_ESF *esf, int fault) */ void _Fault(const NANO_ESF *esf) { - int fault = _ScbActiveVectorGet(); + int fault = SCB->ICSR & SCB_ICSR_VECTACTIVE_Msk; FAULT_DUMP(esf, fault); diff --git a/include/arch/arm/cortex_m/scb.h b/include/arch/arm/cortex_m/scb.h index 5c3795301..fbeef93e6 100644 --- a/include/arch/arm/cortex_m/scb.h +++ b/include/arch/arm/cortex_m/scb.h @@ -44,21 +44,6 @@ extern "C" { #include <misc/util.h> #include <stdint.h> -/** - * - * @brief Obtain the currently executing vector - * - * If currently handling an exception/interrupt, return the executing vector - * number. If not, return 0. - * - * @return the currently executing vector number, 0 if in thread mode. - */ - -static inline uint32_t _ScbActiveVectorGet(void) -{ - return __scs.scb.icsr.bit.vectactive; -} - #if defined(CONFIG_ARMV6_M) #elif defined(CONFIG_ARMV7_M) /** |