From: Pali Rohár <pali@kernel.org>
Date: Mon, 4 Apr 2022 16:17:18 +0000 (+0200)
Subject: mtd: rawnand: fsl_elbc: Implement RNDOUT command
X-Git-Tag: v2025.01-rc5-pxa1908~1429^2~33
X-Git-Url: http://git.dujemihanovic.xyz/%22bddb.css/static/%7B%7B%20%24style.RelPermalink%20%7D%7D?a=commitdiff_plain;h=974f66a4700ca4e433e0e39526ac5bd3012cbe43;p=u-boot.git

mtd: rawnand: fsl_elbc: Implement RNDOUT command

This is needed for SW ECC.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
---

diff --git a/drivers/mtd/nand/raw/fsl_elbc_nand.c b/drivers/mtd/nand/raw/fsl_elbc_nand.c
index ddfd75d32d..f8698ec015 100644
--- a/drivers/mtd/nand/raw/fsl_elbc_nand.c
+++ b/drivers/mtd/nand/raw/fsl_elbc_nand.c
@@ -312,6 +312,14 @@ static void fsl_elbc_cmdfunc(struct mtd_info *mtd, unsigned int command,
 		fsl_elbc_run_command(mtd);
 		return;
 
+	/* RNDOUT moves the pointer inside the page */
+	case NAND_CMD_RNDOUT:
+		vdbg("fsl_elbc_cmdfunc: NAND_CMD_RNDOUT, column: 0x%x.\n",
+		     column);
+
+		ctrl->index = column;
+		return;
+
 	/* READOOB reads only the OOB because no ECC is performed. */
 	case NAND_CMD_READOOB:
 		vdbg("fsl_elbc_cmdfunc: NAND_CMD_READOOB, page_addr:"