9#ifdef CONFIG_NV_SUPPORT_SINGLE_CORE_SYSTEM
12#include "flash_task_types.h"
uint32_t errcode_t
Definition of error code.
Definition errcode.h:30
kv_store_t
Definition nv_store.h:25
errcode_t kv_update_modify_attribute(kv_store_t core, flash_task_node *sanitised_task)
Definition nv_update.c:1933
errcode_t kv_update_backup_init(void)
Definition nv_update.c:1821
struct managed_source_buffer kv_managed_source_buffer_t
errcode_t kv_update_write_key(kv_store_t core, flash_task_node *sanitised_task)
Definition nv_update.c:1899
errcode_t kv_update_init(cores_t core)
Definition nv_update.c:1718
kv_update_event_t
Definition nv_update.h:66
@ EVENT_KEY_UPDATE_NOT_NEEDED
Definition nv_update.h:86
@ EVENT_WRITE_BUFFER_STORED
Definition nv_update.h:72
@ EVENT_COPY_KEY_READY
Definition nv_update.h:79
@ EVENT_ALL_KEYS_COPIED
Definition nv_update.h:94
@ EVENT_STORE_READY
Definition nv_update.h:104
@ EVENT_DEFRAG_REQUIRED
Definition nv_update.h:99
@ EVENT_KEY_DATA_READY
Definition nv_update.h:105
@ EVENT_KEY_NOT_FOUND
Definition nv_update.h:78
@ EVENT_DEFRAG_COMPLETE
Definition nv_update.h:100
@ EVENT_KEYS_ERASED
Definition nv_update.h:82
@ EVENT_KEY_FOUND
Definition nv_update.h:77
@ EVENT_WRITE_BUFFER_PRIMED
Definition nv_update.h:71
@ EVENT_NONE
Definition nv_update.h:67
@ EVENT_PAGE_HEADER_READY
Definition nv_update.h:95
@ EVENT_WRITE_DATA_EXHAUSTED
Definition nv_update.h:70
@ EVENT_WRITE_COMPLETE
Definition nv_update.h:107
@ EVENT_KEY_UPDATE_REQUIRED
Definition nv_update.h:85
@ EVENT_DEFRAG_ERASED
Definition nv_update.h:90
@ EVENT_ERROR
Definition nv_update.h:110
@ EVENT_DEFRAG_FOUND
Definition nv_update.h:89
@ EVENT_CRYPTO_CLAIMED
Definition nv_update.h:106
@ EVENT_PAGE_SELECTED
Definition nv_update.h:75
@ EVENT_NVREGION_MAP_UPDATED
Definition nv_update.h:96
@ EVENT_PAGE_MAP_UPDATED
Definition nv_update.h:108
@ EVENT_DEFRAG_PREPARED
Definition nv_update.h:93
@ EVENT_SUSPEND
Definition nv_update.h:68
@ EVENT_PAGE_NOT_SELECTED
Definition nv_update.h:76
@ EVENT_WRITE_POS_FOUND
Definition nv_update.h:101
kv_update_state_t
Definition nv_update.h:25
@ STATE_PREP_STORE
Definition nv_update.h:53
@ STATE_COPY_ALL_KEYS
Definition nv_update.h:43
@ STATE_PRIME_WRITE
Definition nv_update.h:58
@ STATE_DEFRAG_PAGE
Definition nv_update.h:50
@ STATE_PREP_DELETE_KEY
Definition nv_update.h:35
@ STATE_INVALID
Definition nv_update.h:26
@ STATE_UPDATE_NVREGION_MAP
Definition nv_update.h:46
@ STATE_EXIT
Definition nv_update.h:63
@ STATE_PREP_MODIFY_KEY
Definition nv_update.h:36
@ STATE_WRITE_PAGE_HEADER
Definition nv_update.h:45
@ STATE_UPDATE_MAP_FOR_NEW
Definition nv_update.h:60
@ STATE_SELECT_NEXT_PAGE
Definition nv_update.h:30
@ STATE_PREP_KEY_DATA
Definition nv_update.h:54
@ STATE_ERASE_DEFRAG
Definition nv_update.h:41
@ STATE_PREP_PAGE_HEADER
Definition nv_update.h:44
@ STATE_FIND_WRITE_POS
Definition nv_update.h:49
@ STATE_FIND_NEXT_KEY
Definition nv_update.h:32
@ STATE_SUSPENDED
Definition nv_update.h:62
@ STATE_PREP_COPY_KEY
Definition nv_update.h:34
@ STATE_SELECT_FIRST_PAGE
Definition nv_update.h:29
@ STATE_CLAIM_CRYPTO
Definition nv_update.h:55
@ STATE_PERFORM_WRITE
Definition nv_update.h:59
@ STATE_FIND_FIRST_KEY
Definition nv_update.h:31
@ STATE_FIND_DEFRAG
Definition nv_update.h:40
@ STATE_UPDATE_MAP_FOR_OLD
Definition nv_update.h:37
@ STATE_FIND_EXISTING_KEY
Definition nv_update.h:33
@ STATE_PREP_DEFRAG
Definition nv_update.h:42
@ STATE_ERASE_OLD_KEYS
Definition nv_update.h:56
errcode_t kv_update_erase_key(kv_store_t core, flash_task_node *sanitised_tasks)
Definition nv_update.c:1867
kv_update_event_t(* kv_state_action)(void)
Definition nv_update.h:114
Definition nv_task_adapt.h:126
Definition nv_update.h:178
struct kv_active_state_machine_t * prev
Definition nv_update.h:179
kv_managed_source_buffer_t * source_buffer
Definition nv_update.h:182
kv_update_state_t state
Definition nv_update.h:184
kv_managed_source_buffer_t * current_source
Definition nv_update.h:183
kv_update_event_t event
Definition nv_update.h:185
kv_managed_write_buffer_t * write_buffer
Definition nv_update.h:181
const kv_state_machine_t * machine
Definition nv_update.h:180
errcode_t error_code
Definition nv_update.h:186
Definition nv_update.h:131
uint16_t size
Definition nv_update.h:136
bool gcm_tag_claimed
Definition nv_update.h:143
uint32_t write_location
Definition nv_update.h:133
uint16_t data_length
Definition nv_update.h:137
bool encrypt_claimed
Definition nv_update.h:141
bool hash_claimed
Definition nv_update.h:140
uint32_t crypto_handle
Definition nv_update.h:135
bool crc_claimed
Definition nv_update.h:142
uint8_t * data
Definition nv_update.h:132
uint32_t crc_ret
Definition nv_update.h:138
uint16_t data_consumed
Definition nv_update.h:139
uint32_t resume_location
Definition nv_update.h:134
Definition nv_update.h:160
uint16_t write_buffer_size
Definition nv_update.h:163
kv_update_state_t resume_state
Definition nv_update.h:165
kv_update_state_t initial_state
Definition nv_update.h:164
const kv_update_transition_t * transition_table
Definition nv_update.h:161
const kv_update_action_t * action_table
Definition nv_update.h:162
kv_update_event_t exit_event
Definition nv_update.h:166
Definition nv_update.h:154
kv_state_action action
Definition nv_update.h:156
kv_update_state_t state
Definition nv_update.h:155
Definition nv_update.h:147
kv_update_state_t next_state
Definition nv_update.h:149
kv_update_state_t state
Definition nv_update.h:148
kv_update_event_t event
Definition nv_update.h:150
Definition nv_update.h:117
uint16_t data_consumed
Definition nv_update.h:121
uint16_t data_length
Definition nv_update.h:120
bool release_data
Definition nv_update.h:122
struct managed_source_buffer * next
Definition nv_update.h:118
bool encrypt_data
Definition nv_update.h:126
uint8_t * data
Definition nv_update.h:119
bool gcm_tag_data
Definition nv_update.h:127
bool crc_data
Definition nv_update.h:125
bool hash_data
Definition nv_update.h:124
bool receive_hash
Definition nv_update.h:123