FLASH设备结构体
fash的名称:on_chip_flash_16k_part、on_chip_flash_128k_part等
struct fal_flash_dev
{
char name[FAL_DEV_NAME_MAX];
/* flash device start address and len */
uint32_t addr;
size_t len;
/* the block size in the flash for erase minimum granularity */
size_t blk_size;
struct
{
int (*init)(void);
int (*read)(long offset, uint8_t *buf, size_t size);
int (*write)(long offset, const uint8_t *buf, size_t size);
int (*erase)(long offset, size_t size);
} ops;
};
FLASH设备初始化
片上FLASH的初始化
片外FLASH的初始化
基于FLASH设备创建分区
图中创建了三个分区:
bootloader:使用onchip_flash_16k_part设备,从起始位置开始使用,共计使用32K。
download:使用onchip_flash_128k_part设备,从起始位置开始使用,共计使用128K。
app:使用onchip_flash_128k_part设备,从128k位置开始使用,共计使用256K。