diff options
| author | Damien George <damien@micropython.org> | 2023-11-23 16:36:52 +1100 |
|---|---|---|
| committer | Damien George <damien@micropython.org> | 2023-11-30 16:11:11 +1100 |
| commit | 30a63a204dc6ad02c996d5c40c34b67c85c650e4 (patch) | |
| tree | 464f08a0b2cd65e773daaf93101fdeeee25cfb81 /ports/esp8266/modmachine.c | |
| parent | 7d39db2503cab67f03216161b0e829939f80fff7 (diff) | |
extmod/modmachine: Provide common Python bindings for machine.idle().
And use it in all ports. The ports are unchanged, except esp8266 which now
just returns None from this function instead of the time elapsed (to match
other ports), and qemu-arm which gains this function.
Signed-off-by: Damien George <damien@micropython.org>
Diffstat (limited to 'ports/esp8266/modmachine.c')
| -rw-r--r-- | ports/esp8266/modmachine.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/ports/esp8266/modmachine.c b/ports/esp8266/modmachine.c index b15515acd..cce6b01ce 100644 --- a/ports/esp8266/modmachine.c +++ b/ports/esp8266/modmachine.c @@ -45,7 +45,6 @@ { MP_ROM_QSTR(MP_QSTR_reset), MP_ROM_PTR(&machine_reset_obj) }, \ { MP_ROM_QSTR(MP_QSTR_reset_cause), MP_ROM_PTR(&machine_reset_cause_obj) }, \ { MP_ROM_QSTR(MP_QSTR_unique_id), MP_ROM_PTR(&machine_unique_id_obj) }, \ - { MP_ROM_QSTR(MP_QSTR_idle), MP_ROM_PTR(&machine_idle_obj) }, \ { MP_ROM_QSTR(MP_QSTR_sleep), MP_ROM_PTR(&machine_lightsleep_obj) }, \ { MP_ROM_QSTR(MP_QSTR_lightsleep), MP_ROM_PTR(&machine_lightsleep_obj) }, \ { MP_ROM_QSTR(MP_QSTR_deepsleep), MP_ROM_PTR(&machine_deepsleep_obj) }, \ @@ -102,14 +101,10 @@ STATIC mp_obj_t machine_unique_id(void) { } STATIC MP_DEFINE_CONST_FUN_OBJ_0(machine_unique_id_obj, machine_unique_id); -STATIC mp_obj_t machine_idle(void) { - uint32_t t = mp_hal_ticks_cpu(); +STATIC void mp_machine_idle(void) { asm ("waiti 0"); - t = mp_hal_ticks_cpu() - t; ets_event_poll(); // handle any events after possibly a long wait (eg feed WDT) - return MP_OBJ_NEW_SMALL_INT(t); } -STATIC MP_DEFINE_CONST_FUN_OBJ_0(machine_idle_obj, machine_idle); STATIC mp_obj_t machine_lightsleep(size_t n_args, const mp_obj_t *args) { uint32_t max_us = 0xffffffff; |
