diff --git a/esp8266/modesp.c b/esp8266/modesp.c index 515319c9e04bb521990c9e6f0f0b372f06e00843..827907d42bd6e20a8e16578c409e82b1de757354 100644 --- a/esp8266/modesp.c +++ b/esp8266/modesp.c @@ -629,6 +629,11 @@ STATIC mp_obj_t esp_flash_size(void) { } STATIC MP_DEFINE_CONST_FUN_OBJ_0(esp_flash_size_obj, esp_flash_size); +STATIC mp_obj_t esp_flash_user_start(void) { + return MP_OBJ_NEW_SMALL_INT(0x90000); +} +STATIC MP_DEFINE_CONST_FUN_OBJ_0(esp_flash_user_start_obj, esp_flash_user_start); + STATIC mp_obj_t esp_check_fw(void) { MD5_CTX ctx; uint32_t *sz_p = (uint32_t*)0x40208ffc; @@ -706,6 +711,7 @@ STATIC const mp_map_elem_t esp_module_globals_table[] = { { MP_OBJ_NEW_QSTR(MP_QSTR_flash_write), (mp_obj_t)&esp_flash_write_obj }, { MP_OBJ_NEW_QSTR(MP_QSTR_flash_erase), (mp_obj_t)&esp_flash_erase_obj }, { MP_OBJ_NEW_QSTR(MP_QSTR_flash_size), (mp_obj_t)&esp_flash_size_obj }, + { MP_OBJ_NEW_QSTR(MP_QSTR_flash_user_start), (mp_obj_t)&esp_flash_user_start_obj }, #if MODESP_ESPCONN { MP_OBJ_NEW_QSTR(MP_QSTR_socket), (mp_obj_t)&esp_socket_type }, { MP_OBJ_NEW_QSTR(MP_QSTR_getaddrinfo), (mp_obj_t)&esp_getaddrinfo_obj }, diff --git a/esp8266/modules/flashbdev.py b/esp8266/modules/flashbdev.py index 98b0208fb6c06148460e08bc088fac7f854485a4..e879895fb0d0a66afc8dc7a46056102f489ecd5f 100644 --- a/esp8266/modules/flashbdev.py +++ b/esp8266/modules/flashbdev.py @@ -3,7 +3,7 @@ import esp class FlashBdev: SEC_SIZE = 4096 - START_SEC = 0x90000 // SEC_SIZE + START_SEC = esp.flash_user_start() // SEC_SIZE NUM_BLK = 0x6b def __init__(self, blocks=NUM_BLK):