[PATCH 1/1] mtd: spi-nand: macronix: disable continuous read for MX35LFxGE4AD

Chukun Pan amadeus at jmu.edu.cn
Thu Jun 19 07:00:03 PDT 2025


Hi,

> Please cc linux-mtd at lists.infradead.org for all patches and queries
> related to MTD subsystems.
> Run ./scripts/get_maintainers.pl on the patch for more information.

Sorry, I forgot to add the following mailing list.
Do I need to resend this patch?

> Why? this datasheet says otherwise [1]:
>
> Would it be possible that SPI/QSPI controller of GL.iNet GL-MT3000
> has a limitation?

GL.iNet GL-MT3000 uses MediaTek MT7981 SoC, with SPI controllers
based on IPM design. [1]

I don't know what the difference is between the SPI controllers of
MT7981 and the Zynq used in commit [2].

In my case, ubi_io_read and ecc errors occurred when the openwrt
attach ubi partition (NMBM has been disabled [3]):

[    7.852000] ubi0 warning: ubi_io_read: error -5 while reading 126976 bytes from PEB 517:4096, read only 0 bytes, retry
[    7.865374] ubi0 warning: ubi_io_read: error -5 while reading 126976 bytes from PEB 517:4096, read only 0 bytes, retry
[    7.878742] ubi0 warning: ubi_io_read: error -5 while reading 126976 bytes from PEB 517:4096, read only 0 bytes, retry
[    7.892104] ubi0 error: ubi_io_read: error -5 while reading 126976 bytes from PEB 517:4096, read 0 bytes
[    7.901754] UBIFS error (ubi0:2 pid 687): ubifs_leb_read: reading 126976 bytes from LEB 1:0 failed, error -5

After disabling continuous read, this flash works fine.
So despite the datasheet stating support, I think it would be
better to disable it first to avoid bricking MT7981 devices
with MX35LFxGE4AD flash.

[1] https://github.com/torvalds/linux/blob/master/arch/arm64/boot/dts/mediatek/mt7981b.dtsi#L160
[2] https://github.com/torvalds/linux/commit/631cfdd0520d19b7f4fc13b834fd9c8b46c6dbac
[3] MediaTek-specific solution for transparently handling NAND bad blocks

Thanks,
Chukun

--
2.25.1




More information about the linux-mtd mailing list