summaryrefslogtreecommitdiff
path: root/nuttx/arch
diff options
context:
space:
mode:
authorGregory Nutt <gnutt@nuttx.org>2014-07-24 15:37:13 -0600
committerGregory Nutt <gnutt@nuttx.org>2014-07-24 15:37:13 -0600
commit53bb501d5da50c6faa28fc0decfa3fbef0de7b5a (patch)
treeea78841e768ee824ccafb4f844f6b301a752bcf0 /nuttx/arch
parentf955d435ab125e8adb85dddda4f0b6ecee824b6a (diff)
downloadpx4-nuttx-53bb501d5da50c6faa28fc0decfa3fbef0de7b5a.tar.gz
px4-nuttx-53bb501d5da50c6faa28fc0decfa3fbef0de7b5a.tar.bz2
px4-nuttx-53bb501d5da50c6faa28fc0decfa3fbef0de7b5a.zip
Correct the initial value of the BASEPRI register. This was apparently never being initialized. From Max
Diffstat (limited to 'nuttx/arch')
-rw-r--r--nuttx/arch/arm/src/armv7-m/up_initialstate.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/nuttx/arch/arm/src/armv7-m/up_initialstate.c b/nuttx/arch/arm/src/armv7-m/up_initialstate.c
index 7b6eb3042..c60f181f1 100644
--- a/nuttx/arch/arm/src/armv7-m/up_initialstate.c
+++ b/nuttx/arch/arm/src/armv7-m/up_initialstate.c
@@ -1,7 +1,7 @@
/****************************************************************************
* arch/arm/src/armv7-m/up_initialstate.c
*
- * Copyright (C) 2009, 2011-2013 Gregory Nutt. All rights reserved.
+ * Copyright (C) 2009, 2011-2014 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org>
*
* Redistribution and use in source and binary forms, with or without
@@ -147,10 +147,18 @@ void up_initial_state(struct tcb_s *tcb)
/* Enable or disable interrupts, based on user configuration */
#ifdef CONFIG_SUPPRESS_INTERRUPTS
+
#ifdef CONFIG_ARMV7M_USEBASEPRI
xcp->regs[REG_BASEPRI] = NVIC_SYSH_DISABLE_PRIORITY;
#else
xcp->regs[REG_PRIMASK] = 1;
#endif
+
+#else /* CONFIG_SUPPRESS_INTERRUPTS */
+
+#ifdef CONFIG_ARMV7M_USEBASEPRI
+ xcp->regs[REG_BASEPRI] = NVIC_SYSH_MAXNORMAL_PRIORITY;
+#endif
+
#endif /* CONFIG_SUPPRESS_INTERRUPTS */
}