[U-Boot] Uboot Hangs when Initrd size increses

josh phelps thosewholiketorule at yahoo.com
Mon Apr 30 00:43:55 UTC 2018


Hello All,
Im booting Linux on arm64 using FIT multi image (image + initrd + DTB). So if I increase the initrd size (from 16 MB -> 20MB) board hangs at "starting kernel"). However if I change the load address of bootm (from 0x2000000 to 0x1000000) it boots successfully.  Any pointers on why this is booting at lower load address? thanks in advance.
Board config : 2 GB ram (0x00000000 - 0x8000000)Init high enabled (so initrd is relocated to high mem)FDT_high=0xffffffffffffffff so DTB is used in place. FDT load adress is (0x9000000)
Following is the console o/p:

## Current stack ends at 0x7f6cc6c0 *  kernel: cmdline image address = 0x02000000

## Loading kernel from FIT Image at 02000000 ...

   Using 'config at 1' configuration

   Verifying Hash Integrity ... OK

   Trying 'kernel at 0' kernel subimage

     Description:  linux-mvl-4.4

     Type:         Kernel Image

     Compression:  uncompressed

     Data Start:   0x020000bc

     Data Size:    12473856 Bytes = 11.9 MiB

     Architecture: AArch64

     OS:           Linux

     Load Address: 0x00080000

     Entry Point:  0x00080000

   Verifying Hash Integrity ... OK

   kernel data at 0x020000bc, len = 0x00be5600 (12473856)

*  ramdisk: using config 'config at 1' from image at 0x02000000

## Loading ramdisk from FIT Image at 02000000 ...

   Using 'config at 1' configuration

   Trying 'ramdisk at 0' ramdisk subimage

     Description:  initramfs

     Type:         RAMDisk Image

     Compression:  lzma compressed

     Data Start:   0x02be5764

     Data Size:    22356891 Bytes = 21.3 MiB

     Architecture: AArch64

     OS:           Linux

Can't get 'load' property from FIT 0x02000000, node: offset 12474104, name ramdisk at 0 (FDT_ERR_NOTFOUND)

     Load Address: unavailable

Can't get 'entry' property from FIT 0x02000000, node: offset 12474104, name ramdisk at 0 (FDT_ERR_NOTFOUND)

     Entry Point:  unavailable

   Verifying Hash Integrity ... OK

Can't get 'load' property from FIT 0x02000000, node: offset 12474104, name ramdisk at 0 (FDT_ERR_NOTFOUND)

   ramdisk start = 0x02be5764, ramdisk end = 0x04137aff

*  fdt: using config 'config at 1' from image at 0x02000000

## Checking for 'FDT'/'FDT Image' at 02000000

## Loading fdt from FIT Image at 02000000 ...

   Using 'config at 1' configuration

   Trying 'fdt at 1' fdt subimage

     Description:  P1 fdt

     Type:         Flat Device Tree

     Compression:  uncompressed

     Data Start:   0x0413eadc

     Data Size:    28899 Bytes = 28.2 KiB

     Architecture: AArch64

   Verifying Hash Integrity ... OK

   Loading fdt from 0x0413eadc to 0x09000000

   Booting using the fdt blob at 0x9000000

   of_flat_tree at 0x09000000 size 0x000070e3

   Loading Kernel Image ... OK

   kernel loaded at 0x00080000, end = 0x00c65600

## initrd_high = 0x80000000, copy_to_ram = 1

   Loading Ramdisk to 7e179000, end 7f6cb39b ... OK

   ramdisk load start = 0x7e179000, ramdisk load end = 0x7f6cb39b

using: FDT

## DT length 41187

   Using Device Tree in place at 0000000009000000, end 000000000900a0e2

mci_find_sb_node.....no Device found

DevID=100001f found on MCi bus 0

DevID=1000021 found on MCi bus 1

## Transferring control to Linux (at address 80000)...




######## Starting kernel ...



More information about the U-Boot mailing list