UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor fedoryka
Visitor
5,227 Views
Registered: ‎12-10-2009

Boot halts at "Finalizing device tree..." when initrd is added to image

Jump to solution

When I load a simpleImage.virtex405-ml405 (i.e. no initrd) the kernel loads and, as expected, fails when it tries to load the root file system, but when I add the initrd then boot, boot-up halts right after the message:

 

"Finalizing device tree... flat tree at <addr>"

 

According to

 

http://www.xilinx.com/support/documentation/application_notes/xapp1137.pdf

 

this seems to indicate that the kernel hasn't even loaded yet.  Why does adding the initrd prevent the kernel from even loading?  Any ideas?

-Damian

0 Kudos
1 Solution

Accepted Solutions
Visitor fedoryka
Visitor
6,321 Views
Registered: ‎12-10-2009

Re: Boot halts at "Finalizing device tree..." when initrd is added to image

Jump to solution
Thanks for the replies, John and Terry.  I was still having problems after looking into your suggestions, but I finally discovered that the problem seemed to be caused by the fact that I had an outdated 2.6.10 modules directory in lib/modules (I'm building a 2.6.29 kernel).  When I deleted the 2.6.10 directory the boot process continued on (to new problems, but that's another story...).  I'm not entirely sure why it caused the halt, but I'm guessing it was some kind of hardware probe or something.  I'm just surprised I didn't get a debug output pointing to version incompatibility like I did when I tried to boot without recompiling the modules to 2.6.29 (i.e I only had the outdated 2.6.10 modules in lib/modules)

View solution in original post

0 Kudos
4 Replies
Xilinx Employee
Xilinx Employee
5,223 Views
Registered: ‎09-10-2008

Re: Boot halts at "Finalizing device tree..." when initrd is added to image

Jump to solution

The initrd generally won't keep the kernrel from booting.  That message generally means there's something wrong with your device tree.  Are you sure both images are using the same device tree?

 

Maybe there's some reason I don't know that the initrd will keep it from booting.

 

Are you using the initrd image that we provide on the wiki (http://xilinx.wikidot.com)?

 

Thanks.

 

0 Kudos
Visitor fedoryka
Visitor
5,213 Views
Registered: ‎12-10-2009

Re: Boot halts at "Finalizing device tree..." when initrd is added to image

Jump to solution
I had not been using the "stock" ramdisk image from the wiki, but when I did use it, it booted successfully.  So it seems to point to the custom ramdisk.  I did notice that the stock image was much smaller than my custom image, 1.5 MB vs 12 MB.  I expect that to vary, but is 12MB excessive?
0 Kudos
Anonymous
Not applicable
5,207 Views

Re: Boot halts at "Finalizing device tree..." when initrd is added to image

Jump to solution

You'll definitely run into problems with a big ramdisk.. Basically, when it's uncompressed and copied to the base of RAM, the uncompressed image will overwrite the bootstrap code.. You can modify  arch/powerpc/boot/wrapper to get around this.

 

Find the following case statement in "wrapper":

 

case "$platform" in

...

...

 

Then go to the platform you're using - i.e.  simpleboot-virtex405-*

 

 

Then redefine "link_address" for that platform to be something larger (bigger than your uncompressed kernel + RFS):

link_address='0x800000'   

 

 

This might not be the problem , but I know I ran into it with a big RFS on the 440.. I would expect you to get some debug output related to it though... Seems like you're making it further than I did when things were crashing because of the big ramdisk.

 

 

Terry

 

 

 

Message Edited by toneal on 12-10-2009 03:12 PM
Visitor fedoryka
Visitor
6,322 Views
Registered: ‎12-10-2009

Re: Boot halts at "Finalizing device tree..." when initrd is added to image

Jump to solution
Thanks for the replies, John and Terry.  I was still having problems after looking into your suggestions, but I finally discovered that the problem seemed to be caused by the fact that I had an outdated 2.6.10 modules directory in lib/modules (I'm building a 2.6.29 kernel).  When I deleted the 2.6.10 directory the boot process continued on (to new problems, but that's another story...).  I'm not entirely sure why it caused the halt, but I'm guessing it was some kind of hardware probe or something.  I'm just surprised I didn't get a debug output pointing to version incompatibility like I did when I tried to boot without recompiling the modules to 2.6.29 (i.e I only had the outdated 2.6.10 modules in lib/modules)

View solution in original post

0 Kudos