[PATCH 3/3] mtd: nand-imx: don't copy more bytes than read from hardware
Uwe Kleine-König
u.kleine-koenig at pengutronix.de
Thu Feb 5 13:21:32 PST 2015
The NFC command used for reading the result of a READID command to the NAND chip
reads 6 bytes (in x8 mode) or 6 words (in x16 mode with the upper bytes all
being 0). So there is no need to safe 16 bytes for later consumption.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
---
drivers/mtd/nand/nand_imx.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/mtd/nand/nand_imx.c b/drivers/mtd/nand/nand_imx.c
index 685750991389..00c05d00afe3 100644
--- a/drivers/mtd/nand/nand_imx.c
+++ b/drivers/mtd/nand/nand_imx.c
@@ -362,7 +362,11 @@ static void send_read_id_v3(struct imx_nand_host *host)
wait_op_done(host);
- memcpy(host->data_buf, host->main_area0, 16);
+ /*
+ * NFC_ID results in reading 6 bytes or words (depending on data width),
+ * so copying 3 32-bit values is just fine.
+ */
+ memcpy(host->data_buf, host->main_area0, 12);
}
static void send_read_param_v3(struct imx_nand_host *host)
--
2.1.4
More information about the barebox
mailing list