@@ -561,7 +561,8 @@ static int bf5xx_nand_read_page_raw(struct mtd_info *mtd, struct nand_chip *chip
uint8_t *buf, int oob_required, int page)
{
bf5xx_nand_read_buf(mtd, buf, mtd->writesize);
- bf5xx_nand_read_buf(mtd, chip->oob_poi, mtd->oobsize);
+ if (oob_required)
+ bf5xx_nand_read_buf(mtd, chip->oob_poi, mtd->oobsize);
return 0;
}
@@ -570,7 +571,8 @@ static void bf5xx_nand_write_page_raw(struct mtd_info *mtd, struct nand_chip *ch
const uint8_t *buf, int oob_required)
{
bf5xx_nand_write_buf(mtd, buf, mtd->writesize);
- bf5xx_nand_write_buf(mtd, chip->oob_poi, mtd->oobsize);
+ if (oob_required)
+ bf5xx_nand_write_buf(mtd, chip->oob_poi, mtd->oobsize);
}
/*
Don't read/write OOB if the caller doesn't require it. Signed-off-by: Brian Norris <computersforpeace@gmail.com> --- drivers/mtd/nand/bf5xx_nand.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)