API Documentation¶
-
uint32_t
flashmem_get_address
(const void *memptr)¶ Obtain the flash memory address for a memory pointer.
- Note
- If memptr is not in valid flash memory it will return an offset which exceeds the internal flash memory size.
- Note
- The flash location is dependent on where rBoot has mapped the firmware.
- Parameters
memptr
:
- Return Value
uint32_t
: Offset from start of flash memory
-
uint32_t
flashmem_write
(const void *from, uint32_t toaddr, uint32_t size)¶ Write a block of data to flash.
- Note
- None of the parameters need to be aligned
- Parameters
from
: Buffer to obtain data fromtoaddr
: Flash location to start writingsize
: Number of bytes to write
- Return Value
uint32_t
: Number of bytes written
-
uint32_t
flashmem_read
(void *to, uint32_t fromaddr, uint32_t size)¶ Read a block of data from flash.
- Note
- none of the parameters need to be aligned
- Parameters
to
: Buffer to store datafromaddr
: Flash location to start readingsize
: Number of bytes to read
- Return Value
uint32_t
: Number of bytes written
-
bool
flashmem_erase_sector
(uint32_t sector_id)¶ Erase a single flash sector.
- Parameters
sector_id
: the sector to erase
- Return Value
true
: on success
-
SPIFlashInfo
flashmem_get_info
()¶ Get flash memory information block.
- Return Value
SPIFlashInfo
: Information block
-
uint8_t
flashmem_get_size_type
()¶ Returns a number indicating the size of flash memory chip.
- Return Value
uint8_t
: See SpiFlashInfo.size field for possible values
-
uint32_t
flashmem_get_size_bytes
()¶ get the total flash memory size
- Return Value
uint32_t
: Size in bytes
-
uint16_t
flashmem_get_size_sectors
()¶ Get the total number of flash sectors.
- Return Value
uint16_t
: Sector count
-
uint32_t
flashmem_find_sector
(uint32_t address, uint32_t *pstart, uint32_t *pend)¶ Helper function: find the flash sector in which an address resides.
- Note
- Optional parameters may be null
- Parameters
address
:pstart
: OUT/OPTIONAL: Start of sector containing the given addresspend
: OUT/OPTIONAL: Last address in sector
- Return Value
uint32_t
: Sector number for the given address
-
uint32_t
flashmem_get_sector_of_address
(uint32_t addr)¶ Get sector number containing the given address.
- Parameters
addr
:
- Return Value
uint32_t
: sector number
-
uint32_t
flashmem_write_internal
(const void *from, uint32_t toaddr, uint32_t size)¶ write to flash memory
- Note
- All parameters MUST be aligned to 4-byte word boundaries, including the RAM pointer
- Parameters
from
: Buffer to read data from - MUST be word-alignedtoaddr
: Flash address (offset) to write to - MUST be word-alignedsize
: Number of bytes to write - MUST be word-aligned
- Return Value
uint32_t
: Number of bytes actually written
-
uint32_t
flashmem_read_internal
(void *to, uint32_t fromaddr, uint32_t size)¶ Read from flash memory.
- Note
- All parameters MUST be aligned to 4-byte word boundaries, including the RAM pointer
- Parameters
to
: Buffer to store data - MUST be word-alignedfromaddr
: Flash address (offset) to read from - MUST be word-alignedsize
: Number of bytes to read - MUST be word-aligned
- Return Value
uint32_t
: Number of bytes actually read
-
uint32_t
flashmem_get_first_free_block_address
()¶
-
INTERNAL_FLASH_WRITE_UNIT_SIZE
¶ Flash memory access must be aligned and in multiples of 4-byte words.
-
INTERNAL_FLASH_READ_UNIT_SIZE
¶
-
FLASH_TOTAL_SEC_COUNT
¶
-
SYS_PARAM_SEC_COUNT
¶ Number of flash sectors reserved for system parameters at start.
-
FLASH_WORK_SEC_COUNT
¶
-
INTERNAL_FLASH_SECTOR_SIZE
¶
-
INTERNAL_FLASH_SIZE
¶
-
INTERNAL_FLASH_START_ADDRESS
¶
-
struct
STORE_TYPEDEF_ATTR
¶ - #include <esp_spi_flash.h>
SPI Flash memory information block. Stored at the beginning of flash memory.
Public Types
Public Members
-
uint8_t
unknown0
¶
-
uint8_t
unknown1
¶
-
STORE_TYPEDEF_ATTR::[anonymous]
mode
¶
-
STORE_TYPEDEF_ATTR::[anonymous]
speed
¶
-
STORE_TYPEDEF_ATTR::[anonymous]
size
¶
-
uint8_t