nv_storage.h 715 B

1234567891011121314151617181920212223242526272829303132
  1. #ifndef _NV_Storage_H__
  2. #define _NV_Storage_H__
  3. #include "os/os_types.h"
  4. #include "bsp/bsp_driver.h"
  5. typedef struct {
  6. u8 sn[32];
  7. u16 len;
  8. u16 crc;
  9. }mc_sn_t;
  10. typedef struct {
  11. u8 index;
  12. u16 crc;
  13. u16 len;
  14. u32 err_mask;
  15. u8 data[0]; //just a tag, no memeory alloc
  16. }mc_err_red_t;
  17. void nv_storage_init(void);
  18. int nv_write_sn(u8 *data, int len);
  19. int nv_read_sn(u8 *data, int len);
  20. void nv_write_crit_errblock(u8 *data, int len);
  21. void nv_read_crit_errblock(u8 *data, int len);
  22. void nv_write_runtime_block(u8 *data, int len);
  23. void nv_read_runtime_block(u8 *data, int len);
  24. void nv_write_config_block(u8 idx, u8 *data, int len);
  25. void nv_read_config_block(u8 idx, u8 *data, int len);
  26. #endif /* _NV_Storage_H__ */