ubi0 warning: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 0:0, read only 64 bytes, retry

Hi everyone. I have a boot problem on the imx28 board, the problem repeats with kernels 4.14.67 and 5.10.50, so I decided to ask on the u-boot mailing list as I think the problem is not kernel related, but related to u-boot variables. i have the following u-boot variables in boot.scr:
setenv mtdparts "mtdparts="gpmi-nand:3m(bootloader)ro,512k(environment),512k(redundant-environment),8m(kernel),512k(fdt),8m(ramdisk),120m(filesystem),-(data)""; setenv nandargs "setenv bootargs console=${console_mainline},${baudrate} rootfstype=ubifs ubi.mtd=6 root=ubi0_0 ${mtdparts}"; setenv mmcroot "/dev/mmcblk0p3"; setenv nandboot "mtdparts default; run nandargs; nand read ${loadaddr} kernel 0x00600000; if test ${boot_fdt} = yes; then nand read ${fdt_addr} fdt 0x00080000; bootz ${loadaddr} - ${fdt_addr}; else if test ${boot_fdt} = no; then bootz; else echo "ERROR: Set boot_fdt to yes or no."; fi; fi"; setenv nandinstall "nand device 0; nand erase.part environment; nand erase.part redundant-environment; run update_nand_firmware_full; run update_nand_fdt; run update_nand_kernel; run update_nand_filesystem; setenv -f bootcmd run nandboot; saveenv"; run nandinstall; run nandboot
i have the following message from kernel:
[ 0.844421] nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xda [ 0.850905] nand: Micron MT29F2G08ABAGAWP [ 0.855105] nand: 256 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 128 [ 0.864171] Scanning device for bad blocks [ 0.869121] Bad eraseblock 1 at 0x000000020000 [ 0.874013] Bad eraseblock 2 at 0x000000040000 [ 0.878902] Bad eraseblock 3 at 0x000000060000 [ 1.467707] 8 cmdlinepart partitions found on MTD device gpmi-nand [ 1.474039] Creating 8 MTD partitions on "gpmi-nand": [ 1.479226] 0x000000000000-0x000000300000 : "bootloader" [ 1.487702] 0x000000300000-0x000000380000 : "environment" [ 1.496007] 0x000000380000-0x000000400000 : "redundant-environment" [ 1.505268] 0x000000400000-0x000000c00000 : "kernel" [ 1.513550] 0x000000c00000-0x000000c80000 : "fdt" [ 1.521245] 0x000000c80000-0x000001480000 : "ramdisk" [ 1.529673] 0x000001480000-0x000008c80000 : "filesystem" [ 1.544252] 0x000008c80000-0x000010000000 : "data" [ 1.558113] gpmi-nand 8000c000.gpmi-nand: driver registered.
On the basis of which, I conclude that the parameters are passed to the kernel correctly.
Bad blocks are not a problem, they are declared by the manufacturer.
and i have the following error from kernel:
[ 2.059793] ubi0: attaching mtd6 [ 2.102255] ubi0 error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 0:0, read 64 bytes [ 2.112325] CPU: 0 PID: 1 Comm: swapper Not tainted 5.10.50 #1 [ 2.118272] Hardware name: Freescale MXS (Device Tree) [ 2.123582] [<c0010084>] (unwind_backtrace) from [<c000dea4>] (show_stack+0x10/0x14) [ 2.131485] [<c000dea4>] (show_stack) from [<c03ce4fc>] (ubi_io_read+0x110/0x2f0) [ 2.139122] [<c03ce4fc>] (ubi_io_read) from [<c03ce900>] (ubi_io_read_ec_hdr+0x44/0x244)
Please, tell me in which direction to look for the causes of the error, thank you very much.
participants (1)
-
Ivan Riabtsov