Chinaunix

标题: 有哪位大牛用过ubifs么,我的怎么都不成功? [打印本页]

作者: armips    时间: 2011-06-16 15:42
标题: 有哪位大牛用过ubifs么,我的怎么都不成功?
成功编译了mtd-utils-266061e

Flash芯片:K9F1G08U0B          128MiB

分区信息:
[root@localhost /usr/mtd]# ./mtdinfo  -a
Count of MTD devices:           2
Present MTD devices:            mtd0, mtd1
Sysfs interface supported:      yes

mtd0
Name:                           Partition 1
Type:                           nand
Eraseblock size:                131072 bytes, 128.0 KiB
Amount of eraseblocks:          32 (4194304 bytes, 4.0 MiB)
Minimum input/output unit size: 2048 bytes
Sub-page size:                  2048 bytes
OOB size:                       64 bytes
Character device major/minor:   90:0
Bad blocks are allowed:         true
Device is writable:             true

mtd1
Name:                           Partition 2
Type:                           nand
Eraseblock size:                131072 bytes, 128.0 KiB
Amount of eraseblocks:          992 (130023424 bytes, 124.0 MiB)
Minimum input/output unit size: 2048 bytes
Sub-page size:                  2048 bytes
OOB size:                       64 bytes
Character device major/minor:   90:2
Bad blocks are allowed:         true
Device is writable:             true

[root@localhost /usr/mtd]#

在第二分区上格式化就有问题了:
[root@localhost /usr/mtd]# ./ubiformat /dev/mtd1 -s 2048
ubiformat: mtd1 (nand), size 130023424 bytes (124.0 MiB), 992 eraseblocks of 131072 bytes (128.0 KiB), min. I/O size 2048 bytes
libscan: scanning eraseblock 991 -- 100 % complete
ubiformat: 19 bad eraseblocks found, numbers: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 404, 420, 937
ubiformat: warning!: 973 of 973 eraseblocks contain non-ubifs data
ubiformat: continue? (yes/no)  y
ubiformat: warning!: only 0 of 973 eraseblocks have valid erase counter
ubiformat: erase counter 0 will be used for all eraseblocks
ubiformat: note, arbitrary erase counter value may be specified using -e option
ubiformat: continue? (yes/no)  y
ubiformat: use erase counter 0 for all eraseblocks
ubiformat: formatting eraseblock 18 --  1 % complete  libmtd: error!: cannot write 2048 bytes to mtd1 (eraseblock 18, offset 0)
        error 5 (Input/output error)

ubiformat: error!: cannot write EC header (2048 bytes buffer) to eraseblock 18
           error 5 (Input/output error)
libmtd: run torture test for PEB 18
libmtd: error!: erased PEB 18, but a non-0xFF byte found
ubiformat: mark it as bad? Continue (yes/no) y
ubiformat: marking block 18 bad
ubiformat: formatting eraseblock 19 --  2 % complete  libmtd: error!: cannot write 2048 bytes to mtd1 (eraseblock 19, offset 0)
        error 5 (Input/output error)

ubiformat: error!: cannot write EC header (2048 bytes buffer) to eraseblock 19
           error 5 (Input/output error)
libmtd: run torture test for PEB 19
libmtd: error!: erased PEB 19, but a non-0xFF byte found
ubiformat: mark it as bad? Continue (yes/no) y
ubiformat: marking block 19 bad
ubiformat: formatting eraseblock 20 --  2 % complete  libmtd: error!: cannot write 2048 bytes to mtd1 (eraseblock 20, offset 0)
        error 5 (Input/output error)

ubiformat: error!: cannot write EC header (2048 bytes buffer) to eraseblock 20
           error 5 (Input/output error)
libmtd: run torture test for PEB 20
libmtd: error!: erased PEB 20, but a non-0xFF byte found
ubiformat: mark it as bad? Continue (yes/no) y
ubiformat: marking block 20 bad
ubiformat: formatting eraseblock 21 --  2 % complete  libmtd: error!: cannot write 2048 bytes to mtd1 (eraseblock 21, offset 0)
        error 5 (Input/output error)

ubiformat: error!: cannot write EC header (2048 bytes buffer) to eraseblock 21
           error 5 (Input/output error)
libmtd: run torture test for PEB 21
libmtd: error!: erased PEB 21, but a non-0xFF byte found
ubiformat: mark it as bad? Continue (yes/no) y
ubiformat: marking block 21 bad

ubiformat: error!: consecutive bad blocks exceed limit: 4, bad flash?
[root@localhost /usr/mtd]#

挂载也有问题:
[root@localhost /usr/mtd]# ./ubiattach -p /dev/mtd1
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: VID header offset:          2048 (aligned 204
UBI: data offset:                4096
UBI: max. sequence number:       0
UBI error: ubi_read_volume_table: the layout volume was not found
UBI error: ubi_attach_mtd_dev: failed to attach by scanning, error -22
ubiattach: error!: cannot attach "/dev/mtd1"
           error 22 (Invalid argument)
[root@localhost /usr/mtd]#

哪位弄过给指点一二?谢谢!
作者: armips    时间: 2011-06-16 15:45
Flash芯片是新的,用uboot格式化的时候没有坏块的,前面烧写的uboot和 uImage都是好用的

用ubiformat后就越用坏块越多,好像被他误标了。
作者: amaverick    时间: 2012-08-03 11:08
UBI device number 7, total 1024 LEBs (130023424 bytes, 124.0 MiB), available 0 L
EBs (0 bytes), LEB size 126976 bytes (124.0 KiB)                                
UBI error: ubi_read_volume_table: the layout volume was not found               
ubiattach: error!: cannot attach "/dev/mtd1"                                    
           error 22 (Invalid argument)

这个我也遇到,什么原因?




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2