blk: Add BLK_MTD_CONT_WRITE tag

Change-Id: I72537387912d5c981dbe205c0d0c1864fa42a555
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
This commit is contained in:
Jon Lin 2020-09-04 17:42:03 +08:00 committed by Joseph Chen
parent 0e91bf0e81
commit 853fc11fcc
2 changed files with 10 additions and 10 deletions

View File

@ -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;

View File

@ -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