raw/omap2: erasing issue

Yegor Yefremov yegorslists at googlemail.com
Tue Jun 28 03:48:18 PDT 2022


Since linux 5.17 I get the following issue when doing ubiformat:

# ubiformat -y /dev/mtd5
ubiformat: mtd5 (nand), size 265945088 bytes (253.6 MiB), 2029
eraseblocks of 131072 bytes (128.0 KiB), min. I/O size 2048 bytes
libscan: scanning eraseblock 1097 -- 54 % complete  eth1 timed out to bring up
libscan: scanning eraseblock 2028 -- 100 % complete
ubiformat: 2001 eraseblocks have valid erase counter, mean value is 9
ubiformat: 2 eraseblocks are supposedly empty
ubiformat: 26 bad eraseblocks found, numbers: 3, 4, 5, 6, 8, 9, 10,
11, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23, 24, 25, 26, 27, 29, 30,
31, 32
ubiformat: formatting eras[   33.644323] nand: nand_erase_nand:
attempt to erase a bad block at page 0x00000d40
ubiformat: formatting eraseblock 28[   33.658809] nand:
nand_erase_nand: attempt to erase a bad block at page 0x00000d80
ubiformat: formatting eraseblock 29 --  1 % [   33.674531] nand:
nand_erase_nand: attempt to erase a bad block at page 0x00000dc0
ubiformat: formatting eraseblock 30 --  1 % complete [   33.684508]
nand: nand_erase_nand: attempt to erase a bad block at page 0x00000e00
ubiformat: formatting eraseblock 34 --  1 % complete  libmtd: error!:
MEMERASE64 ioctl failed for eraseblock 34 (mtd5)
        error 5 (Input/output error)

ubiformat: error!: failed to erase eraseblock 34
           error 5 (Input/output error)
ubiformat: marking block 34 bad
ubiformat: formatting eraseblock 35 --  1 % complete  libmtd: error!:
MEMERASE64 ioctl failed for eraseblock 35 (mtd5)
        error 5 (Input/output error)

ubiformat: error!: failed to erase eraseblock 35
           error 5 (Input/output error)
ubiformat: marking block 35 bad
ubiformat: formatting eraseblock 36 --  1 % complete  libmtd: error!:
MEMERASE64 ioctl failed for eraseblock 36 (mtd5)
        error 5 (Input/output error)

ubiformat: error!: failed to erase eraseblock 36
           error 5 (Input/output error)
ubiformat: marking block 36 bad
ubiformat: formatting eraseblock 37 --  1 % complete  libmtd: error!:
MEMERASE64 ioctl failed for eraseblock 37 (mtd5)
        error 5 (Input/output error)

ubiformat: error!: failed to erase eraseblock 37
           error 5 (Input/output error)
ubiformat: marking block 37 bad

ubiformat: error!: consecutive bad blocks exceed limit: 4, bad flash?
# [   36.322563] vwl1271: disabling

git bisect pointed to the following commit:

a9e849efca4f9c7732ea4a81f13ec96208994b22 is the first bad commit
commit a9e849efca4f9c7732ea4a81f13ec96208994b22
Author: Roger Quadros <rogerq at kernel.org>
Date:   Thu Dec 9 11:04:55 2021 +0200

    mtd: rawnand: omap2: move to exec_op interface

    Stop using legacy interface and move to the exec_op interface.

    Signed-off-by: Roger Quadros <rogerq at kernel.org>
    Signed-off-by: Miquel Raynal <miquel.raynal at bootlin.com>
    Link: https://lore.kernel.org/linux-mtd/20211209090458.24830-4-rogerq@kernel.org

:040000 040000 2341051b8aa8e6b554b8a44d2934f76d1aa460c4
c1727080ff16c403f4ad5ed840acc90127b632f8 M      drivers

Info to my NAND flash:

[    5.695760] nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xda
[    5.702193] nand: Micron MT29F2G08ABAEAWP
[    5.706356] nand: 256 MiB, SLC, erase size: 128 KiB, page size:
2048, OOB size: 64
[    5.714204] nand: using OMAP_ECC_BCH8_CODE_HW ECC scheme
[    5.719673] 6 cmdlinepart partitions found on MTD device omap2-nand.0
[    5.726232] Creating 6 MTD partitions on "omap2-nand.0":
[    5.731594] 0x000000000000-0x000000020000 : "SPL"
[    5.737788] mtdblock: MTD device 'SPL' is NAND, please consider
using UBI block devices instead.
[    5.750113] 0x000000020000-0x000000040000 : "SPL.backup1"
[    5.756916] mtdblock: MTD device 'SPL.backup1' is NAND, please
consider using UBI block devices instead.
[    5.769870] 0x000000040000-0x000000060000 : "SPL.backup2"
[    5.776695] mtdblock: MTD device 'SPL.backup2' is NAND, please
consider using UBI block devices instead.
[    5.789559] 0x000000060000-0x000000080000 : "SPL.backup3"
[    5.796423] mtdblock: MTD device 'SPL.backup3' is NAND, please
consider using UBI block devices instead.
[    5.809341] 0x000000080000-0x000000260000 : "u-boot"
[    5.816652] mtdblock: MTD device 'u-boot' is NAND, please consider
using UBI block devices instead.
[    5.829189] 0x000000260000-0x000010000000 : "UBI"
[    5.971508] mtdblock: MTD device 'UBI' is NAND, please consider
using UBI block devices instead.


Regards,
Yegor



More information about the linux-mtd mailing list