|
| enum | upg_result {
UPG_RESULT_UPDATE_SUCCESS
, UPG_RESULT_VERIFY_HEAD_FAILED
, UPG_RESULT_VERIFY_HASH_TABLE_FAILED
, UPG_RESULT_VERIFY_IMAGE_FAILED
,
UPG_RESULT_VERIFY_OLD_IMAGE_FAILED
, UPG_RESULT_DECOMPRESS_IMAGE_FAILED
, UPG_RESULT_DECRYPT_IMAGE_FAILED
, UPG_RESULT_RECRYPT_IMAGE_FAILED
,
UPG_RESULT_DIFF_IMAGE_FAILED
, UPG_RESULT_UPDATE_IMAGE_FAILED
, UPG_RESULT_PROCESS_NV_FAILED
, UPG_RESULT_VERIFY_VERSION_FAILED
,
UPG_RESULT_IMAGE_ID_FAILED
, UPG_RESULT_RETRY_ALL_FAILED
, UPG_RESULT_MAX
} |
| | 分区枚举类型。 更多...
|
| |
| enum | upg_status { UPG_STATUS_SUCC
, UPG_STATUS_FAIL
, UPG_STATUS_UPDATING
, UPG_STATUS_NONE
} |
| | 升级状态枚举类型。 更多...
|
| |
|
| errcode_t | uapi_upg_init (const upg_func_t *func_list) |
| | 初始化升级模块。
|
| |
| errcode_t | uapi_upg_start (void) |
| | 开始本地升级。
|
| |
| errcode_t | uapi_upg_register_progress_callback (uapi_upg_progress_cb func) |
| | 注册升级进度通知回调函数。
|
| |
| errcode_t | uapi_upg_get_result (upg_result_t *result, uint32_t *last_image_index) |
| | 获取升级结果。
|
| |
| upg_status_t | uapi_upg_get_status (void) |
| | 获取升级状态。
|
| |
| errcode_t | uapi_upg_prepare (upg_prepare_info_t *prepare_info) |
| | 用来保存升级包的本地存储器的准备工作。
|
| |
| errcode_t | uapi_upg_reset_upgrade_flag (void) |
| | 重置升级标记
|
| |
| errcode_t | uapi_upg_write_package_async (uint32_t offset, const uint8_t *buff, uint16_t len, uapi_upg_write_done_cb callback) |
| | 将升级包数据写入本地存储器。
|
| |
| errcode_t | uapi_upg_write_package_sync (uint32_t offset, const uint8_t *buff, uint16_t len) |
| | 将升级包数据写入本地存储器。
|
| |
| errcode_t | uapi_upg_read_package (uint32_t offset, uint8_t *buff, uint32_t len) |
| | 从本地存储器读取升级包数据。
|
| |
| uint32_t | uapi_upg_get_storage_size (void) |
| | 获取可存放升级包的空间大小。
|
| |
| errcode_t | uapi_upg_request_upgrade (bool reset) |
| | 申请开始进行本地升级。
|
| |
| errcode_t | uapi_upg_verify_file_head (const upg_package_header_t *pkg_header) |
| | 校验升级包头结构。
|
| |
| errcode_t | uapi_upg_verify_file_image (const upg_image_header_t *img_header, const uint8_t *hash, uint32_t hash_len, bool verify_old) |
| | 校验升级包中的升级镜像。
|
| |
| errcode_t | uapi_upg_verify_file (const upg_package_header_t *pkg_header) |
| | 校验整个升级包。
|
| |
| void | uapi_upg_register_user_defined_verify_func (uapi_upg_user_defined_check func, uintptr_t param) |
| | 注册用户自定义字段的校验函数。
|
| |
Copyright (c) HiSilicon (Shanghai) Technologies Co., Ltd. 2022-2022. All rights reserved.
Description: UPG Interface Header
History:
2022-09-01, Create file.
◆ DIE_ID_LEN
◆ IV_LEN
◆ PROTECT_KEY_LEN
| #define PROTECT_KEY_LEN 16 |
◆ SHA_256_LENGTH
| #define SHA_256_LENGTH 32 |
◆ uapi_upg_progress_cb
| typedef void(* uapi_upg_progress_cb) (uint32_t percent) |
◆ uapi_upg_user_defined_check
| typedef errcode_t(* uapi_upg_user_defined_check) (uint8_t *user_info, uint32_t info_len, uintptr_t param) |
◆ uapi_upg_write_done_cb
| typedef void(* uapi_upg_write_done_cb) (errcode_t result) |
◆ upg_fota_info_data_t
◆ upg_func_free
| typedef void(* upg_func_free) (void *ptr) |
◆ upg_func_malloc
| typedef void *(* upg_func_malloc) (const uint32_t size) |
◆ upg_func_serial_putc
| typedef void(* upg_func_serial_putc) (const char c) |
◆ upg_func_t
◆ upg_image_hash_node_t
◆ upg_image_header_t
◆ upg_key_area_data_t
◆ upg_package_header_t
◆ upg_prepare_info_t
◆ upg_result_t
◆ upg_status_t
◆ upg_result
分区枚举类型。
| 枚举值 |
|---|
| UPG_RESULT_UPDATE_SUCCESS | 升级成功。
|
| UPG_RESULT_VERIFY_HEAD_FAILED | 校验升级包头失败。
|
| UPG_RESULT_VERIFY_HASH_TABLE_FAILED | 校验Hash Table失败。
|
| UPG_RESULT_VERIFY_IMAGE_FAILED | 校验镜像失败。
|
| UPG_RESULT_VERIFY_OLD_IMAGE_FAILED | 校验旧镜像失败。
|
| UPG_RESULT_DECOMPRESS_IMAGE_FAILED | 解压缩失败。
|
| UPG_RESULT_DECRYPT_IMAGE_FAILED | 解密失败。
|
| UPG_RESULT_RECRYPT_IMAGE_FAILED | 重加密失败。
|
| UPG_RESULT_DIFF_IMAGE_FAILED | 差分恢复失败。
|
| UPG_RESULT_UPDATE_IMAGE_FAILED | 更新镜像到Flash失败。
|
| UPG_RESULT_PROCESS_NV_FAILED | 处理NV镜像失败。
|
| UPG_RESULT_VERIFY_VERSION_FAILED | 防回滚校验失败。
|
| UPG_RESULT_IMAGE_ID_FAILED | 镜像ID校验失败。
|
| UPG_RESULT_RETRY_ALL_FAILED | 所有升级尝试均失败。
|
| UPG_RESULT_MAX | 升级结果最大值。
|
◆ upg_status
升级状态枚举类型。
| 枚举值 |
|---|
| UPG_STATUS_SUCC | 升级成功。
|
| UPG_STATUS_FAIL | 升级失败。
|
| UPG_STATUS_UPDATING | 正在进行升级。
|
| UPG_STATUS_NONE | 非升级状态。
|
◆ uapi_upg_get_result()
◆ uapi_upg_get_status()
◆ uapi_upg_get_storage_size()
| uint32_t uapi_upg_get_storage_size |
( |
void |
| ) |
|
◆ uapi_upg_init()
◆ uapi_upg_prepare()
◆ uapi_upg_read_package()
| errcode_t uapi_upg_read_package |
( |
uint32_t |
offset, |
|
|
uint8_t * |
buff, |
|
|
uint32_t |
len |
|
) |
| |
◆ uapi_upg_register_progress_callback()
◆ uapi_upg_register_user_defined_verify_func()
◆ uapi_upg_request_upgrade()
| errcode_t uapi_upg_request_upgrade |
( |
bool |
reset | ) |
|
◆ uapi_upg_reset_upgrade_flag()
| errcode_t uapi_upg_reset_upgrade_flag |
( |
void |
| ) |
|
◆ uapi_upg_start()
◆ uapi_upg_verify_file()
◆ uapi_upg_verify_file_head()
◆ uapi_upg_verify_file_image()
| errcode_t uapi_upg_verify_file_image |
( |
const upg_image_header_t * |
img_header, |
|
|
const uint8_t * |
hash, |
|
|
uint32_t |
hash_len, |
|
|
bool |
verify_old |
|
) |
| |
◆ uapi_upg_write_package_async()
◆ uapi_upg_write_package_sync()
| errcode_t uapi_upg_write_package_sync |
( |
uint32_t |
offset, |
|
|
const uint8_t * |
buff, |
|
|
uint16_t |
len |
|
) |
| |