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
13
typedef
struct
{
14
uint16_t
key
;
15
uint16_t
crc
;
16
}
nv_read_input_t
;
17
18
typedef
struct
{
19
uint16_t
ret
;
20
uint16_t
key
;
21
uint32_t
length
;
22
uint8_t
data
[0];
23
}
nv_read_output_t
;
24
25
typedef
struct
{
26
bool
permanent
;
27
bool
encrypted
;
28
bool
non_upgrade
;
29
uint8_t
reserve
;
30
}
nv_attr
;
31
32
typedef
struct
{
33
uint16_t
key
;
34
uint16_t
crc
;
35
uint32_t
length
;
36
uint8_t value[0];
37
}
nv_write_input_t
;
38
39
typedef
struct
{
40
uint32_t
ret
;
41
uint32_t
key
;
42
}
nv_write_output_t
;
43
44
typedef
struct
{
45
uint16_t
key
;
46
uint16_t
length
;
47
bool
permanent
;
48
bool
encrypted
;
49
bool
non_upgrade
;
50
uint8_t value[0];
51
}
nv_write_with_attr_input_t
;
52
53
typedef
struct
{
54
uint32_t
ret
;
55
uint32_t
key
;
56
}
nv_write_with_attr_output_t
;
57
58
typedef
struct
{
59
uint32_t
ret
;
60
uint16_t
key
;
61
uint16_t
length
;
62
nv_attr
attr
;
63
uint8_t value[0];
64
}
nv_read_with_attr_output_t
;
65
66
typedef
struct
{
67
uint8_t
mode
;
68
uint8_t region_flag[
KEY_ID_REGION_MAX_NUM
];
69
uint8_t
resverd
;
70
uint32_t
ret
;
71
}
nv_reset_mode_out_t
;
72
73
typedef
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 */
77
uint32_t
inverted_details_word
;
78
uint32_t
sequence_number
;
79
uint32_t
inverted_sequence_number
;
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
;
/* 本页第一个可写入位置 */
86
}
nv_page_usage_out
;
87
88
errcode_t
zdiag_nv_init
(
void
);
89
90
#endif
/* ZDIAG_NV_H */
errcode.h
errcode_t
uint32_t errcode_t
Definition of error code.
Definition
errcode.h:30
KEY_ID_REGION_MAX_NUM
@ KEY_ID_REGION_MAX_NUM
Definition
nv.h:129
nv.h
nv_attr
Definition
zdiag_nv.h:25
nv_attr::permanent
bool permanent
Definition
zdiag_nv.h:26
nv_attr::non_upgrade
bool non_upgrade
Definition
zdiag_nv.h:28
nv_attr::reserve
uint8_t reserve
Definition
zdiag_nv.h:29
nv_attr::encrypted
bool encrypted
Definition
zdiag_nv.h:27
nv_page_usage_out
Definition
zdiag_nv.h:73
nv_page_usage_out::max_key_space
uint32_t max_key_space
Definition
zdiag_nv.h:84
nv_page_usage_out::used_space
uint32_t used_space
Definition
zdiag_nv.h:81
nv_page_usage_out::sequence_number
uint32_t sequence_number
Definition
zdiag_nv.h:78
nv_page_usage_out::page_index
uint8_t page_index
Definition
zdiag_nv.h:76
nv_page_usage_out::inverted_details_word
uint32_t inverted_details_word
Definition
zdiag_nv.h:77
nv_page_usage_out::inverted_sequence_number
uint32_t inverted_sequence_number
Definition
zdiag_nv.h:79
nv_page_usage_out::reclaimable_space
uint32_t reclaimable_space
Definition
zdiag_nv.h:82
nv_page_usage_out::store_id
uint16_t store_id
Definition
zdiag_nv.h:74
nv_page_usage_out::corrupted_space
uint32_t corrupted_space
Definition
zdiag_nv.h:83
nv_page_usage_out::total_space
uint32_t total_space
Definition
zdiag_nv.h:80
nv_page_usage_out::ver
uint8_t ver
Definition
zdiag_nv.h:75
nv_page_usage_out::first_writable_location
uint32_t first_writable_location
Definition
zdiag_nv.h:85
nv_read_input_t
Definition
zdiag_nv.h:13
nv_read_input_t::key
uint16_t key
Definition
zdiag_nv.h:14
nv_read_input_t::crc
uint16_t crc
Definition
zdiag_nv.h:15
nv_read_output_t
Definition
zdiag_nv.h:18
nv_read_output_t::ret
uint16_t ret
Definition
zdiag_nv.h:19
nv_read_output_t::length
uint32_t length
Definition
zdiag_nv.h:21
nv_read_output_t::key
uint16_t key
Definition
zdiag_nv.h:20
nv_read_with_attr_output_t
Definition
zdiag_nv.h:58
nv_read_with_attr_output_t::attr
nv_attr attr
Definition
zdiag_nv.h:62
nv_read_with_attr_output_t::ret
uint32_t ret
Definition
zdiag_nv.h:59
nv_read_with_attr_output_t::key
uint16_t key
Definition
zdiag_nv.h:60
nv_read_with_attr_output_t::length
uint16_t length
Definition
zdiag_nv.h:61
nv_reset_mode_out_t
Definition
zdiag_nv.h:66
nv_reset_mode_out_t::ret
uint32_t ret
Definition
zdiag_nv.h:70
nv_reset_mode_out_t::resverd
uint8_t resverd
Definition
zdiag_nv.h:69
nv_reset_mode_out_t::mode
uint8_t mode
Definition
zdiag_nv.h:67
nv_write_input_t
Definition
zdiag_nv.h:32
nv_write_input_t::key
uint16_t key
Definition
zdiag_nv.h:33
nv_write_input_t::crc
uint16_t crc
Definition
zdiag_nv.h:34
nv_write_input_t::length
uint32_t length
Definition
zdiag_nv.h:35
nv_write_output_t
Definition
zdiag_nv.h:39
nv_write_output_t::key
uint32_t key
Definition
zdiag_nv.h:41
nv_write_output_t::ret
uint32_t ret
Definition
zdiag_nv.h:40
nv_write_with_attr_input_t
Definition
zdiag_nv.h:44
nv_write_with_attr_input_t::length
uint16_t length
Definition
zdiag_nv.h:46
nv_write_with_attr_input_t::encrypted
bool encrypted
Definition
zdiag_nv.h:48
nv_write_with_attr_input_t::key
uint16_t key
Definition
zdiag_nv.h:45
nv_write_with_attr_input_t::non_upgrade
bool non_upgrade
Definition
zdiag_nv.h:49
nv_write_with_attr_input_t::permanent
bool permanent
Definition
zdiag_nv.h:47
nv_write_with_attr_output_t
Definition
zdiag_nv.h:53
nv_write_with_attr_output_t::ret
uint32_t ret
Definition
zdiag_nv.h:54
nv_write_with_attr_output_t::key
uint32_t key
Definition
zdiag_nv.h:55
data
Definition
hal_uart_v151_regs_def.h:38
zdiag_nv_init
errcode_t zdiag_nv_init(void)
src
middleware
utils
dfx
diag_dfx_cmd
diag_nv
include
zdiag_nv.h
由
William Goodspeed
维护 | E-mail: gongzl@stu.hebust.edu.cn | Wechat: a23333344 | ALSO CHECKOUT
WS63FLASH
!
生成于 2025年 一月 4日 星期六 17:47:12 , 为 WS63 SDK 文档使用
1.9.8