diff --git a/drivers/mtd/ftl.c b/drivers/mtd/ftl.c index 1c1bf7d8c3b..253ce905642 100644 --- a/drivers/mtd/ftl.c +++ b/drivers/mtd/ftl.c @@ -392,14 +392,14 @@ static ssize_t ftl_mtd_erase(FAR struct ftl_struct_s *dev, off_t startblock) if (dev->lptable == NULL) { ret = MTD_ERASE(dev->mtd, startblock, 1); - if (ret != 1 && ret != -ENOSYS) + if (ret < 0 && ret != -ENOSYS) { ferr("ERROR: Erase block %" PRIdOFF " failed: %zd\n", startblock, ret); return ret; } - return 1; + return OK; } while (1) @@ -410,9 +410,9 @@ static ssize_t ftl_mtd_erase(FAR struct ftl_struct_s *dev, off_t startblock) } ret = MTD_ERASE(dev->mtd, dev->lptable[startblock], 1); - if (ret == 1 || ret == -ENOSYS) + if (ret >= 0 || ret == -ENOSYS) { - return 1; + return OK; } MTD_MARKBAD(dev->mtd, dev->lptable[startblock]);