[U-Boot] Regression with ubifs initialization

Andrew Ruder andrew.ruder at elecsyscorp.com
Mon Oct 27 15:02:42 CET 2014


Hey all,

It appears that 2014.10 has some issues with UBIFS initialization
(details at bottom).  git-bisect results in one of the following commits
being broken.  Surely it is the mtd one, but its parent commit
(compat.h) does not compile.

[ff94bc40af3] mtd, ubi, ubifs: resync with Linux-3.14
[0c06db59836] lib, linux: move linux specific defines to linux/compat.h

A little background for the errors below.  My MTD table:

device nor0 <0.flash>, # parts = 5
#: name                size            offset          mask_flags
0: uboot               0x00080000      0x00000000      0
1: env                 0x00020000      0x00080000      0
2: env_redund          0x00020000      0x000a0000      0
3: env_factory         0x00020000      0x000c0000      0
4: data                0x00400000      0x000e0000      0

=========================================================
Older (2014.07) U-Boot, I can do something like this:

$ erase nor0,4
Erase Flash Partition nor0,4, bank 0, 0x000e0000 - 0x004dffff 
................................ done
Erased 32 sectors
$ ubi part data
UBI: attaching mtd1 to ubi0
UBI: physical eraseblock size:   131072 bytes (128 KiB)
UBI: logical eraseblock size:    130944 bytes
UBI: smallest flash I/O unit:    1
UBI: VID header offset:          64 (aligned 64)
UBI: data offset:                128
UBI: empty MTD device detected
UBI: create volume table (copy #1)
UBI: create volume table (copy #2)
UBI: attached mtd1 to ubi0
UBI: MTD device name:            "mtd=4"
UBI: MTD device size:            4 MiB
UBI: number of good PEBs:        32
UBI: number of bad PEBs:         0
UBI: max. allowed volumes:       128
UBI: wear-leveling threshold:    4096
UBI: number of internal volumes: 1
UBI: number of user volumes:     0
UBI: available PEBs:             28
UBI: total number of reserved PEBs: 4
UBI: number of PEBs reserved for bad PEB handling: 0
UBI: max/mean erase counter: 1/0
$

=========================================================
Newer (2014.10) U-Boot, I get the following

$ erase nor0,4
Erase Flash Partition nor0,4, bank 0, 0x000e0000 - 0x004dffff 
................................ done
Erased 32 sectors
$ ubi part data
UBI: attaching mtd1 to ubi0
$ ubi info
UBI: MTD device name:            "(a"
UBI: MTD device size:            18446742253448744536 MiB
UBI: physical eraseblock size:   -443412400 bytes (-433020 KiB)
UBI: logical eraseblock size:    -442945536 bytes
UBI: number of good PEBs:        -494718944
UBI: number of bad PEBs:         -444399596
UBI: smallest flash I/O unit:    -452780024
UBI: VID header offset:          -444391424 (aligned -390234000)
UBI: data offset:                -443207680
UBI: max. allowed volumes:       -509550577
UBI: wear-leveling threshold:    4096
UBI: number of internal volumes: 1
UBI: number of user volumes:     479
UBI: available PEBs:             -443686912
UBI: total number of reserved PEBs: -450899448
UBI: number of PEBs reserved for bad PEB handling: -514859008
UBI: max/mean erase counter: -450944464/-393084916

- Andy



More information about the U-Boot mailing list