From 853fc11fcc1d87456eaa9ed149fad3ba4e01f06f Mon Sep 17 00:00:00 2001 From: Jon Lin Date: Fri, 4 Sep 2020 17:42:03 +0800 Subject: [PATCH] blk: Add BLK_MTD_CONT_WRITE tag Change-Id: I72537387912d5c981dbe205c0d0c1864fa42a555 Signed-off-by: Jon Lin --- drivers/mtd/mtd_blk.c | 18 +++++++++--------- include/blk.h | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/mtd/mtd_blk.c b/drivers/mtd/mtd_blk.c index ec4aa06aeb..64d2822cb0 100644 --- a/drivers/mtd/mtd_blk.c +++ b/drivers/mtd/mtd_blk.c @@ -446,7 +446,15 @@ ulong mtd_dwrite(struct udevice *udev, lbaint_t start, if (desc->devnum == BLK_MTD_NAND || desc->devnum == BLK_MTD_SPI_NAND || desc->devnum == BLK_MTD_SPI_NOR) { - if (desc->op_flag == BLK_MTD_NBA_RW) { + if (desc->op_flag == BLK_MTD_CONT_WRITE) { + ret = mtd_map_write(mtd, off, &rwsize, + NULL, mtd->size, + (u_char *)(src), 0); + if (!ret) + return blkcnt; + else + return 0; + } else { lbaint_t off_aligned, alinged; size_t rwsize_aligned; u8 *p_buf; @@ -481,14 +489,6 @@ ulong mtd_dwrite(struct udevice *udev, lbaint_t start, return blkcnt; else return 0; - } else { - ret = mtd_map_write(mtd, off, &rwsize, - NULL, mtd->size, - (u_char *)(src), 0); - if (!ret) - return blkcnt; - else - return 0; } } else { return 0; diff --git a/include/blk.h b/include/blk.h index 31b5ad78ea..589edd96ef 100644 --- a/include/blk.h +++ b/include/blk.h @@ -53,7 +53,7 @@ enum if_type { /* define block device operation flags */ #define BLK_PRE_RW BIT(0) /* Block prepare read & write*/ -#define BLK_MTD_NBA_RW BIT(1) /* MTD block non-block-aligned read & write */ +#define BLK_MTD_CONT_WRITE BIT(1) /* Special for Nand device P/E */ /* * Identifies the partition table type (ie. MBR vs GPT GUID) signature