WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
nv_update.h 文件参考
#include "nv_task_adapt.h"
#include "nv_store.h"
#include "errcode.h"
#include "nv_porting.h"
nv_update.h 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

结构体

struct  managed_source_buffer
 
struct  kv_managed_write_buffer_t
 
struct  kv_update_transition_t
 
struct  kv_update_action_t
 
struct  kv_state_machine_t
 
struct  kv_active_state_machine_t
 

类型定义

typedef kv_update_event_t(* kv_state_action) (void)
 
typedef struct managed_source_buffer kv_managed_source_buffer_t
 
typedef struct kv_active_state_machine_t kv_active_state_machine_t
 

枚举

enum  kv_update_state_t {
  STATE_INVALID , STATE_SELECT_FIRST_PAGE , STATE_SELECT_NEXT_PAGE , STATE_FIND_FIRST_KEY ,
  STATE_FIND_NEXT_KEY , STATE_FIND_EXISTING_KEY , STATE_PREP_COPY_KEY , STATE_PREP_DELETE_KEY ,
  STATE_PREP_MODIFY_KEY , STATE_UPDATE_MAP_FOR_OLD , STATE_FIND_DEFRAG , STATE_ERASE_DEFRAG ,
  STATE_PREP_DEFRAG , STATE_COPY_ALL_KEYS , STATE_PREP_PAGE_HEADER , STATE_WRITE_PAGE_HEADER ,
  STATE_UPDATE_NVREGION_MAP , STATE_FIND_WRITE_POS , STATE_DEFRAG_PAGE , STATE_PREP_STORE ,
  STATE_PREP_KEY_DATA , STATE_CLAIM_CRYPTO , STATE_ERASE_OLD_KEYS , STATE_PRIME_WRITE ,
  STATE_PERFORM_WRITE , STATE_UPDATE_MAP_FOR_NEW , STATE_SUSPENDED = 0x1E , STATE_EXIT = 0x1F
}
 
enum  kv_update_event_t {
  EVENT_NONE , EVENT_SUSPEND , EVENT_WRITE_DATA_EXHAUSTED , EVENT_WRITE_BUFFER_PRIMED ,
  EVENT_WRITE_BUFFER_STORED , EVENT_PAGE_SELECTED , EVENT_PAGE_NOT_SELECTED , EVENT_KEY_FOUND ,
  EVENT_KEY_NOT_FOUND , EVENT_COPY_KEY_READY , EVENT_KEYS_ERASED , EVENT_KEY_UPDATE_REQUIRED ,
  EVENT_KEY_UPDATE_NOT_NEEDED , EVENT_DEFRAG_FOUND , EVENT_DEFRAG_ERASED , EVENT_DEFRAG_PREPARED ,
  EVENT_ALL_KEYS_COPIED , EVENT_PAGE_HEADER_READY , EVENT_NVREGION_MAP_UPDATED , EVENT_DEFRAG_REQUIRED ,
  EVENT_DEFRAG_COMPLETE , EVENT_WRITE_POS_FOUND , EVENT_STORE_READY , EVENT_KEY_DATA_READY ,
  EVENT_CRYPTO_CLAIMED , EVENT_WRITE_COMPLETE , EVENT_PAGE_MAP_UPDATED , EVENT_ERROR = 0x1F
}
 

函数

errcode_t kv_update_init (cores_t core)
 
errcode_t kv_update_erase_key (kv_store_t core, flash_task_node *sanitised_tasks)
 
errcode_t kv_update_write_key (kv_store_t core, flash_task_node *sanitised_task)
 
errcode_t kv_update_modify_attribute (kv_store_t core, flash_task_node *sanitised_task)
 
errcode_t kv_update_backup_init (void)
 

类型定义说明

◆ kv_active_state_machine_t

◆ kv_managed_source_buffer_t

◆ kv_state_action

typedef kv_update_event_t(* kv_state_action) (void)

枚举类型说明

◆ kv_update_event_t

枚举值
EVENT_NONE 
EVENT_SUSPEND 
EVENT_WRITE_DATA_EXHAUSTED 
EVENT_WRITE_BUFFER_PRIMED 
EVENT_WRITE_BUFFER_STORED 
EVENT_PAGE_SELECTED 
EVENT_PAGE_NOT_SELECTED 
EVENT_KEY_FOUND 
EVENT_KEY_NOT_FOUND 
EVENT_COPY_KEY_READY 
EVENT_KEYS_ERASED 
EVENT_KEY_UPDATE_REQUIRED 
EVENT_KEY_UPDATE_NOT_NEEDED 
EVENT_DEFRAG_FOUND 
EVENT_DEFRAG_ERASED 
EVENT_DEFRAG_PREPARED 
EVENT_ALL_KEYS_COPIED 
EVENT_PAGE_HEADER_READY 
EVENT_NVREGION_MAP_UPDATED 
EVENT_DEFRAG_REQUIRED 
EVENT_DEFRAG_COMPLETE 
EVENT_WRITE_POS_FOUND 
EVENT_STORE_READY 
EVENT_KEY_DATA_READY 
EVENT_CRYPTO_CLAIMED 
EVENT_WRITE_COMPLETE 
EVENT_PAGE_MAP_UPDATED 
EVENT_ERROR 

◆ kv_update_state_t

枚举值
STATE_INVALID 
STATE_SELECT_FIRST_PAGE 
STATE_SELECT_NEXT_PAGE 
STATE_FIND_FIRST_KEY 
STATE_FIND_NEXT_KEY 
STATE_FIND_EXISTING_KEY 
STATE_PREP_COPY_KEY 
STATE_PREP_DELETE_KEY 
STATE_PREP_MODIFY_KEY 
STATE_UPDATE_MAP_FOR_OLD 
STATE_FIND_DEFRAG 
STATE_ERASE_DEFRAG 
STATE_PREP_DEFRAG 
STATE_COPY_ALL_KEYS 
STATE_PREP_PAGE_HEADER 
STATE_WRITE_PAGE_HEADER 
STATE_UPDATE_NVREGION_MAP 
STATE_FIND_WRITE_POS 
STATE_DEFRAG_PAGE 
STATE_PREP_STORE 
STATE_PREP_KEY_DATA 
STATE_CLAIM_CRYPTO 
STATE_ERASE_OLD_KEYS 
STATE_PRIME_WRITE 
STATE_PERFORM_WRITE 
STATE_UPDATE_MAP_FOR_NEW 
STATE_SUSPENDED 
STATE_EXIT 

函数说明

◆ kv_update_backup_init()

errcode_t kv_update_backup_init ( void  )

◆ kv_update_erase_key()

errcode_t kv_update_erase_key ( kv_store_t  core,
flash_task_node sanitised_tasks 
)

◆ kv_update_init()

errcode_t kv_update_init ( cores_t  core)

◆ kv_update_modify_attribute()

errcode_t kv_update_modify_attribute ( kv_store_t  core,
flash_task_node sanitised_task 
)

◆ kv_update_write_key()

errcode_t kv_update_write_key ( kv_store_t  core,
flash_task_node sanitised_task 
)