This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DVRRDK3.5更新内核版本后,ubi 文件系统报错

我用的开发包是DVRRDK3.5.  板子是公司自己做的,芯片采用的是DM8168.。但是产品总是出现 ubifs  error等错误,必须重新烧文件系统才能解决,后来改成只读文件系统,这个错误出现的频率变少了,但是仍然会出现。我在TI论坛上找到了类似的错误,连接如下:

e2e.ti.com/.../1023621

内核下载地址  arago-project.org/.../

里面给出的解决方法是更新内核。

我从git上下载了源码,编译好烧写到板子上,奇怪的是,首次是可以正常启动的。重启后系统可以正常启动,但是会在启动阶段爆出错误信息:

ata1: SATA max UDMA/133 irq_stat 0x00400040, connection status changed irq 16
ata2: SATA max UDMA/133 mmio [mem 0x4a140000-0x4a150fff] port 0x180 irq 16
omap2-nand driver initializing
ONFI param page 0 valid
ONFI flash detected
NAND device: Manufacturer ID: 0x2c, Chip ID: 0xca (Micron NAND 256MiB 3,3V 16-bit)
omap2-nand: detected x16 NAND flash 
Creating 6 MTD partitions on "omap2-nand.0":
0x000000000000-0x000000260000 : "U-Boot"
0x000000260000-0x000000280000 : "U-Boot Env"
0x000000280000-0x000000580000 : "U-Boot Logo"
0x000000580000-0x0000009c0000 : "Kernel"
0x0000009c0000-0x00000d1e0000 : "File System"
0x00000d1e0000-0x000010000000 : "Reserved"
UBI: attaching mtd4 to ubi0
UBI: physical eraseblock size:   131072 bytes (128 KiB)
UBI: logical eraseblock size:    126976 bytes
UBI: smallest flash I/O unit:    2048
UBI: sub-page size:              512
UBI: VID header offset:          2048 (aligned 2048)
UBI: data offset:                4096
UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 1:0, read 64 bytes
UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 2:0, read 64 bytes
UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 4:0, read 64 bytes
UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 5:0, read 64 bytes
UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 6:0, read 64 bytes
UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 7:0, read 64 bytes
UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 10:0, read 64 bytes
UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 17:0, read 64 bytes
UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 22:0, read 64 bytes
UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 24:0, read 64 bytes
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 994:0, read 64 bytes
UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 1126:0, read 64 bytes
UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 1600:0, read 64 bytes
UBI: max. sequence number:       318
UBI warning: print_rsvd_warning: cannot reserve enough PEBs for bad PEB handling, reserved 11, need 16
UBI: attached mtd4 to ubi0
UBI: MTD device name:            "File System"
UBI: MTD device size:            200 MiB
UBI: number of good PEBs:        1601
UBI: number of bad PEBs:         0
UBI: number of corrupted PEBs:   0
UBI: max. allowed volumes:       128
UBI: wear-leveling threshold:    4096
UBI: number of internal volumes: 1
UBI: number of user volumes:     1
UBI: available PEBs:             0
UBI: total number of reserved PEBs: 1601
UBI: number of PEBs reserved for bad PEB handling: 11
UBI: max/mean erase counter: 8/0
UBI: image sequence number:  1742113300
UBI: background thread "ubi_bgt0d" started, PID 44
UBI: scrubbed PEB 117 (LEB 0:1019), data moved to PEB 1600

我在论坛里也找到了类似的问题,但是没有找到解决办法。请各位朋友看下,是否是内核配置时缺少了什么东西? 或者nand驱动有问题。

注明下:如果换成上一版的内核,就不会出现这样的情况。