Skip to contentSkip to conversation

boot Hangs when Initrd size increases in FIT image

U-Boot gnix 1 participant 1 message Apr 30, 2018

lore
Share & tools
lore

gnix

author
#0 lore raw

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 ...

--
Sent from: http://u-boot.10912.n7.nabble.com/