Booting ML405 (Kernel panic - not syncing: No init found)
John.Linn at xilinx.com
Fri Jul 11 00:21:44 EST 2008
With regards to arch/ppc:
I just built and tested it from the Xilinx Git tree (with ELDK 4.1) and
don't see the problem you see. You shouldn't need anything on the
command line for the init, but I tried it matching yours without any
I noticed that you are using a UART Lite and I test with 16550. We have
a reference design available for the 405 also to help you get a baseline
before you make changes, you can see where to get it at
http://git.xilinx.com <http://git.xilinx.com/> also. Getting a good
solid baseline before you make changes can make life easier, and maybe
you already did this and I don't realize it ;).
I can't tell how your kernel is configured, so I would use the Xilinx
provided default kernel configuration, then make changes from there
(like from 8250 UART and console to UART Lite).
>make ARCH=ppc ml405_defconfig
>make ARCH=ppc zImage.initrd
Since you pulled from the Xilinx Git tree, you should be able to get the
ML405 running easily (assuming I have done my job right).
You should be able to use arch/powerpc and it would be best to do that
as arch/ppc is not well supported now. If you use the Xilinx default
kernel configuration you shouldn't need to do anything (such as finding
405 in the menuconfig) if you use our reference design for the board
I just tested from the Xilinx Git tree on the ML405 with arch/powerpc
and it looked good (using ELDK 4.1 tools). The following commands
should build a kernel that runs on it. You might want to update if you
haven't pulled from the Xilinx Git tree in a while (git pull, or clone
the tree again in a new directory).
>make ARCH=powerpc mrproper
>make ARCH=powerpc ml405_defconfig
>make ARCH=powerpc zImage.initrd
With regards to the fact that you're restricting the memory to 32 Meg,
you might get try not doing this to get the kernel running properly,
then make that change.
Hope that helps,
From: neeraj garg [mailto:neerajg at cdac.in]
Sent: Thursday, July 10, 2008 1:25 AM
To: grant.likely at secretlab.ca; John Linn; marco.stornelli at coritel.it
Cc: linuxppc-embedded at ozlabs.org
Subject: Re: Booting ML405 (Kernel panic - not syncing: No init found)
Yes I am using ARCH=ppc (actual line is $make ARCH=ppc
CROSS_COMPILE=powerpc-405-linux-gnu- zImage.initrd ) for this I have
placed ramdisk.image.gz in arch/ppc/boot/images. In case of ARCH=powerpc
I cannot find processor type 405 , in make menuconfig. Thats why i am
And when I give kernel command string as init=/bin/sh , it says :
>Failed to execute /bin/sh. Attempting defaults...
[ 3.744035] Kernel panic - not syncing: No init found. Try passing
init= option to kernel.
[ 3.768073] Rebooting in 30 seconds..
--init is present in sbin/init which is a soft link to ../bin/busybox
--I used powepc-405-gnu-readelf -h bin/sh to verify that it is compiled
for powerpc itself.
Any other suggestions ?
Grant Likely wrote:
On Wed, Jul 09, 2008 at 10:24:13AM +0530, neeraj garg wrote:
I am trying to boot ML405 with Linux source code downloaded from
http://www.git.xilinx.com . My cross compiler tool chain version
gcc-3.4.1, glibc-2.3.2 and binutils-2.15. I have also downloaded
from same url (http://www.git.xilinx.com). When I download
zImage.initrd.elf using XMD everything goes fine, untill RAMDISK
uncompressed, I get following messages :
[ 3.736691] Failed
execute /sbin/init. Attempting defaults...
[ 3.748073] Kernel panic - not syncing: No init found. Try
init= option to kernel.
[ 3.772040] Rebooting in 180 seconds..[ 183.487314]
Try changing the kernel parameters line to specify init=/bin/sh and see
This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Linuxppc-embedded