[fota] add lynq_fota function
Change-Id: I2ed8d4e1383692424c0b36be5c583b635190ea0d
diff --git a/mbtk/lynq_lib/src/lynq_fota.c b/mbtk/lynq_lib/src/lynq_fota.c
index 049bc08..dfb96be 100755
--- a/mbtk/lynq_lib/src/lynq_fota.c
+++ b/mbtk/lynq_lib/src/lynq_fota.c
@@ -1,9 +1,43 @@
#include "lynq-qser-fota.h"
#include "mbtk_type.h"
+#include "mbtk_fota.h"
+
+
+char addr_buf[128]={0};
+int segment_size =0;
+
+
+int fota_cb(int status, int percent)
+{
+// printf("status: %d, percent: %d%%\n", status, percent);
+ return 0;
+}
int lynq_rock_main(int first_run)
{
UNUSED(first_run);
+ printf("%s, %d", __FUNCTION__, __LINE__);
+ int ret = 0;
+
+ printf("addr_buf:%s, segment_size:%d\n", addr_buf, segment_size);
+ ret = mbtk_fota_init(fota_cb);
+ if(!strcmp(addr_buf, "http"))
+ {
+
+ ret = mbtk_fota_fw_write_by_url(addr_buf, segment_size,10, 600);
+ }
+ else
+ {
+ ret =mbtk_fota_fw_write(addr_buf, segment_size);
+ }
+
+ if(ret)
+ {
+ printf("lynq_rock_main fail\n");
+ return -1;
+ }
+
+ mbtk_fota_done1(1);
return 0;
@@ -13,20 +47,51 @@
{
UNUSED(value);
UNUSED(size);
+ printf("111%s, %d", __FUNCTION__, __LINE__);
+ if(value == NULL)
+ {
+ return -1;
+ }
+
+ memset(addr_buf, 0, sizeof(addr_buf));
+ memcpy(addr_buf, value, strlen(value));
+ segment_size = size;
+
+ printf("addr_buf:%s, value:%s\n", addr_buf, value);
+ printf("segment_size:%d, size:%d\n", segment_size, size);
return 0;
}
int lynq_fota_nrestart(void)
{
+ printf("%s, %d", __FUNCTION__, __LINE__);
+ int ret = 0;
+
+ ret = mbtk_fota_init(fota_cb);
+ if(!strcmp(addr_buf, "http"))
+ {
+ ret = mbtk_fota_fw_write_by_url(addr_buf, segment_size,10, 600);
+ }
+ else
+ {
+ ret =mbtk_fota_fw_write(addr_buf, segment_size);
+ }
+
+ if(ret)
+ {
+ printf("lynq_fota_nrestart fail\n");
+ return -1;
+ }
return 0;
}
int lynq_get_upgrade_status(void)
{
+ printf("%s, %d", __FUNCTION__, __LINE__);
- return 0;
+ return mbtk_fota_status();
}