/branches/gl-inet/target/linux/mediatek/patches-4.14/0162-mtd-nand-mtk-use-nand_reset-to-reset-NAND-devices-in.patch |
@@ -0,0 +1,41 @@ |
From fb607c7c1eaeb47ec2ffed99cab571892cb6af7d Mon Sep 17 00:00:00 2001 |
From: Xiaolei Li <xiaolei.li@mediatek.com> |
Date: Thu, 2 Nov 2017 10:05:07 +0800 |
Subject: [PATCH 162/224] mtd: nand: mtk: use nand_reset() to reset NAND |
devices in resume function |
|
Previously, we only select chips and then send reset command to a NAND |
device during resuming nand driver. There is a lack of deselecting chips. |
It is advised to reset and initialize a NAND device using nand_reset(). |
|
Signed-off-by: Xiaolei Li <xiaolei.li@mediatek.com> |
Reviewed-by: Matthias Brugger <matthias.bgg@gmail.com> |
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> |
--- |
drivers/mtd/nand/mtk_nand.c | 8 ++------ |
1 file changed, 2 insertions(+), 6 deletions(-) |
|
--- a/drivers/mtd/nand/mtk_nand.c |
+++ b/drivers/mtd/nand/mtk_nand.c |
@@ -1540,7 +1540,6 @@ static int mtk_nfc_resume(struct device |
struct mtk_nfc *nfc = dev_get_drvdata(dev); |
struct mtk_nfc_nand_chip *chip; |
struct nand_chip *nand; |
- struct mtd_info *mtd; |
int ret; |
u32 i; |
|
@@ -1553,11 +1552,8 @@ static int mtk_nfc_resume(struct device |
/* reset NAND chip if VCC was powered off */ |
list_for_each_entry(chip, &nfc->chips, node) { |
nand = &chip->nand; |
- mtd = nand_to_mtd(nand); |
- for (i = 0; i < chip->nsels; i++) { |
- nand->select_chip(mtd, i); |
- nand->cmdfunc(mtd, NAND_CMD_RESET, -1, -1); |
- } |
+ for (i = 0; i < chip->nsels; i++) |
+ nand_reset(nand, i); |
} |
|
return 0; |