ports: Move definitions of ATOMIC_SECTION macros to mphalport.h.
Also move MICROPY_PY_PENDSV_ENTER/REENTER/EXIT to mphalport.h, for ports where these are not already there. This helps separate the hardware implementation of these macros from the MicroPython configuration (eg for renesas-ra and stm32, the IRQ static inline helper functions can now be moved to irq.h). Signed-off-by: Damien George <damien@micropython.org>
This commit is contained in:
@@ -221,12 +221,6 @@ static inline unsigned long mp_random_seed_init(void) {
|
||||
#include <stdio.h>
|
||||
#endif
|
||||
|
||||
// If threading is enabled, configure the atomic section.
|
||||
#if MICROPY_PY_THREAD
|
||||
#define MICROPY_BEGIN_ATOMIC_SECTION() (mp_thread_unix_begin_atomic_section(), 0xffffffff)
|
||||
#define MICROPY_END_ATOMIC_SECTION(x) (void)x; mp_thread_unix_end_atomic_section()
|
||||
#endif
|
||||
|
||||
// In lieu of a WFI(), slow down polling from being a tight loop.
|
||||
#ifndef MICROPY_EVENT_POLL_HOOK
|
||||
#define MICROPY_EVENT_POLL_HOOK \
|
||||
|
||||
@@ -30,6 +30,12 @@
|
||||
#define CHAR_CTRL_C (3)
|
||||
#endif
|
||||
|
||||
// If threading is enabled, configure the atomic section.
|
||||
#if MICROPY_PY_THREAD
|
||||
#define MICROPY_BEGIN_ATOMIC_SECTION() (mp_thread_unix_begin_atomic_section(), 0xffffffff)
|
||||
#define MICROPY_END_ATOMIC_SECTION(x) (void)x; mp_thread_unix_end_atomic_section()
|
||||
#endif
|
||||
|
||||
void mp_hal_set_interrupt_char(char c);
|
||||
|
||||
#define mp_hal_stdio_poll unused // this is not implemented, nor needed
|
||||
|
||||
Reference in New Issue
Block a user