[U-Boot] Boot Linux kernel with initramfs fails

Axel Lin axel.lin at ingics.com
Thu Jul 18 08:15:57 CEST 2013


Hi,
When I boot Linux kernel with FIT Image, the kernel does not unpacking initramfs.
( The root cause is "initrd_start is NULL".)

The initramfs is built-in with kernel, so I don't specify ramdisk in my
kernel.its file.

Is this a known issue or do I need special setting to boot a Linux kernel
with initramfs?

BTW, bootm shows below messages:

=> bootm
## Loading kernel from FIT Image at 00400000 ...
   Using 'conf at 1' configuration
   Trying 'kernel at 1' kernel subimage
     Description:  kernel
     Type:         Kernel Image
     Compression:  uncompressed
     Data Start:   0x004000e8
     Data Size:    2496848 Bytes = 2.4 MiB
     Architecture: ARM
     OS:           Linux
     Load Address: 0x00000000
     Entry Point:  0x00000000
   Verifying Hash Integrity ... OK
## Loading fdt from FIT Image at 00400000 ...
   Using 'conf at 1' configuration
   Trying 'fdt at 1' fdt subimage
     Description:  gpl327xx.dtb
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x00661ae8
     Data Size:    2174 Bytes = 2.1 KiB
     Architecture: ARM
     Hash algo:    sha1
     Hash value:   674b5443523a23ad8de49b161932fd3a1d7f90ea
   Verifying Hash Integrity ... sha1+ OK
   Booting using the fdt blob at 0x661ae8
   Loading Kernel Image ... OK
## initrd_high = 0xffffffff, copy_to_ram = 1
   ramdisk load start = 0x00000000, ramdisk load end = 0x00000000
   Loading Device Tree to 019b4000, end 019b787d ... OK


Below is part of my boot messages:

NET: Registered protocol family 1
BEGIN::: populate_rootfs...
^^^ My debug message, so I know populate_rootfs() is executed.
populate_rootfs... initrd_start is NULL
^^^ My debug message, I got "initrd_start is NULL". That is why the initramfs is not unpack.
ROMFS MTD (C) 2007 Red Hat, Inc.
io scheduler noop registered (default)
TCP: cubic registered
NET: Registered protocol family 10
sit: IPv6 over IPv4 tunneling driver
Warning: unable to open an initial console.
VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
Please append a correct "root=" boot option; here are the available partitions:
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
CPU: 0 PID: 1 Comm: swapper Not tainted 3.11.0-rc1-00018-g16fc5bc-dirty #131
[<0000bda8>] (unwind_backtrace+0x0/0xf0) from [<0000ac0c>] (show_stack+0x10/0x14)
[<0000ac0c>] (show_stack+0x10/0x14) from [<001fcff8>] (panic+0x7c/0x1c4)
[<001fcff8>] (panic+0x7c/0x1c4) from [<0026ddb4>] (mount_block_root+0x1f4/0x2b4)
[<0026ddb4>] (mount_block_root+0x1f4/0x2b4) from [<0026e000>] (prepare_namespace+0x128/0x18c)
[<0026e000>] (prepare_namespace+0x128/0x18c) from [<0026da74>] (kernel_init_freeable+0x164/0x1a8)
[<0026da74>] (kernel_init_freeable+0x164/0x1a8) from [<001fb808>] (kernel_init+0x8/0xe4)
[<001fb808>] (kernel_init+0x8/0xe4) from [<00008f70>] (ret_from_fork+0x14/0x24)

(Test on latest u-boot git tree.)

Regards,
Axel



More information about the U-Boot mailing list