22#define DIFF_STATUS_FLASH_SIZE 0x800000
23#define FLASH_PAGES (DIFF_STATUS_FLASH_SIZE / UPG_FLASH_PAGE_SIZE)
25#define NUM_BITS_PER_BYTE 8
93 uint8_t *src, uint8_t *dst, int32_t ptxt_len);
uint32_t errcode_t
Definition of error code.
Definition errcode.h:30
Definition upg_patch.h:95
uint32_t num_old_pages
Definition upg_patch.h:101
encrypt_one_flash_page encrypt_flash_page_fn
Definition upg_patch.h:122
bool bottom_up
Definition upg_patch.h:112
uint32_t buffers_flash_offset
Definition upg_patch.h:116
fetch_image_contents fetch_image_contents_fn
Definition upg_patch.h:118
uint32_t image_id
Definition upg_patch.h:96
uint16_t image_signature_size
Definition upg_patch.h:127
uint32_t num_maxsize_pages
Definition upg_patch.h:102
plaintext_flash_cache_init plaintext_flash_cache_init_fn
Definition upg_patch.h:121
int32_t failpoint
Definition upg_patch.h:107
uint32_t image_flash_length
Definition upg_patch.h:115
bool image_encrypted
Definition upg_patch.h:125
uint32_t patch_contents_ram_copy
Definition upg_patch.h:109
uint16_t image_hdrs_len
Definition upg_patch.h:126
failfunc failfn
Definition upg_patch.h:108
uint8_t * image_cache
Definition upg_patch.h:124
copy_recovered_buffer_to_flash_cache copy_recovered_buffer_to_flash_cache_fn
Definition upg_patch.h:120
uint32_t patch_contents_flash_offset
Definition upg_patch.h:110
uint32_t new_sig_page
Definition upg_patch.h:103
uint32_t patch_contents_len
Definition upg_patch.h:111
uint32_t buffers_length
Definition upg_patch.h:117
bool use_plain_text_cache
Definition upg_patch.h:123
int32_t newsize
Definition upg_patch.h:98
prep_image_contents_for_write prep_image_contents_for_write_fn
Definition upg_patch.h:119
uint32_t old_sig_page
Definition upg_patch.h:104
uint32_t num_new_pages
Definition upg_patch.h:100
uint32_t image_flash_offset
Definition upg_patch.h:114
int32_t oldsize
Definition upg_patch.h:99
upg_key_area_data_t key_area_aes_params
Definition upg_patch.h:128
int32_t maxsize
Definition upg_patch.h:97
升级key区域数据类型。
Definition upg.h:130
errcode_t(* plaintext_flash_cache_init)(patch *desc)
Creates a plaintext version of the image flash in RAM It assumes metadata pages are populated with th...
Definition upg_patch.h:73
void(* failfunc)(patch *desc)
The function to be called when a deliberate failure is injected.
Definition upg_patch.h:34
errcode_t(* copy_recovered_buffer_to_flash_cache)(patch *desc, int32_t flash_page, uint8_t *recover_buffer)
Creates a plaintext copy of the recovered 4K flash. It assumes metadata pages are populated with the ...
Definition upg_patch.h:64
errcode_t(* fetch_image_contents)(patch *desc, uint32_t size, int32_t location, uint8_t *dest)
The function to be called to obtain firmware image contents.
Definition upg_patch.h:44
errcode_t process_patch(patch *desc)
Process the patch provided.
Definition upg_patch.c:1165
errcode_t(* encrypt_one_flash_page)(upg_key_area_data_t *aes_ctrl, uint8_t *src, uint8_t *dst, int32_t ptxt_len)
Definition upg_patch.h:92
errcode_t fota_pkg_task_apply_code_diff(const upg_image_header_t *image)
Apply a FOTA core task for an image.
Definition upg_patch.c:1241
errcode_t(* prep_image_contents_for_write)(patch *desc, uint32_t image_page_no, uint8_t *page_contents)
Update the image contents prior to writing to flash.
Definition upg_patch.h:53