mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-18 02:44:37 +00:00
dfu: dfu_mtd: set max_buf_size to erasesize also for NOR devices
For NOR devices the logical DFU buffer size is the sector_size, as it is done in dfu_sf.c or in spi/sf_mtd.c (sf_mtd_info.erasesize = flash->sector_size) For NAND the DFU size was already limited to erasesize as has_pages = true. So the mtd dfu backend can use this erasesize for all the MTD devices, NOR and NAND with dfu->max_buf_size = mtd->erasesize This difference was initially copied from MTD command, where data is fully available in RAM without size limitation. This patch avoids to have many sector write in dfu_mtd.c at the end of the DFU transfer and avoids issues with USB timeout or WATCHDOG. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
This commit is contained in:
parent
88f7ca03b4
commit
2dc41fccf3
1 changed files with 1 additions and 4 deletions
|
@ -254,7 +254,6 @@ int dfu_fill_entity_mtd(struct dfu_entity *dfu, char *devstr, char *s)
|
|||
{
|
||||
char *st;
|
||||
struct mtd_info *mtd;
|
||||
bool has_pages;
|
||||
int ret, part;
|
||||
|
||||
mtd = get_mtd_device_nm(devstr);
|
||||
|
@ -264,9 +263,7 @@ int dfu_fill_entity_mtd(struct dfu_entity *dfu, char *devstr, char *s)
|
|||
|
||||
dfu->dev_type = DFU_DEV_MTD;
|
||||
dfu->data.mtd.info = mtd;
|
||||
|
||||
has_pages = mtd->type == MTD_NANDFLASH || mtd->type == MTD_MLCNANDFLASH;
|
||||
dfu->max_buf_size = has_pages ? mtd->erasesize : 0;
|
||||
dfu->max_buf_size = mtd->erasesize;
|
||||
|
||||
st = strsep(&s, " ");
|
||||
if (!strcmp(st, "raw")) {
|
||||
|
|
Loading…
Add table
Reference in a new issue