STM32 FLASH fixes: use size_t instead of uint16_t, make interface more generic. From Freddie Chopin

This commit is contained in:
Gregory Nutt
2014-08-28 09:11:20 -06:00
parent 45f3328247
commit 7ba9ddee7f
4 changed files with 181 additions and 51 deletions
+22 -7
View File
@@ -43,7 +43,6 @@
#include <nuttx/config.h>
#include <sys/types.h>
#include <stdint.h>
#include <stdbool.h>
/****************************************************************************
@@ -70,7 +69,7 @@ extern "C" {
*
****************************************************************************/
uint16_t up_progmem_npages(void);
size_t up_progmem_npages(void);
/****************************************************************************
* Name: up_progmem_isuniform
@@ -90,7 +89,7 @@ bool up_progmem_isuniform(void);
*
****************************************************************************/
uint16_t up_progmem_pagesize(uint16_t page);
size_t up_progmem_pagesize(size_t page);
/****************************************************************************
* Name: up_progmem_getpage
@@ -109,7 +108,23 @@ uint16_t up_progmem_pagesize(uint16_t page);
*
****************************************************************************/
int up_progmem_getpage(uint32_t addr);
ssize_t up_progmem_getpage(size_t addr);
/****************************************************************************
* Name: up_progmem_getaddress
*
* Description:
* Page to address conversion
*
* Input Parameters:
* page - page index
*
* Returned Value:
* Base address of given page, SIZE_MAX if page index is not valid.
*
****************************************************************************/
size_t up_progmem_getaddress(size_t page);
/****************************************************************************
* Name: up_progmem_erasepage
@@ -133,7 +148,7 @@ int up_progmem_getpage(uint32_t addr);
*
****************************************************************************/
int up_progmem_erasepage(uint16_t page);
ssize_t up_progmem_erasepage(size_t page);
/****************************************************************************
* Name: up_progmem_ispageerased
@@ -153,7 +168,7 @@ int up_progmem_erasepage(uint16_t page);
*
****************************************************************************/
int up_progmem_ispageerased(uint16_t page);
ssize_t up_progmem_ispageerased(size_t page);
/****************************************************************************
* Name: up_progmem_write
@@ -184,7 +199,7 @@ int up_progmem_ispageerased(uint16_t page);
*
****************************************************************************/
int up_progmem_write(uint32_t addr, const void *buf, size_t count);
ssize_t up_progmem_write(size_t addr, const void *buf, size_t count);
/* TODO: Define the following functions and their options:
* - up_progmem_protect()