unleashed-firmware/applications/system/updater/util/update_task_i.h
hedger f2324e4d1c
[FL-3377] Update error code descriptions (#2875)
* updater: added update error code descriptions
* updater: separate ram/flash messages
* updater: extra pre-update checks
* updater: fixed string comparison
* updater: Additional logging

Co-authored-by: あく <alleteam@gmail.com>
2023-07-14 17:45:16 +04:00

32 lines
853 B
C

#pragma once
#include <storage/storage.h>
#include <furi_hal.h>
#define UPDATE_TASK_NOERR 0
#define UPDATE_TASK_FAILED -1
typedef struct UpdateTask {
UpdateTaskState state;
FuriString* update_path;
UpdateManifest* manifest;
FuriThread* thread;
Storage* storage;
File* file;
updateProgressCb status_change_cb;
void* status_change_cb_state;
FuriHalRtcBootMode boot_mode;
} UpdateTask;
void update_task_set_progress(UpdateTask* update_task, UpdateTaskStage stage, uint8_t progress);
bool update_task_parse_manifest(UpdateTask* update_task);
bool update_task_open_file(UpdateTask* update_task, FuriString* filename);
int32_t update_task_worker_flash_writer(void* context);
int32_t update_task_worker_backup_restore(void* context);
#define CHECK_RESULT(x) \
if(!(x)) { \
break; \
}