nvm.h File Reference
Non-Volatile Memory Wear-Leveling driver API.
- Version
- 5.4.0
License
(C) Copyright 2014 Silicon Labs, www.silabs.com
This file is licensed under the Silabs License Agreement. See the file "Silabs_License_Agreement.txt" for details. Before using this software for any purpose, you must agree to the terms of that agreement.
       Definition in file
       
        nvm.h
       
       .
      
       #include <stdint.h>
      
      
       #include <stdbool.h>
      
      
       #include "
       
        em_device.h
       
       "
      
      
       #include "
       
        nvm_hal.h
       
       "
      
      
       #include "nvm_config.h"
      
      
       #include "
       
        ecode.h
       
       "
      
      
| Macros | |
| #define | ECODE_EMDRV_NVM_ADDR_INVALID ( ECODE_EMDRV_NVM_BASE | 0x00000001) | 
| Invalid address. | |
| #define | ECODE_EMDRV_NVM_ALIGNMENT_INVALID ( ECODE_EMDRV_NVM_BASE | 0x00000002) | 
| Invalid data alignment. | |
| #define | ECODE_EMDRV_NVM_DATA_INVALID ( ECODE_EMDRV_NVM_BASE | 0x00000003) | 
| Invalid input data or format. | |
| #define | ECODE_EMDRV_NVM_ERROR ( ECODE_EMDRV_NVM_BASE | 0x00000007) | 
| General error. | |
| #define | ECODE_EMDRV_NVM_NO_PAGES_AVAILABLE ( ECODE_EMDRV_NVM_BASE | 0x00000005) | 
| Initialization didn't find any pages available to allocate. | |
| #define | ECODE_EMDRV_NVM_OK ( ECODE_OK ) | 
| Success return value. | |
| #define | ECODE_EMDRV_NVM_PAGE_INVALID ( ECODE_EMDRV_NVM_BASE | 0x00000006) | 
| Could not find the page specified. | |
| #define | ECODE_EMDRV_NVM_WRITE_LOCK ( ECODE_EMDRV_NVM_BASE | 0x00000004) | 
| A write is currently in progress. | |
| #define | NVM_ERASE_RETAINCOUNT 0xffffffffUL | 
| #define | NVM_PAGE_TERMINATION { NULL, 0, (NVM_Object_Ids) 0 } | 
| #define | NVM_READ_ALL_CMD 0xff | 
| #define | NVM_WRITE_ALL_CMD 0xff | 
| #define | NVM_WRITE_NONE_CMD 0xfe | 
| Functions | |
| Ecode_t | NVM_Erase (uint32_t eraseCount) | 
| Erase the entire allocated NVM area. | |
| Ecode_t | NVM_Init (NVM_Config_t const *nvmConfig) | 
| Initialize the NVM manager. | |
| Ecode_t | NVM_Read (uint16_t pageId, uint8_t objectId) | 
| Read an object or an entire page. | |
| Ecode_t | NVM_Write (uint16_t pageId, uint8_t objectId) | 
| Write an object or a page. | |