1

我有一个运行嵌入式 linux 的基于 SAM9 的板。

我有一个 JFFS2 文件系统,现在正在考虑迁移到 UBIFS。

我在我用于开发板的 buildroot 包的 make menuconfig 中启用了 UBIFS 作为目标文件系统。

我生成了 rootfs.arm.ubifs 文件,我使用引导加载程序的 nandwrite 实用程序在我的板上闪存,这与我用于 .jffs2 文件的方式相同。

我还将引导参数更改为:

setenv bootargs 'console=ttyS0,115200 rw ubi.mtd=1,2048 rootfstype=ubifs root=ubi0:rootfs'

但我收到以下启动板的错误:

Creating 2 MTD partitions on "atmel_nand":                                                                                                       
0x000000000000-0x000000400000 : "Kernel"                                                                                                         
0x000000400000-0x000010000000 : "Data"                                                                                                           
UBI: attaching mtd1 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 warning: ubi_scan: 276 PEBs are corrupted                                                                                                    
corrupted PEBs are: 0 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 517
UBI error: ubi_read_volume_table: the layout volume was not found                                                                                
UBI error: ubi_init: cannot attach mtd1                                                                                                          
UBI error: ubi_init: UBI error: cannot initialize UBI, error -22        
4

1 回答 1

3

这是一个猜测,但是您是否在将 rootfs 闪存到原始 NAND 之前对其进行了ubinize ?

来自http://www.linux-mtd.infradead.org/doc/ubifs.html#L_usptools

The images produced by mkfs.ubifs may be written to UBI volumes using 
ubiupdatevol or may be further fed to the ubinize tool to create an UBI 
image which may be put to the raw flash.
于 2012-04-04T15:54:35.143 回答