[Feature][T108][task-view-1499] change FOTA api .h file name and .c file name
Only Configure: No
Affected branch: GSW_V1453
Affected module: FOTA api
Is it affected on IC: only ASR
Self-test: yes
Doc Update: no
Change-Id: Idf0227ece38b17112e6ad77dc05803d09a11d0aa
diff --git a/mbtk/libgsw_lib/libgsw_ota.c b/mbtk/libgsw_lib/gsw_ota_ua_interface.c
similarity index 79%
rename from mbtk/libgsw_lib/libgsw_ota.c
rename to mbtk/libgsw_lib/gsw_ota_ua_interface.c
index 58dfae3..10dd310 100755
--- a/mbtk/libgsw_lib/libgsw_ota.c
+++ b/mbtk/libgsw_lib/gsw_ota_ua_interface.c
@@ -10,7 +10,7 @@
#include <errno.h>
#include <stdbool.h>
-#include "gsw_ota.h"
+#include "gsw_ota_ua_interface.h"
@@ -110,8 +110,55 @@
} \
fun_ptr_log(LOG_ERR_LEVEL, "%s#%s: "GSW_OTA"" fmt, ptr_1001 + 1, line_1001, ##args); \
} while(0)
-
+typedef enum
+{
+ GSW_UPDATE_SUCCEED = 0, //update succeed
+ GSW_UPDATE_INPROGRESS, //update in progress
+ GSW_UPDATE_BACKUP, //A/B partition sync in progress
+ GSW_UPDATE_FAILED, //update failed
+ GSW_UPDATE_WAITEDONE, //update in-active part finished,not switch update part.
+ GSW_UPDATE_NEEDSYNC, //switch update part, need sync A/B part
+ GSW_UPDATE_CANCEL //updata cancel success
+}gsw_update_state_t;
+
+typedef enum
+{
+ GSW_UPDATE_NOERROR=0, //升级成功
+ GSW_UPDATE_ARGUMENTERROR, //升级程序启动参数错误
+ GSW_UPDATE_SDCARDNOEXIST, //未挂载外置FLASH等存储设备
+ GSW_UPDATE_PACKAGENOEXIST, //升级包不存在
+ GSW_UPDATE_UNZIPFAILED, //解压升级包出错
+ GSW_UPDATE_PARTITIONFLUSHERROR,//写入分区出错
+ GSW_UPDATE_XMLPARSEERROR, //解析 fotaconfig.xml 文件出错
+ GSW_UPDATE_DIFFUBIUNATTACH, //差分升级 UBI 分区挂载异常
+ GSW_UPDATE_NOSPACELEFT, //空间不足
+ GSW_UPDATE_FILECHECKFAILED, //MD5 值校验失败
+ GSW_UPDATE_BSPATCHFAILED, //bspatch 合成新文件夹失败
+ GSW_UPDATE_NOFINDPARTITION, //待升级分区不存在
+ GSW_UPDATE_UBIVOLUMEERROR, //差分升级,待升级 UBI 卷不存在
+ GSW_UPDATE_NOFOTACONFIGFILE, //升级包中无 fotaconfig.xml 文件
+ GSW_UPDATE_GETOLDSOFTWAREFAILED,//读取原始版本固件失败
+ GSW_UPDATE_FILENOTEXIST, //文件不存在
+ GSW_UPDATE_UPGRADECANCELED, //升级或分区同步被取消
+ GSW_UPDATE_NONEEDCANCEL, //取消升级失败
+ GSW_UPDATE_NOGOING //升级或分区同步正在进行,不可重复操作
+}gsw_update_exit_code_t;
+
+
+typedef struct
+{
+ unsigned int percentage; //update progress0-100
+ gsw_update_state_t update_state;
+ gsw_update_exit_code_t exit_code;
+}gsw_update_info_s;
+
+typedef struct
+{
+ gsw_update_state_t update_state;
+ uint8_t is_damaged; //TURE: damaged FALSE:no damaged
+ uint8_t damaged_partname[16];
+}gsw_system_status_s;
typedef int (*mbtk_fota_get_active_absys_type)(void);
typedef int (*mbtk_fota_fw_write)(char* fname, int segment_size);
@@ -167,14 +214,14 @@
handle = dlopen(LIB_PATH, RTLD_NOW );
if(handle == NULL)
{
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
if(fun_ptr_log == NULL)
{
fun_ptr_log = (mbtk_log)dlsym(handle, "mbtk_log");
if(fun_ptr_log == NULL)
{
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
}
@@ -205,7 +252,7 @@
if(file_path == NULL)
{
LOGE("invalid file_path \n");
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
@@ -220,14 +267,14 @@
if(ret < 0)
{
LOGE("init_handle fail");
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
func_ptr_update_url = (mbtk_fota_fw_write_by_url)dlsym(handle, "mbtk_fota_fw_write_by_url");
if(func_ptr_update_url == NULL)
{
LOGE("Error: %s", dlerror());
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
@@ -237,7 +284,7 @@
{
LOGE("Error: %s", dlerror());
deinit_handle();
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
func_ptr_init = (mbtk_fota_init)dlsym(handle, "mbtk_fota_init");
@@ -245,7 +292,7 @@
{
LOGE("Error: %s", dlerror());
deinit_handle();
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
@@ -257,7 +304,7 @@
LOGE("Error: mbtk_fota_init failed");
deinit_handle();
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
else
{
@@ -276,7 +323,7 @@
{
LOGE("Bad file path ");
deinit_handle();
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
else
{
@@ -284,7 +331,7 @@
{
LOGE("update file no exist");
deinit_handle();
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
}
@@ -293,14 +340,14 @@
{
LOGE("get segment_size fail");
deinit_handle();
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
ret = func_ptr_update(file_path, segment_size);
if(ret < 0)
{
LOGE("Error: mbtk_fota_fw_write failed\n");
deinit_handle();
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
}
return GSW_HAL_SUCCESS;
@@ -342,7 +389,7 @@
* @param [out] NULL
* @retval E_GSW_OTA_RET
*/
-E_GSW_OTA_RET gsw_update_modem_result_query(void)
+int32_t gsw_update_modem_result_query(void)
{
mbtk_fota_status func_ptr_get_result = NULL;
@@ -352,7 +399,7 @@
if(ret < 0)
{
LOGE("init_handle fail");
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
// Get the function pointer
@@ -360,14 +407,14 @@
if (func_ptr_get_result == NULL)
{
LOGE("Error: %s\n", dlerror());
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
ret = func_ptr_get_result();
if(ret < 0 && ret !=-1)
{
LOGE("Error: mbtk_fota_status failed\n");
deinit_handle();
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
deinit_handle();
@@ -410,7 +457,7 @@
* @param [out] NULL
* @retval GSW_HAL_SUCCESS\GSW_HAL_FAIL
*/
-E_GSW_OTA_SYSTEM gsw_update_modem_get_system(void)
+int32_t gsw_update_modem_get_system(void)
{
int ret = -1;
@@ -419,7 +466,7 @@
if(ret < 0)
{
LOGE("init_handle fail");
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
// Get the function pointer
@@ -427,14 +474,14 @@
if (func_ptr == NULL)
{
LOGE("Error: %s", dlerror());
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
ret = func_ptr();
if(ret < 0)
{
LOGE("Error: mbtk_fota_get_active_absys_type failed");
deinit_handle();
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
@@ -472,7 +519,7 @@
if(ret < 0)
{
LOGE("init_handle fail");
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
// Get the function pointer
@@ -480,14 +527,14 @@
if (func_ptr_get_info == NULL)
{
LOGE("Error: %s\n", dlerror());
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
ret = func_ptr_get_info();
if(ret < 0 && ret != -1)
{
LOGE("Error: mbtk_fota_status failed\n");
deinit_handle();
- return GSW_HAL_FAIL;
+ return GSW_HAL_NORMAL_FAIL;
}
//升级成功之后,未重启,不可重复升级