[U-Boot-Users] libfdt problem when loading device tree
Joakim Tjernlund
joakim.tjernlund at transmode.se
Thu Dec 13 18:07:58 CET 2007
On Thu, 2007-12-13 at 11:46 -0500, Jerry Van Baren wrote:
> Joakim Tjernlund wrote:
> > I get this when I try to boot my board:
> > ## Booting image at 00200000 ...
> > Image Name: oskernel02a:p1a:99
> > Created: 2007-12-13 9:59:43 UTC
> > Image Type: PowerPC Linux Kernel Image (gzip compressed)
> > Data Size: 1238992 Bytes = 1.2 MB
> > Load Address: 00000000
> > Entry Point: 00000000
> > Verifying Checksum ... OK
> > Uncompressing Kernel Image ... OK
> > Loading Device Tree to 007fe000, end 007ff6f9 ... OK
> > WARNING: could not create /bd_t FDT_ERR_NOSPACE.
> > fdt_bd_t: FDT_ERR_NOSPACE
> > ERROR: /bd_t node create failed - must RESET the board to recover.
> > Resetting the board.
> >
> > I have tried different combinations of -S and -R options to dtc,
> > but nothing helps:
> > dtc -S 2000 -R 2000 -f of-tmcu.dts -O asm > of-tmcu.S
>
> -S 2000 may be too small, I found I needed -S 3000. If you run dtc
> without the -S option and add in a verbose/info option(?), dtc will tell
> you how big your blob is without any padding. Obviously, you need to
> pad it.
yes, that was it. Increasing to -S 0x4000 makes it work. I was noted
this when producing a dtb, I got a warning. The asm version does
not warn when the *.S is too small.
Jocke
More information about the U-Boot
mailing list