aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm63xx/patches-4.4/000-4.8-09-mtd-spi-nor-add-read-loop.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/brcm63xx/patches-4.4/000-4.8-09-mtd-spi-nor-add-read-loop.patch')
-rw-r--r--target/linux/brcm63xx/patches-4.4/000-4.8-09-mtd-spi-nor-add-read-loop.patch54
1 files changed, 0 insertions, 54 deletions
diff --git a/target/linux/brcm63xx/patches-4.4/000-4.8-09-mtd-spi-nor-add-read-loop.patch b/target/linux/brcm63xx/patches-4.4/000-4.8-09-mtd-spi-nor-add-read-loop.patch
deleted file mode 100644
index 662c73ada9..0000000000
--- a/target/linux/brcm63xx/patches-4.4/000-4.8-09-mtd-spi-nor-add-read-loop.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 26f9bcad29a6c240881bd4efc90f16a9990dd6c2 Mon Sep 17 00:00:00 2001
-From: Michal Suchanek <hramrach@gmail.com>
-Date: Thu, 5 May 2016 17:31:55 -0700
-Subject: [PATCH 09/10] mtd: spi-nor: add read loop
-
-mtdblock and ubi do not handle the situation when read returns less data
-than requested. Loop in spi-nor until buffer is filled or an error is
-returned.
-
-Signed-off-by: Michal Suchanek <hramrach@gmail.com>
-Signed-off-by: Brian Norris <computersforpeace@gmail.com>
-Tested-by Cyrille Pitchen <cyrille.pitchen@atmel.com>
-Acked-by: Michal Suchanek <hramrach@gmail.com>
-Tested-by: Michal Suchanek <hramrach@gmail.com>
----
- drivers/mtd/spi-nor/spi-nor.c | 25 +++++++++++++++++++------
- 1 file changed, 19 insertions(+), 6 deletions(-)
-
---- a/drivers/mtd/spi-nor/spi-nor.c
-+++ b/drivers/mtd/spi-nor/spi-nor.c
-@@ -890,14 +890,27 @@ static int spi_nor_read(struct mtd_info
- if (ret)
- return ret;
-
-- ret = nor->read(nor, from, len, buf);
-+ while (len) {
-+ ret = nor->read(nor, from, len, buf);
-+ if (ret == 0) {
-+ /* We shouldn't see 0-length reads */
-+ ret = -EIO;
-+ goto read_err;
-+ }
-+ if (ret < 0)
-+ goto read_err;
-
-- spi_nor_unlock_and_unprep(nor, SPI_NOR_OPS_READ);
-- if (ret < 0)
-- return ret;
-+ WARN_ON(ret > len);
-+ *retlen += ret;
-+ buf += ret;
-+ from += ret;
-+ len -= ret;
-+ }
-+ ret = 0;
-
-- *retlen += ret;
-- return 0;
-+read_err:
-+ spi_nor_unlock_and_unprep(nor, SPI_NOR_OPS_READ);
-+ return ret;
- }
-
- static int sst_write(struct mtd_info *mtd, loff_t to, size_t len,