Skip to content

Commit

Permalink
rp2/mpconfigport: Allow MICROPY_PY_THREAD to be disabled by a board.
Browse files Browse the repository at this point in the history
Signed-off-by: Damien George <damien@micropython.org>
  • Loading branch information
dpgeorge committed Jan 16, 2024
1 parent a70367e commit efa54c2
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 0 deletions.
2 changes: 2 additions & 0 deletions ports/rp2/mpconfigport.h
Original file line number Diff line number Diff line change
Expand Up @@ -89,9 +89,11 @@
// Fine control over Python builtins, classes, modules, etc
#define MICROPY_PY_BUILTINS_HELP_TEXT rp2_help_text
#define MICROPY_PY_SYS_PLATFORM "rp2"
#ifndef MICROPY_PY_THREAD
#define MICROPY_PY_THREAD (1)
#define MICROPY_PY_THREAD_GIL (0)
#define MICROPY_THREAD_YIELD() mp_handle_pending(true)
#endif

// Extended modules
#define MICROPY_EPOCH_IS_1970 (1)
Expand Down
5 changes: 5 additions & 0 deletions ports/rp2/mphalport.h
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,13 @@
#define MICROPY_HW_USB_CDC_TX_TIMEOUT (500)

// Entering a critical section.
#if MICROPY_PY_THREAD
#define MICROPY_BEGIN_ATOMIC_SECTION() mp_thread_begin_atomic_section()
#define MICROPY_END_ATOMIC_SECTION(state) mp_thread_end_atomic_section(state)
#else
#define MICROPY_BEGIN_ATOMIC_SECTION() save_and_disable_interrupts()
#define MICROPY_END_ATOMIC_SECTION(state) restore_interrupts(state)
#endif

#define MICROPY_PY_PENDSV_ENTER pendsv_suspend()
#define MICROPY_PY_PENDSV_EXIT pendsv_resume()
Expand Down

0 comments on commit efa54c2

Please sign in to comment.