--- a/drivers/mtd/mtdblock.c +++ b/drivers/mtd/mtdblock.c @@ -45,7 +45,7 @@ static void erase_callback(struct erase_ wake_up(wait_q); } -static int erase_write (struct mtd_info *mtd, unsigned long pos, +int erase_write (struct mtd_info *mtd, unsigned long pos, int len, const char *buf) { struct erase_info erase; --- a/include/linux/mtd/mtd.h +++ b/include/linux/mtd/mtd.h @@ -319,6 +319,10 @@ int default_mtd_writev(struct mtd_info * int default_mtd_readv(struct mtd_info *mtd, struct kvec *vecs, unsigned long count, loff_t from, size_t *retlen); +int erase_write (struct mtd_info *mtd, unsigned long pos, + int len, const char *buf); + + #ifdef CONFIG_MTD_PARTITIONS void mtd_erase_callback(struct erase_info *instr); #else