[openwrt/openwrt] kernel: move Toshiba-TC58NVG0S3H patch to ipq40xx

LEDE Commits lede-commits at lists.infradead.org
Sun Jun 5 12:23:58 PDT 2022


chunkeey pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/b047ca1aa0e25f671cf7c927a8db0c2b413202a0

commit b047ca1aa0e25f671cf7c927a8db0c2b413202a0
Author: Christian Lamparter <chunkeey at gmail.com>
AuthorDate: Sun Jun 5 20:44:27 2022 +0200

    kernel: move Toshiba-TC58NVG0S3H patch to ipq40xx
    
    Hannu Nyman wrote in openwrt's github issue #9962:
    |Based on forum discussion, the commit 0bc794a
    |"kernel: add support for Toshiba TC58NVG0S3HTA00 NAND flash"
    |causes flash memory chip misdetection for some other
    |Fritzbox devices, as the commit only defines a 4-byte flash
    |memory chip ID that matches several chips used in the devices.
    |
    |See discussion from this onward
    |<https://forum.openwrt.org/t/openwrt-22-03-0-rc1-first-release-candidate/126045/182>
    |
    |OpenWrt 22.03.0-rc2 and rc3 are causing on a Fritzbox 7412
    |bootloops due to a misdetected flash chip.
    |
    |Yup, that patch is missing the 5th ID byte entirely - both chips
    |share the same first 4;
    |
    | TC58NVG0S3HTA00 = 0x98 0xf1 0x80 0x15 0x72 (digikey datasheet, page 35)
    | TC58BVG0S3HTA00 = 0x98 0xf1 0x80 0x15 0xf2 (digikey datasheet, page 28)
    |
    |The commit has also been backported to openwrt-22.03 after rc1,
    |so both rc2 and rc3 suffer from this bug."
    
    Andreas' TC58NVG0S3H seems not to follow Toshibas/Kioxa's own datasheet.
    It only reports the first four bytes: "98 f1 80 15 00 00 00 00".
    
    This patch changes the id_len in the entry to 8. This makes it so that
    Andreas' NAND is still detected. At the same time, this prevents other
    Toshiba NAND flash chips - that share the same four bytes - from being
    misdetected.
    
    The issue has been reported upstream, since they also accepted the initial
    patch... so if not addressed, 5.19/5.20 will also break those affected
    devices again.
    
    Reported-by: Peter-vdL
    Fixes: 0bc794a66845 ("kernel: add support for Toshiba TC58NVG0S3HTA00 NAND flash")
    Link: <https://github.com/openwrt/openwrt/issues/9962>
    Signed-off-by: Christian Lamparter <chunkeey at gmail.com>
---
 .../444-mtd-nand-rawnand-add-support-for-Toshiba-TC58NVG0S3H.patch     | 3 ++-
 .../444-mtd-nand-rawnand-add-support-for-Toshiba-TC58NVG0S3H.patch     | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/target/linux/generic/pending-5.10/444-mtd-nand-rawnand-add-support-for-Toshiba-TC58NVG0S3H.patch b/target/linux/generic/pending-5.10/444-mtd-nand-rawnand-add-support-for-Toshiba-TC58NVG0S3H.patch
index 54df828875..f644c4a73e 100644
--- a/target/linux/generic/pending-5.10/444-mtd-nand-rawnand-add-support-for-Toshiba-TC58NVG0S3H.patch
+++ b/target/linux/generic/pending-5.10/444-mtd-nand-rawnand-add-support-for-Toshiba-TC58NVG0S3H.patch
@@ -13,6 +13,7 @@ has 128 bytes OOB. This adds a static NAND ID entry to correct this.
 Tested on FRITZ!Box 7530 flashed with OpenWrt.
 
 Signed-off-by: Andreas Böhler <dev at aboehler.at>
+(changed id_len to 8)
 ---
  drivers/mtd/nand/raw/nand_ids.c | 3 +++
  1 file changed, 3 insertions(+)
@@ -27,7 +28,7 @@ index 6e41902be35f..d64adbd1ce6b 100644
  		  SZ_2K, SZ_128, SZ_128K, 0, 8, 64, NAND_ECC_INFO(1, SZ_512), },
 +	{"TC58NVG0S3HTA00 1G 3.3V 8-bit",
 +		{ .id = {0x98, 0xf1, 0x80, 0x15} },
-+		  SZ_2K, SZ_128, SZ_128K, 0, 4, 128, NAND_ECC_INFO(8, SZ_512), },
++		  SZ_2K, SZ_128, SZ_128K, 0, 8, 128, NAND_ECC_INFO(8, SZ_512), },
  	{"TC58NVG2S0F 4G 3.3V 8-bit",
  		{ .id = {0x98, 0xdc, 0x90, 0x26, 0x76, 0x15, 0x01, 0x08} },
  		  SZ_4K, SZ_512, SZ_256K, 0, 8, 224, NAND_ECC_INFO(4, SZ_512) },
diff --git a/target/linux/generic/pending-5.15/444-mtd-nand-rawnand-add-support-for-Toshiba-TC58NVG0S3H.patch b/target/linux/generic/pending-5.15/444-mtd-nand-rawnand-add-support-for-Toshiba-TC58NVG0S3H.patch
index 27c863b992..bafdaccd25 100644
--- a/target/linux/generic/pending-5.15/444-mtd-nand-rawnand-add-support-for-Toshiba-TC58NVG0S3H.patch
+++ b/target/linux/generic/pending-5.15/444-mtd-nand-rawnand-add-support-for-Toshiba-TC58NVG0S3H.patch
@@ -13,6 +13,7 @@ has 128 bytes OOB. This adds a static NAND ID entry to correct this.
 Tested on FRITZ!Box 7530 flashed with OpenWrt.
 
 Signed-off-by: Andreas Böhler <dev at aboehler.at>
+(changed id_len to 8)
 ---
  drivers/mtd/nand/raw/nand_ids.c | 3 +++
  1 file changed, 3 insertions(+)
@@ -25,7 +26,7 @@ Signed-off-by: Andreas Böhler <dev at aboehler.at>
  		  SZ_2K, SZ_128, SZ_128K, 0, 8, 64, NAND_ECC_INFO(1, SZ_512), },
 +	{"TC58NVG0S3HTA00 1G 3.3V 8-bit",
 +		{ .id = {0x98, 0xf1, 0x80, 0x15} },
-+		  SZ_2K, SZ_128, SZ_128K, 0, 4, 128, NAND_ECC_INFO(8, SZ_512), },
++		  SZ_2K, SZ_128, SZ_128K, 0, 8, 128, NAND_ECC_INFO(8, SZ_512), },
  	{"TC58NVG2S0F 4G 3.3V 8-bit",
  		{ .id = {0x98, 0xdc, 0x90, 0x26, 0x76, 0x15, 0x01, 0x08} },
  		  SZ_4K, SZ_512, SZ_256K, 0, 8, 224, NAND_ECC_INFO(4, SZ_512) },




More information about the lede-commits mailing list