summaryrefslogtreecommitdiff
path: root/libcpu
diff options
context:
space:
mode:
authorxuzhuoyi <[email protected]>2019-08-24 18:42:54 +0800
committerxuzhuoyi <[email protected]>2019-08-24 18:42:54 +0800
commita101327d24f9deed087e8c1421ca50b9f45e4203 (patch)
tree4ca5da3c3b864ab897253a399ba5faf487f9e77a /libcpu
parentf87dd2e7c408922bcc2cdb1df05fc0b3d2f3a59e (diff)
[bsp][tms320f28379d] Fix an issue that interrupts are disabled in the thread
Diffstat (limited to 'libcpu')
-rw-r--r--libcpu/ti-dsp/c28x/cpuport.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libcpu/ti-dsp/c28x/cpuport.c b/libcpu/ti-dsp/c28x/cpuport.c
index e34556c524..3f88606c65 100644
--- a/libcpu/ti-dsp/c28x/cpuport.c
+++ b/libcpu/ti-dsp/c28x/cpuport.c
@@ -78,7 +78,7 @@ rt_uint8_t *rt_hw_stack_init(void *tentry,
stack_frame->exception_stack_frame.acc = 0x33332222;
stack_frame->exception_stack_frame.ar1_ar0 = 0x00001111 & (unsigned long)parameter; /* ar0 : argument */
stack_frame->exception_stack_frame.p = 0x55554444; /* p */
- stack_frame->exception_stack_frame.dp_st1 = (0x00000000) | rt_hw_get_st1(); /* dp_st1 */
+ stack_frame->exception_stack_frame.dp_st1 = (0x00000000) | rt_hw_get_st1() & 0xFFFFFFFE; /* dp_st1 */
stack_frame->exception_stack_frame.dbgstat_ier = 0; /* dbgstat_ier */
stack_frame->exception_stack_frame.return_address = (unsigned long)tentry; /* return_address */
stack_frame->rpc = (unsigned long)texit;