From: Yogesh Gaur Date: Wed, 13 Jun 2018 06:08:12 +0000 (+0530) Subject: mtd: spi-nor: Support controllers with limited TX FIFO size X-Git-Tag: v4.20-rc1~187^2~1^2~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=630d6bd8a3b4964e8a4ccced97f7f1819c92b588;p=thirdparty%2Flinux.git mtd: spi-nor: Support controllers with limited TX FIFO size Some SPI controllers can't write nor->page_size bytes in a single step because their TX FIFO is too small. Allow nor->write() to return a size that is smaller than the requested write size to gracefully handle this case. Signed-off-by: Yogesh Gaur Signed-off-by: Boris Brezillon --- diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c index 7993dd5c0c216..9407ca5f94433 100644 --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c @@ -1756,13 +1756,6 @@ static int spi_nor_write(struct mtd_info *mtd, loff_t to, size_t len, goto write_err; *retlen += written; i += written; - if (written != page_remain) { - dev_err(nor->dev, - "While writing %zu bytes written %zd bytes\n", - page_remain, written); - ret = -EIO; - goto write_err; - } } write_err: