mirror of
git://git.openwrt.org/openwrt/openwrt.git
synced 2024-12-11 09:24:50 +00:00
acff8aec0c
Back port the patches being submitted upstream in order to make the NAND controller work on BCM47187/5358. This is a prerequisite for supporting devices like the Netgear WNR3500L V2. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
30 lines
989 B
Diff
30 lines
989 B
Diff
From: Florian Fainelli <f.fainelli@gmail.com>
|
|
Subject: [PATCH v3 8/9] mtd: rawnand: brcmnand: BCMA controller uses command shift of 0
|
|
Date: Fri, 07 Jan 2022 10:46:13 -0800
|
|
Content-Type: text/plain; charset="utf-8"
|
|
|
|
For some odd and unexplained reason the BCMA NAND controller, albeit
|
|
revision 3.4 uses a command shift of 0 instead of 24 as it should be,
|
|
quirk that.
|
|
|
|
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
|
---
|
|
drivers/mtd/nand/raw/brcmnand/brcmnand.c | 6 ++++++
|
|
1 file changed, 6 insertions(+)
|
|
|
|
--- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c
|
|
+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
|
|
@@ -913,6 +913,12 @@ static void brcmnand_wr_corr_thresh(stru
|
|
|
|
static inline int brcmnand_cmd_shift(struct brcmnand_controller *ctrl)
|
|
{
|
|
+ /* Kludge for the BCMA-based NAND controller which does not actually
|
|
+ * shift the command
|
|
+ */
|
|
+ if (ctrl->nand_version == 0x0304 && brcmnand_non_mmio_ops(ctrl))
|
|
+ return 0;
|
|
+
|
|
if (ctrl->nand_version < 0x0602)
|
|
return 24;
|
|
return 0;
|