Low-level flash page peripheral driver interface. More...
Low-level flash page peripheral driver interface.
Definition in file flashpage.h.
#include <stdint.h>
#include "cpu_conf.h"
#include "periph_cpu.h"
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. This variable must be defined for that purpose, according to the MCU align requirements. | |
Enumerations | |
enum | { FLASHPAGE_OK = 0, FLASHPAGE_NOMATCH = -1 } |
Return values used in this interface. More... | |
Functions | |
static void * | flashpage_addr (unsigned page) |
Translate the given page number into the page's starting address. More... | |
static unsigned | flashpage_page (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... | |