Skip to content

Commit caa31ec

Browse files
committed
drivers/mtd: fix mtd_write_sector
Parameter `num` of `mtd_write_page_raw` is the number of bytes to be written, which is the number of sectors to be written`count` multiplied by the pages per sector `mtd->pages_per_sector` and the page size `mtd->page_size`.
1 parent 866f2a0 commit caa31ec

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

drivers/mtd/mtd.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -395,7 +395,8 @@ int mtd_write_sector(mtd_dev_t *mtd, const void *data, uint32_t sector,
395395
}
396396

397397
uint32_t page = sector * mtd->pages_per_sector;
398-
return mtd_write_page_raw(mtd, data, page, 0, page * mtd->page_size);
398+
return mtd_write_page_raw(mtd, data, page, 0,
399+
count * mtd->pages_per_sector * mtd->page_size);
399400
}
400401

401402
int mtd_power(mtd_dev_t *mtd, enum mtd_power_state power)

0 commit comments

Comments
 (0)