WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
zdiag_nv.h
浏览该文件的文档.
1/*
2 * Copyright (c) HiSilicon (Shanghai) Technologies Co., Ltd. 2022-2023. All rights reserved.
3 * Description: software nv by zdiag
4 */
5#ifndef ZDIAG_NV_H
6#define ZDIAG_NV_H
7
8#include "nv.h"
9#include "errcode.h"
10
11#define KVALUE_MAX_LENGTH 4060
12
13typedef struct {
14 uint16_t key;
15 uint16_t crc;
17
18typedef struct {
19 uint16_t ret;
20 uint16_t key;
21 uint32_t length;
22 uint8_t data[0];
24
25typedef struct {
29 uint8_t reserve;
30} nv_attr;
31
32typedef struct {
33 uint16_t key;
34 uint16_t crc;
35 uint32_t length;
36 uint8_t value[0];
38
39typedef struct {
40 uint32_t ret;
41 uint32_t key;
43
44typedef struct {
45 uint16_t key;
46 uint16_t length;
50 uint8_t value[0];
52
53typedef struct {
54 uint32_t ret;
55 uint32_t key;
57
58typedef struct {
59 uint32_t ret;
60 uint16_t key;
61 uint16_t length;
63 uint8_t value[0];
65
66typedef struct {
67 uint8_t mode;
68 uint8_t region_flag[KEY_ID_REGION_MAX_NUM];
69 uint8_t resverd;
70 uint32_t ret;
72
73typedef struct {
74 uint16_t store_id; /* Identifies the page as belonging to a certain store */
75 uint8_t ver;
76 uint8_t page_index; /* Uniquely identifies a page within a store */
80 uint32_t total_space; /* 本页最大空间(不含页头) */
81 uint32_t used_space; /* 本页已使用空间 */
82 uint32_t reclaimable_space; /* 本页可回收空间(包含已损坏空间) */
83 uint32_t corrupted_space; /* 本页已损坏空间 */
84 uint32_t max_key_space; /* 本页可写的最大空间(未使用+可回收) */
85 uint32_t first_writable_location; /* 本页第一个可写入位置 */
87
89
90#endif /* ZDIAG_NV_H */
uint32_t errcode_t
Definition of error code.
Definition errcode.h:30
@ KEY_ID_REGION_MAX_NUM
Definition nv.h:129
Definition zdiag_nv.h:25
bool permanent
Definition zdiag_nv.h:26
bool non_upgrade
Definition zdiag_nv.h:28
uint8_t reserve
Definition zdiag_nv.h:29
bool encrypted
Definition zdiag_nv.h:27
Definition zdiag_nv.h:73
uint32_t max_key_space
Definition zdiag_nv.h:84
uint32_t used_space
Definition zdiag_nv.h:81
uint32_t sequence_number
Definition zdiag_nv.h:78
uint8_t page_index
Definition zdiag_nv.h:76
uint32_t inverted_details_word
Definition zdiag_nv.h:77
uint32_t inverted_sequence_number
Definition zdiag_nv.h:79
uint32_t reclaimable_space
Definition zdiag_nv.h:82
uint16_t store_id
Definition zdiag_nv.h:74
uint32_t corrupted_space
Definition zdiag_nv.h:83
uint32_t total_space
Definition zdiag_nv.h:80
uint8_t ver
Definition zdiag_nv.h:75
uint32_t first_writable_location
Definition zdiag_nv.h:85
Definition zdiag_nv.h:13
uint16_t key
Definition zdiag_nv.h:14
uint16_t crc
Definition zdiag_nv.h:15
Definition zdiag_nv.h:18
uint16_t ret
Definition zdiag_nv.h:19
uint32_t length
Definition zdiag_nv.h:21
uint16_t key
Definition zdiag_nv.h:20
Definition zdiag_nv.h:58
nv_attr attr
Definition zdiag_nv.h:62
uint32_t ret
Definition zdiag_nv.h:59
uint16_t key
Definition zdiag_nv.h:60
uint16_t length
Definition zdiag_nv.h:61
Definition zdiag_nv.h:66
uint32_t ret
Definition zdiag_nv.h:70
uint8_t resverd
Definition zdiag_nv.h:69
uint8_t mode
Definition zdiag_nv.h:67
Definition zdiag_nv.h:32
uint16_t key
Definition zdiag_nv.h:33
uint16_t crc
Definition zdiag_nv.h:34
uint32_t length
Definition zdiag_nv.h:35
Definition zdiag_nv.h:39
uint32_t key
Definition zdiag_nv.h:41
uint32_t ret
Definition zdiag_nv.h:40
Definition zdiag_nv.h:44
uint16_t length
Definition zdiag_nv.h:46
bool encrypted
Definition zdiag_nv.h:48
uint16_t key
Definition zdiag_nv.h:45
bool non_upgrade
Definition zdiag_nv.h:49
bool permanent
Definition zdiag_nv.h:47
Definition zdiag_nv.h:53
uint32_t ret
Definition zdiag_nv.h:54
uint32_t key
Definition zdiag_nv.h:55
Definition hal_uart_v151_regs_def.h:38
errcode_t zdiag_nv_init(void)