1
1
openwrt/target/linux/mediatek/patches-6.18/121-hack-spi-nand-1b-bbm.patch
John Audia 17f5538441 kernel: bump 6.18 to 6.18.33
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.18.33

Removed upstreamed:
  generic/backport-6.18/742-v7.1-r8152-fix-incorrect-register-write-to-USB_UPHY_XTAL.patch[1]
  generic/backport-6.18/827-v7.0-crypto-inside-secure-eip93-fix-register-definition.patch[2]
  generic/backport-6.18/828-v7.0-crypto-inside-secure-eip93-register-hash-before-auth.patch[3]
  generic/backport-6.18/940-v7.1-net-dsa-realtek-rtl8365mb-fix-mode-mask-calculation.patch[4]
  generic/pending-6.18/928-crypto-eip93-fix-hmac-setkey-algo-selection.patch[5]

All other patches automatically rebased via update_kernel.sh

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.33&id=50c601805fe3
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.33&id=7ed07c9ce525
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.33&id=b6263eb2b188
4. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.33&id=b707f3109f1a
5. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.33&id=fc9310d79fdb

Build system: x86/64
Build-tested: x86/64-glibc
Run-tested: x86/64-glibc

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/23419
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2026-05-25 21:04:53 +02:00

32 lines
1.0 KiB
Diff

From 2138956bdc3145fac26d2ba8ac966f31d33cd290 Mon Sep 17 00:00:00 2001
From: Chuanhong Guo <gch981213@gmail.com>
Date: Thu, 7 Apr 2022 10:05:56 +0800
Subject: [PATCH] mediatek: spi-nand: check for 1 byte BBM only
the OOB layout in MTK SNFI uses the 2nd byte, and anything using OOB
will make the block a bad-block in spi-nand driver.
Hack it for now. We need a proper solution upstream.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
---
--- a/drivers/mtd/nand/spi/core.c
+++ b/drivers/mtd/nand/spi/core.c
@@ -970,7 +970,7 @@ static int spinand_mtd_write(struct mtd_
static bool spinand_isbad(struct nand_device *nand, const struct nand_pos *pos)
{
struct spinand_device *spinand = nand_to_spinand(nand);
- u8 marker[2] = { };
+ u8 marker[1] = { };
struct nand_page_io_req req = {
.pos = *pos,
.ooblen = sizeof(marker),
@@ -989,7 +989,7 @@ static bool spinand_isbad(struct nand_de
spinand_read_page(spinand, &req);
}
- if (marker[0] != 0xff || marker[1] != 0xff)
+ if (marker[0] != 0xff)
return true;
return false;