summaryrefslogtreecommitdiffstats
path: root/nuttx/arch/arm/src/common
diff options
context:
space:
mode:
authorpatacongo <patacongo@7fd9a85b-ad96-42d3-883c-3090e2eb8679>2011-04-06 23:01:06 +0000
committerpatacongo <patacongo@7fd9a85b-ad96-42d3-883c-3090e2eb8679>2011-04-06 23:01:06 +0000
commitd8ab80ccef6b4f340bdc54e90f38b7ac98219a6e (patch)
treea4707d8f1e51d31b1fc2866c63260bfbf99b1f34 /nuttx/arch/arm/src/common
parent0b6e9f33f5e5e03930da93c254d596857b3c58b8 (diff)
current_regs should be volatile; add support for nested interrupts; enable interrupts during syscall processing
git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@3475 7fd9a85b-ad96-42d3-883c-3090e2eb8679
Diffstat (limited to 'nuttx/arch/arm/src/common')
-rw-r--r--nuttx/arch/arm/src/common/up_internal.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/nuttx/arch/arm/src/common/up_internal.h b/nuttx/arch/arm/src/common/up_internal.h
index 9fe4464c7f..803a6563db 100644
--- a/nuttx/arch/arm/src/common/up_internal.h
+++ b/nuttx/arch/arm/src/common/up_internal.h
@@ -82,11 +82,11 @@
*/
#ifdef CONFIG_ARCH_CORTEXM3
-# define up_savestate(regs) up_copystate(regs, current_regs)
+# define up_savestate(regs) up_copystate(regs, (uint32_t*)current_regs)
# define up_restorestate(regs) (current_regs = regs)
#else
-# define up_savestate(regs) up_copystate(regs, current_regs)
-# define up_restorestate(regs) up_copystate(current_regs, regs)
+# define up_savestate(regs) up_copystate(regs, (uint32_t*)current_regs)
+# define up_restorestate(regs) up_copystate((uint32_t*)current_regs, regs)
#endif
/****************************************************************************
@@ -107,7 +107,7 @@ typedef void (*up_vector_t)(void);
* interrupt processing.
*/
-extern uint32_t *current_regs;
+extern volatile uint32_t *current_regs;
/* This is the beginning of heap as provided from up_head.S.
* This is the first address in DRAM after the loaded