FAILED: patch "[PATCH] mtd: nand: fsl_ifc: Fix nand waitfunc return value" failed to apply to 3.18-stable tree
Subsystems (3)
[email protected]
maintainerThe patch below does not apply to the 3.18-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
Quoted 1 line
From
fa8e6d58c5bc260f4369c6699683d69695daed0aMon Sep 17 00:00:00 2001
From: Jagdish Gediya <[email protected]>
Date: Wed, 21 Mar 2018 04:31:36 +0530
Subject: [PATCH] mtd: nand: fsl_ifc: Fix nand waitfunc return value
As per the IFC hardware manual, Most significant 2 bytes in nand_fsr register are the outcome of NAND READ STATUS command.
So status value need to be shifted and aligned as per the nand framework requirement.
Fixes 82771882d960 ("NAND Machine support for Integrated Flash Controller")
Cc [email protected] # v3.18+
Signed-off-by Jagdish Gediya <[email protected]>
Reviewed-by Prabhakar Kushwaha <[email protected]>
Signed-off-by Boris Brezillon <[email protected]>
drivers/mtd/nand/fsl_ifc_nand.c +3 -2
@@ -626,6 +626,7 @@ static int fsl_ifc_wait(struct mtd_info *mtd, struct nand_chip *chip)struct fsl_ifc_ctrl *ctrl = priv->ctrl;struct fsl_ifc_runtime __iomem *ifc = ctrl->rregs;u32 nand_fsr; +int status;/* Use READ_STATUS command, but wait for the device to be ready */ ifc_out32((IFC_FIR_OP_CW0 << IFC_NAND_FIR0_OP0_SHIFT) |
@@ -640,12 +641,12 @@ static int fsl_ifc_wait(struct mtd_info *mtd, struct nand_chip *chip)fsl_ifc_run_command (mtd); nand_fsr =ifc_in32 (&ifc->ifc_nand.nand_fsr); - + status = nand_fsr >>24 ;/* * The chip always seems to report that it is * write-protected, even when it is not. */ -return nand_fsr |NAND_STATUS_WP ; +return status |NAND_STATUS_WP ; }/*