This is needed to restore compatibility with legacy brcmnand controllers. 3bfb22cecfe6 mtd: rawnand: brcmnand: legacy exec_op implementation 528b541b71cf mtd: nand: brcmnand: fix NAND timeout when accessing eMMC 56fce7547004 mtd: rawnand: brcmnand: remove unused parameters Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
30 lines
1.2 KiB
Diff
30 lines
1.2 KiB
Diff
From 528b541b71cf03e263272b051b70696f92258e9d Mon Sep 17 00:00:00 2001
|
|
From: David Regan <dregan@broadcom.com>
|
|
Date: Thu, 22 May 2025 10:25:17 -0700
|
|
Subject: [PATCH] mtd: nand: brcmnand: fix NAND timeout when accessing eMMC
|
|
|
|
When booting a board to NAND and accessing NAND while eMMC
|
|
transactions are occurring the NAND will sometimes timeout. This
|
|
is due to both NAND and eMMC controller sharing the same data bus
|
|
on BCMBCA chips. Fix is to extend NAND timeout to allow eMMC
|
|
transactions time to complete.
|
|
|
|
Signed-off-by: David Regan <dregan@broadcom.com>
|
|
Reviewed-by: William Zhang <william.zhang@broadcom.com>
|
|
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
|
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
|
|
---
|
|
drivers/mtd/nand/raw/brcmnand/brcmnand.c | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
--- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c
|
|
+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
|
|
@@ -101,7 +101,7 @@ struct brcm_nand_dma_desc {
|
|
#define BRCMNAND_MIN_DEVSIZE (4ULL * 1024 * 1024)
|
|
|
|
#define NAND_CTRL_RDY (INTFC_CTLR_READY | INTFC_FLASH_READY)
|
|
-#define NAND_POLL_STATUS_TIMEOUT_MS 100
|
|
+#define NAND_POLL_STATUS_TIMEOUT_MS 500
|
|
|
|
#define EDU_CMD_WRITE 0x00
|
|
#define EDU_CMD_READ 0x01
|