summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien George <damien@micropython.org>2024-02-02 17:50:34 +1100
committerDamien George <damien@micropython.org>2025-04-09 00:22:32 +1000
commit2f85a19d7d7c342aefa6e3d628c1d398f53d3adf (patch)
treef129ce916edddc9ce7563e44c2076395a2a09c5a
parent2a580b05ada2ce6c87d6e94196178c511ef7acdf (diff)
alif/modmachine: Implement machine.unique_id(), fix machine.reset().
They both use SE services. Signed-off-by: Damien George <damien@micropython.org>
-rw-r--r--ports/alif/modmachine.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/ports/alif/modmachine.c b/ports/alif/modmachine.c
index e19150e01..29a70305d 100644
--- a/ports/alif/modmachine.c
+++ b/ports/alif/modmachine.c
@@ -27,6 +27,8 @@
// This file is never compiled standalone, it's included directly from
// extmod/modmachine.c via MICROPY_PY_MACHINE_INCLUDEFILE.
+#include "se_services.h"
+
#define MICROPY_PY_MACHINE_EXTRA_GLOBALS \
{ MP_ROM_QSTR(MP_QSTR_Pin), MP_ROM_PTR(&machine_pin_type) }, \
{ MP_ROM_QSTR(MP_QSTR_Timer), MP_ROM_PTR(&machine_timer_type) }, \
@@ -36,11 +38,13 @@ static void mp_machine_idle(void) {
}
static mp_obj_t mp_machine_unique_id(void) {
- return mp_obj_new_bytes((const uint8_t *)"ABCD", 4);
+ uint8_t id[5];
+ se_services_get_unique_id(id);
+ return mp_obj_new_bytes(id, sizeof(id));
}
NORETURN static void mp_machine_reset(void) {
- NVIC_SystemReset();
+ se_services_reset_soc();
}
NORETURN void mp_machine_bootloader(size_t n_args, const mp_obj_t *args) {