summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libcpu/sparc
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libcpu/sparc')
-rw-r--r--c/src/lib/libcpu/sparc/include/erc32.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/c/src/lib/libcpu/sparc/include/erc32.h b/c/src/lib/libcpu/sparc/include/erc32.h
index 8dd5162cea..12ec1d4230 100644
--- a/c/src/lib/libcpu/sparc/include/erc32.h
+++ b/c/src/lib/libcpu/sparc/include/erc32.h
@@ -345,6 +345,11 @@ extern ERC32_Register_Map ERC32_MEC;
#define ERC32_Force_interrupt( _source ) \
do { \
+ unsigned32 _level; \
+ \
+ sparc_disable_interrupts( _level ); \
+ ERC32_MEC.Test_Control = ERC32_MEC.Test_Control | 0x80000; \
+ sparc_enable_interrupts( _level ); \
ERC32_MEC.Interrupt_Force = (1 << (_source)); \
} while (0)