@ -18,6 +18,7 @@ struct flash_dev {
};
struct flash_dev *flash_probe(void);
void flash_release(struct flash_dev *dev);
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);
@ -113,3 +113,18 @@ err_free_dev:
free(dev);
return NULL;
}
void flash_release(struct flash_dev *dev)
{
struct stdio_flash_priv *priv;
if (!dev)
return;
priv = dev->priv;
munmap(priv->data, priv->size);
fclose(priv->fp);
free(dev->priv);