Low-level flash page peripheral driver interface. More...
Low-level flash page peripheral driver interface.
Definition in file flashpage.h.
#include <stddef.h>#include <stdint.h>#include "cpu_conf.h"#include "periph_cpu.h"
 Include dependency graph for flashpage.h:
 This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Macros | |
| #define | CPU_FLASH_BASE (0) | 
| Per default, we expect the internal flash to start at address 0.  | |
| #define | FLASHPAGE_WRITE_BLOCK_SIZE | 
| For raw writings to the flash, this constant must define the minimum write length allowed by the MCU.  | |
| #define | FLASHPAGE_WRITE_BLOCK_ALIGNMENT | 
| The buffers to be written to the flash MUST be aligned, as well as the address on which the buffer is written to the flash.  More... | |
| #define | FLASHPAGE_ERASE_STATE (0xFFU) | 
| State of an erased byte in memory.  | |
| #define | PERIPH_FLASHPAGE_CUSTOM_PAGESIZES | 
| Defined to signal that the peripheral has non-uniform flash page sizes.  More... | |
| #define | PERIPH_FLASHPAGE_NEEDS_FLASHPAGE_ADDR | 
| If non-uniform flash page sizes are required, defined to signal that the peripheral does not implement a custom flashpage_addr function and instead relies on the generic helper function that relies on flashpage_size.  | |
| #define | PERIPH_FLASHPAGE_NEEDS_FLASHPAGE_PAGE | 
| If non-uniform flash page sizes are required, defined to signal that the peripheral does not implement a custom flashpage_page function and instead relies on the generic helper function that relies on flashpage_size.  | |
| #define | FLASH_WRITABLE_INIT(name, size) | 
| Define an array in flash memory.  More... | |
Enumerations | |
| enum | { FLASHPAGE_OK = 0 , FLASHPAGE_NOMATCH = -1 } | 
| Return values used in this interface.  More... | |
Functions | |
| static size_t | flashpage_size (unsigned page) | 
| Get the page size of the given page number.  More... | |
| static void * | flashpage_addr (unsigned page) | 
| Translate the given page number into the page's starting address.  More... | |
| static unsigned | flashpage_page (const void *addr) | 
| Translate the given address into the corresponding page number.  More... | |
| void | flashpage_erase (unsigned page) | 
| Erase the given page.  More... | |
| void | flashpage_write_page (unsigned page, const void *data) | 
| Write the given page with the given data.  More... | |
| void | flashpage_write (void *target_addr, const void *data, size_t len) | 
| Write any number of data bytes to a given location in the flash memory.  More... | |
| void | flashpage_read (unsigned page, void *data) | 
| Read the given page into the given memory location.  More... | |
| int | flashpage_verify (unsigned page, const void *data) | 
| Verify the given page against the given data.  More... | |
| int | flashpage_write_and_verify (unsigned page, const void *data) | 
| Write the given page and verify the results.  More... | |