diff options
author | Thorsten von Eicken <tve@voneicken.com> | 2020-03-31 16:03:01 -0700 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2020-04-23 10:59:07 +1000 |
commit | 1ae7e0e561134c39471e3000eced33da732b4103 (patch) | |
tree | a1d1f7393863cf0fddf8dcae82aabd1e04768971 /ports/esp32/esp32_partition.c | |
parent | a177831c46a7e217fed6562510e12183377053f7 (diff) | |
download | micropython-1ae7e0e561134c39471e3000eced33da732b4103.tar.gz micropython-1ae7e0e561134c39471e3000eced33da732b4103.zip |
esp32: Consolidate check_esp_err functions and add IDF error string.
This commit consolidates a number of check_esp_err functions that check
whether an ESP-IDF return code is OK and raises an exception if not. The
exception raised is an OSError with the error code as the first argument
(negative if it's ESP-IDF specific) and the ESP-IDF error string as the
second argument.
This commit also fixes esp32.Partition.set_boot to use check_esp_err, and
uses that function for a unit test.
Diffstat (limited to 'ports/esp32/esp32_partition.c')
-rw-r--r-- | ports/esp32/esp32_partition.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/ports/esp32/esp32_partition.c b/ports/esp32/esp32_partition.c index a1aa8c9dde..cbb62206fa 100644 --- a/ports/esp32/esp32_partition.c +++ b/ports/esp32/esp32_partition.c @@ -29,6 +29,7 @@ #include "py/runtime.h" #include "py/mperrno.h" #include "extmod/vfs.h" +#include "mphalport.h" #include "modesp32.h" #include "esp_ota_ops.h" @@ -47,12 +48,6 @@ typedef struct _esp32_partition_obj_t { const esp_partition_t *part; } esp32_partition_obj_t; -static inline void check_esp_err(esp_err_t e) { - if (e != ESP_OK) { - mp_raise_OSError(-e); - } -} - STATIC esp32_partition_obj_t *esp32_partition_new(const esp_partition_t *part) { if (part == NULL) { mp_raise_OSError(MP_ENOENT); @@ -203,7 +198,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_3(esp32_partition_ioctl_obj, esp32_partition_ioct STATIC mp_obj_t esp32_partition_set_boot(mp_obj_t self_in) { esp32_partition_obj_t *self = MP_OBJ_TO_PTR(self_in); - esp_ota_set_boot_partition(self->part); + check_esp_err(esp_ota_set_boot_partition(self->part)); return mp_const_none; } STATIC MP_DEFINE_CONST_FUN_OBJ_1(esp32_partition_set_boot_obj, esp32_partition_set_boot); |