Dozingfiretruck 3 лет назад
Родитель
Сommit
6ba41e1bae
3 измененных файлов с 0 добавлено и 141 удалено
  1. 0 9
      luat/include/luat_ota.h
  2. 0 4
      luat/modules/luat_lib_rtos.c
  3. 0 128
      luat/modules/luat_ota.c

+ 0 - 9
luat/include/luat_ota.h

@@ -12,14 +12,6 @@
 #define UPDATE_BIN_PATH "/update.bin"
 #endif
 
-#define ROLLBACK_MARK_PATH "/rollback_mark"
-#define UPDATE_MARK "/update_mark"
-#define FLASHX_PATH "/flashx.bin"
-
-#ifndef LUAT_OTA_MODE
-#define LUAT_OTA_MODE 1
-#endif
-
 #ifndef LUAT_EXIT_REBOOT_DELAY
 #define LUAT_EXIT_REBOOT_DELAY 15000
 #endif
@@ -30,6 +22,5 @@ void luat_ota_reboot(int timeout_ms);
 int luat_ota(uint32_t luadb_addr);
 
 int luat_ota_exec(void);
-// int luat_flash_write(uint32_t addr, uint8_t * buf, uint32_t len);
 
 #endif

+ 0 - 4
luat/modules/luat_lib_rtos.c

@@ -275,11 +275,7 @@ static int l_rtos_meminfo(lua_State *L) {
 log.info("firmware", rtos.firmware())
 */
 static int l_rtos_firmware(lua_State *L) {
-#ifdef AIR302
-    lua_pushfstring(L, "LuatOS_%s_%s", luat_version_str(), luat_os_bsp());
-#else
     lua_pushfstring(L, "LuatOS-SoC_%s_%s", luat_version_str(), luat_os_bsp());
-#endif
     return 1;
 }
 

+ 0 - 128
luat/modules/luat_ota.c

@@ -9,137 +9,12 @@
 #define LUAT_LOG_TAG "ota"
 #include "luat_log.h"
 
-int luat_bin_unpack(const char* path, int writeOut);
-
-int luat_ota_need_update(void) {
-  return (luat_fs_fexist(UPDATE_BIN_PATH)) ? 1 : 0;
-}
-
-int luat_ota_need_rollback(void) {
-  return (luat_fs_fexist(ROLLBACK_MARK_PATH)) ? 1 : 0;
-}
-
-int luat_ota_mark_rollback(void) {
-  // 既然是异常退出,那肯定出错了!!!
-  // 如果升级过, 那么就写入标志文件
-  {
-    if (luat_fs_fexist(UPDATE_MARK)) {
-      FILE* fd = luat_fs_fopen("/rollback_mark", "wb");
-      if (fd) {
-        luat_fs_fclose(fd);
-      }
-    }
-    else {
-      // 没升级过, 那就是线刷, 不存在回滚
-    }
-  }
-  return 0;
-}
-
-static void luat_bin_exec_update(void);
-static void luat_bin_exec_rollback(void);
-
 LUAT_WEAK void luat_ota_reboot(int timeout_ms) {
   if (timeout_ms > 0)
     luat_timer_mdelay(timeout_ms);
   luat_os_reboot(1);
 }
 
-void luat_ota_exec_update(void) {
-#if LUAT_OTA_MODE == 1 
-  luat_bin_exec_update();
-#elif LUAT_OTA_MODE == 2
-  luat_db_exec_update();
-#endif
-}
-
-void luat_ota_exec_rollback(void) {
-#if LUAT_OTA_MODE == 1 
-  luat_bin_exec_rollback();
-#elif LUAT_OTA_MODE == 2
-  luat_db_exec_rollback();
-#endif
-}
-
-
-int luat_ota_update_or_rollback(void) {
-  if (luat_ota_need_update()) {
-    luat_ota_exec_update();
-    LLOGW("update: reboot at 5 secs");
-    luat_ota_reboot(5000);
-    return 1;
-  }
-  if (luat_ota_need_rollback()) {
-    luat_ota_exec_rollback();
-    LLOGW("rollback: reboot at 5 secs");
-    luat_ota_reboot(5000);
-    return 1;
-  }
-  return 0;
-}
-
-
-static void luat_bin_exec_update(void) {
-  // 找到了, 检查一下大小
-  LLOGI("found " UPDATE_BIN_PATH " ...");
-  size_t fsize = luat_fs_fsize(UPDATE_BIN_PATH);
-  if (fsize < 256) {
-    // 太小了, 肯定不合法, 直接移除, 正常启动
-    LLOGW(UPDATE_BIN_PATH " is too small, delete it");
-    luat_fs_remove(UPDATE_BIN_PATH);
-    return;
-  }
-  // 写入标志文件.
-  // 必须提前写入, 即使解包失败, 仍标记为升级过,这样报错就能回滚
-  LLOGI("write " UPDATE_MARK  " first");
-  FILE* fd = luat_fs_fopen(UPDATE_MARK, "wb");
-  if (fd) {
-    luat_fs_fclose(fd);
-    // TODO 连标志文件都写入失败,怎么办?
-  }
-  // 检测升级包合法性
-  if (luat_bin_unpack(UPDATE_BIN_PATH, 0) != LUA_OK) {
-    LLOGE("%s is invaild!!", UPDATE_BIN_PATH);
-  }
-  else {
-    // 开始解包升级文件
-    if (luat_bin_unpack(UPDATE_BIN_PATH, 1) == LUA_OK) {
-      LLOGI("update OK, remove " UPDATE_BIN_PATH);
-    }
-    else {
-      LLOGW("update FAIL, remove " UPDATE_BIN_PATH);
-    }
-  }
-  // 无论是否成功,都一定要删除升级文件, 防止升级死循环
-  luat_fs_remove(UPDATE_BIN_PATH);
-}
-
-static void luat_bin_exec_rollback(void) {
-  // 回滚文件存在,
-  LLOGW("Found " ROLLBACK_MARK_PATH  ", check rollback");
-  // 首先,移除回滚标志, 防止重复N次的回滚
-  luat_fs_remove("/rollback_mark"); // TODO 如果删除也失败呢?
-  // 然后检查原始文件, flashx.bin
-  if (!luat_fs_fexist(FLASHX_PATH)) {
-    LLOGW("NOT " FLASHX_PATH " , can't rollback");
-    return;
-  }
-  // 存在原始flashx.bin
-  LLOGD("found " FLASHX_PATH  ", unpack it");
-  // 开始回滚操作
-  if (luat_bin_unpack(FLASHX_PATH, 1) == LUA_OK) {
-    LLOGI("rollback complete!");
-  }
-  else {
-    LLOGE("rollback FAIL");
-  }
-  // 执行完成, 准备重启
-  LLOGW("rollback: reboot at 5 secs");
-  // 延迟5秒后,重启
-  luat_timer_mdelay(5*1000);
-  luat_os_reboot(0); // 重启
-}
-
 #include "luat_crypto.h"
 #include "luat_md5.h"
 
@@ -162,9 +37,6 @@ static void luat_bin_exec_rollback(void) {
 #endif
 #endif
 
-void luat_str_fromhex(char* str, size_t len, char* buff);
-void luat_str_tohex(char* str, size_t len, char* buff);
-
 #define OTA_CHECK_BUFF_SIZE (64) // 超过64字节的话, luat_md5报错, 待查
 typedef struct ota_md5
 {