
From: Marek Behún marek.behun@nic.cz
The spi_nor_erase() function does not check return value of the write_enable() call. Fix this.
Signed-off-by: Marek Behún marek.behun@nic.cz Reviewed-by: Simon Glass sjg@chromium.org Reviewed-by: Jagan Teki jagan@amarulasolutions.com Tested-by: Masami Hiramatsu masami.hiramatsu@linaro.org --- drivers/mtd/spi/spi-nor-core.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/mtd/spi/spi-nor-core.c b/drivers/mtd/spi/spi-nor-core.c index 529e7e9178..d2018ab702 100644 --- a/drivers/mtd/spi/spi-nor-core.c +++ b/drivers/mtd/spi/spi-nor-core.c @@ -929,7 +929,9 @@ static int spi_nor_erase(struct mtd_info *mtd, struct erase_info *instr) if (ret < 0) goto erase_err; #endif - write_enable(nor); + ret = write_enable(nor); + if (ret < 0) + goto erase_err;
ret = spi_nor_erase_sector(nor, addr); if (ret < 0)