CI13LC SDK API手册  2.1.1
本手册用于描述CI13LC SDK各个组件和驱动API
ci_nvdata_manage.h
浏览该文件的文档.
1 
12 #ifndef _CI_NVDATA_MANGE_H_
13 #define _CI_NVDATA_MANGE_H_
14 
15 
16 #ifdef __cplusplus
17 extern "C"{
18 #endif
19 
20 
21 /**************************************************************************
22  user modify defined
23 ****************************************************************************/
24 
25 /*ID don't use 0xFF000000 to 0xFFFFFFFF*/
26 #define NVDATA_ID_VOLUME 0x50000001 /*'VOLU'*/
27 #define NVDATA_ID_CWSL_START 0x50001000 /*CWSL*/
28 
29 #define NVDATA_ID_VP_MOULD_INFO 0xA0000001 /*VP mould info*/
30 
31 #define NVDATA_ID_USER_START 0x60000001 /*Start ID for user define. The ID user defined mast greater than this.*/
32 /*Add user ID here */
33 
34 #define NVDATA_ID_USER_END 0xF0000000 /*End ID for user define. The ID user defined mast smaller than this.*/
35 
36 //#define CINV_FLASH_BASE_ADDR (0x7F0000) //xiang.x:use the last 64k flash when test
37 
38 #define CINV_FLASH_ERASE_BLOCK_SIZE (4096)/*4KB,32KB,64KB,4KB suggest,64KB max,so some used uint16_t for save code size*/
39 
40 //#define CINV_FEB_TOTAL_COUNT (16)/*flash total used size is CINV_FLASH_ERASE_BLOCK_SIZE*CINV_FEB_TOTAL_COUNT*/
41 
42 /*last byte also can for version, if want used all new nvdata, can modify this, will casue erase all feb*/
43 #define CINV_FEB_HEADER_MAGIC_VALID (0xABCDEF03)
44 
45 /**************************************************************************
46 
47 ****************************************************************************/
57 typedef enum
58 {
64 
65 void cinv_init(uint32_t flash_addr, uint32_t size);
66 cinv_item_ret_t cinv_item_init(uint32_t id, uint16_t len, void *buf);
67 cinv_item_ret_t cinv_item_read(uint32_t id, uint16_t len, void *buf, uint16_t *real_len);
68 cinv_item_ret_t cinv_item_write(uint32_t id, uint16_t len, void *buf);
70 cinv_item_ret_t cinv_register_hotid(uint32_t hot_id);
71 
74 void nvdata_test(void *p_arg);
75 
76 #ifdef __cplusplus
77 }
78 #endif
79 
80 #endif
81 
Definition: ci_nvdata_manage.h:60
cinv_item_ret_t
nvdata function return value
Definition: ci_nvdata_manage.h:57
Definition: ci_nvdata_manage.h:61
cinv_item_ret_t cinv_item_init(uint32_t id, uint16_t len, void *buf)
If the nvdata item does not already exist, it is created and initialized with the data passed to the ...
Definition: ci_nvdata_manage.c:1373
cinv_item_ret_t cinv_item_delete(uint32_t id)
Delete data item from nvdata.
Definition: ci_nvdata_manage.c:1561
Definition: ci_nvdata_manage.h:59
void nvdata_test(void *p_arg)
cinv_item_ret_t cinv_item_read(uint32_t id, uint16_t len, void *buf, uint16_t *real_len)
Read data from nvdata. This function can be used to read an entire item or short. Read data is copied...
Definition: ci_nvdata_manage.c:1500
Definition: ci_nvdata_manage.h:62
cinv_item_ret_t cinv_register_hotid(uint32_t hot_id)
register hotid.
Definition: ci_nvdata_manage.c:279
void cinv_init(uint32_t flash_addr, uint32_t size)
initialize the nvdata management information and nvdata region
Definition: ci_nvdata_manage.c:1184
cinv_item_ret_t cinv_item_write(uint32_t id, uint16_t len, void *buf)
Write a data item to nvdata.
Definition: ci_nvdata_manage.c:1431