|
|
|
@ -12,6 +12,7 @@ struct flash_ops { |
|
|
|
|
int (* write)(struct flash_dev *dev, uint32_t addr, const void *data, |
|
|
|
|
size_t len); |
|
|
|
|
int (* copy)(struct flash_dev *dev, uint32_t dst, uint32_t src, size_t len); |
|
|
|
|
int (* is_erased)(struct flash_dev *dev, uint32_t addr); |
|
|
|
|
int (* erase)(struct flash_dev *dev, uint32_t addr); |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
@ -22,6 +23,8 @@ struct flash_dev { |
|
|
|
|
uint8_t log2_block_size; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
int default_flash_is_erased(struct flash_dev *dev, uint32_t addr); |
|
|
|
|
|
|
|
|
|
struct flash_dev *flash_probe(void); |
|
|
|
|
void flash_release(struct flash_dev *dev); |
|
|
|
|
size_t flash_get_size(struct flash_dev *dev); |
|
|
|
@ -30,4 +33,5 @@ int flash_read(struct flash_dev *dev, uint32_t addr, void *data, size_t len); |
|
|
|
|
int flash_write(struct flash_dev *dev, uint32_t addr, const void *data, |
|
|
|
|
size_t len); |
|
|
|
|
int flash_copy(struct flash_dev *dev, uint32_t dst, uint32_t src, size_t len); |
|
|
|
|
int flash_is_erased(struct flash_dev *dev, uint32_t addr, size_t len); |
|
|
|
|
int flash_erase(struct flash_dev *dev, uint32_t addr, size_t len); |
|
|
|
|