You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
785 B
45 lines
785 B
#include <stdint.h>
|
|
#include <stdlib.h>
|
|
|
|
#include <flash.h>
|
|
|
|
size_t flash_get_size(struct flash_dev *dev)
|
|
{
|
|
if (!dev)
|
|
return 0;
|
|
|
|
return dev->ops->get_size(dev);
|
|
}
|
|
|
|
int flash_read(struct flash_dev *dev, uint32_t addr, void *data, size_t len)
|
|
{
|
|
if (!dev)
|
|
return -1;
|
|
|
|
return dev->ops->read(dev, addr, data, len);
|
|
}
|
|
|
|
int flash_write(struct flash_dev *dev, uint32_t addr, const void *data,
|
|
size_t len)
|
|
{
|
|
if (!dev)
|
|
return -1;
|
|
|
|
return dev->ops->write(dev, addr, data, len);
|
|
}
|
|
|
|
int flash_copy(struct flash_dev *dev, uint32_t dst, uint32_t src, size_t len)
|
|
{
|
|
if (!dev)
|
|
return -1;
|
|
|
|
return dev->ops->copy(dev, dst, src, len);
|
|
}
|
|
|
|
int flash_erase(struct flash_dev *dev, uint32_t addr, size_t block_size)
|
|
{
|
|
if (!dev)
|
|
return -1;
|
|
|
|
return dev->ops->erase(dev, addr, block_size);
|
|
}
|
|
|