armv7/8m: unmask all the IRQ when thread start

NVIC_SYSH_PRIORITY_MIN not the basepri loweest prio
spec says:
basepri 0 - Disables masking by BASEPRI

Signed-off-by: ligd <liguiding1@xiaomi.com>
This commit is contained in:
ligd 2024-04-24 15:39:18 +08:00 committed by Xiang Xiao
parent 33e30239f1
commit aa4a428825
4 changed files with 4 additions and 4 deletions

View File

@ -440,7 +440,7 @@ static inline void up_irq_enable(void)
{ {
/* In this case, we are always retaining or lowering the priority value */ /* In this case, we are always retaining or lowering the priority value */
setbasepri(NVIC_SYSH_PRIORITY_MIN); setbasepri(0);
__asm__ __volatile__ ("\tcpsie i\n"); __asm__ __volatile__ ("\tcpsie i\n");
} }

View File

@ -413,7 +413,7 @@ static inline void up_irq_enable(void)
{ {
/* In this case, we are always retaining or lowering the priority value */ /* In this case, we are always retaining or lowering the priority value */
setbasepri(NVIC_SYSH_PRIORITY_MIN); setbasepri(0);
__asm__ __volatile__ ("\tcpsie i\n"); __asm__ __volatile__ ("\tcpsie i\n");
} }

View File

@ -163,7 +163,7 @@ void up_initial_state(struct tcb_s *tcb)
#else /* CONFIG_SUPPRESS_INTERRUPTS */ #else /* CONFIG_SUPPRESS_INTERRUPTS */
#ifdef CONFIG_ARMV7M_USEBASEPRI #ifdef CONFIG_ARMV7M_USEBASEPRI
xcp->regs[REG_BASEPRI] = NVIC_SYSH_PRIORITY_MIN; xcp->regs[REG_BASEPRI] = 0;
#endif #endif
#endif /* CONFIG_SUPPRESS_INTERRUPTS */ #endif /* CONFIG_SUPPRESS_INTERRUPTS */

View File

@ -169,7 +169,7 @@ void up_initial_state(struct tcb_s *tcb)
#else /* CONFIG_SUPPRESS_INTERRUPTS */ #else /* CONFIG_SUPPRESS_INTERRUPTS */
#ifdef CONFIG_ARMV8M_USEBASEPRI #ifdef CONFIG_ARMV8M_USEBASEPRI
xcp->regs[REG_BASEPRI] = NVIC_SYSH_PRIORITY_MIN; xcp->regs[REG_BASEPRI] = 0;
#endif #endif
#endif /* CONFIG_SUPPRESS_INTERRUPTS */ #endif /* CONFIG_SUPPRESS_INTERRUPTS */