1

組み込みLinuxを実行しているSAM9ベースのボードがあります。

私はJFFS2ファイルシステムを持っていて、今はUBIFSに移行することを考えています。

ボードに使用しているbuildrootパッケージのmakemenuconfigで、ターゲットファイルシステムとしてUBIFSを有効にしました。

.jffs2ファイルに使用していたのと同じ方法で、ブートローダーのnandwriteユーティリティを使用して、ボード上でフラッシュしたrootfs.arm.ubifsファイルを生成しました。

また、bootargsを次のように変更しました:

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

これは推測ですが、生の NAND にフラッシュする前に rootfs を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 に答える