[U-Boot] UBI issues on SAMA5D31 NOR flash

Andy Pont andy.pont at sdcsystems.com
Tue Sep 30 11:04:55 CEST 2014


Hello Heiko,

> > Using the patches from Bo Shen to support the NOR flash on the Atmel
> 
> which patches?

I can't find the references in Patchman but they were sent to the mailing
list on 18th July 2014 in a series called "ARM: atmel: sama5d3xek: enable
NOR flash support".  The patches basically just add the board features to
enable the IO pins for the NOR flash and to map it into the memory map at
0x10000000.

> > U-Boot>  ubi part rootfs
> > UBI: attaching mtd2 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 error: vtbl_check: volume table check failed: record 0, error 9
> 
> seems ubi does not find the volume table ... could you activate
> ubi error messages ubi_err() ?

Adding:

#define DEBUG
#define CONFIG_MTD_UBI_DEBUG
#define CONFIG_MTD_UBI_DEBUG_MSG
#define CONFIG_UBIFS_FS_DEBUG

Gives the following output:

U-Boot> ubi part rootfs

---mtdparts_init---
last_ids  : nor0=physmap-flash.0
env_ids   : nor0=physmap-flash.0
last_parts:
mtdparts=physmap-flash.0:128k(bootstrap)ro,768k(u-boot)ro,128k(fdt),4m(kerne
l),10m(rootfs)
env_parts :
mtdparts=physmap-flash.0:128k(bootstrap)ro,768k(u-boot)ro,128k(fdt),4m(kerne
l),10m(rootfs)

last_partition : nor0,0
env_partition  : nor0,0
--- find_dev_and_part ---
id = rootfs
--- find_dev_and_part ---
id = rootfs
Creating 1 MTD partitions on "nor0":
0x000000500000-0x000000f00000 : "mtd=4"
UBI: attaching mtd2 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 error: vtbl_check: volume table check failed: record 0, error 9
UBI error: ubi_init: cannot attach mtd2
UBI error: ubi_init: UBI error: cannot initialize UBI, error -22
UBI init error 22
Command failed, result=22

> Did the ubi partition work under linux? Did you tried current ML
> U-Boot (there MTD/UBI and UBIFS is synced with linux 3.15) ...

I haven't booted to Linux yet.  If I try to boot with the kernel that is in
the NOR flash then I get the following output from the console messages:

0.nor_flash: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID
0x000089 Chip ID 0x00899a
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Using buffer write method
Using auto-unlock on power-up/resume
cfi_cmdset_0001: Erase suspend on write enabled
UBI error: ubi_init: UBI error: cannot initialize UBI, error -19

Is there something that I need to do in order to tell U-Boot and the kernel
that the base address of the NOR flash device is 0x10000000 rather than 0x0?

Thanks,

Andy.




More information about the U-Boot mailing list