Merging up to OpenBMC v2.2 from v2.1 - boot problem, invalid ramdisk format

Andrew Jeffery andrew at aj.id.au
Wed Jun 27 11:10:00 AEST 2018


On Wed, 27 Jun 2018, at 01:49, Patrick Venture wrote:
> I assume this is just a recipe change such that I need to now specify
> something -- with OpenBMC v2.1 I see:
> 
> """
> U-Boot 2016.07 (May 24 2018 - 12:55:55 -0700)
> 
> DRAM:  120 MiB
> WARNING: Caches not enabled
> Flash: 64 MiB
> *** Warning - bad CRC, using default environment
> 
> In:    serial
> Out:   serial
> Err:   serial
> Net:   aspeednic#0
> Error: aspeednic#0 address not set.
> 
> Hit any key to stop autoboot:  0
> ## Loading kernel from FIT Image at 20080000 ...
>    Using 'conf at 1' configuration
>    Trying 'kernel at 1' kernel subimage
>      Description:  Linux kernel
>      Type:         Kernel Image
>      Compression:  uncompressed
>      Data Start:   0x20080128
>      Data Size:    1721352 Bytes = 1.6 MiB
>      Architecture: ARM
>      OS:           Linux
>      Load Address: 0x40008000
>      Entry Point:  0x40008000
>      Hash algo:    sha1
>      Hash value:   de140d9d803c22f731c4d99a4250979489383a81
>    Verifying Hash Integrity ... sha1+ OK
> ## Loading ramdisk from FIT Image at 20080000 ...
>    Using 'conf at 1' configuration
>    Trying 'ramdisk at 1' ramdisk subimage
>      Description:  obmc-phosphor-initramfs
>      Type:         RAMDisk Image
>      Compression:  lzma compressed
>      Data Start:   0x2022ad00
>      Data Size:    1592362 Bytes = 1.5 MiB
>      Architecture: ARM
>      OS:           Linux
>      Load Address: unavailable
>      Entry Point:  unavailable
>      Hash algo:    sha1
>      Hash value:   9f6f2feb110e27e07f81bb60bb372b4083672f19
>    Verifying Hash Integrity ... sha1+ OK
> ## Loading fdt from FIT Image at 20080000 ...
>    Using 'conf at 1' configuration
>    Trying 'fdt at 1' fdt subimage
>      Description:  Flattened Device Tree blob
>      Type:         Flat Device Tree
>      Compression:  uncompressed
>      Data Start:   0x20224624
>      Data Size:    26139 Bytes = 25.5 KiB
>      Architecture: ARM
>      Hash algo:    sha1
>      Hash value:   37864a4c4a608d5f4e370bbccf93ccbe3e77462d
>    Verifying Hash Integrity ... sha1+ OK
>    Booting using the fdt blob at 0x20224624
>    Loading Kernel Image ... OK
>    Loading Ramdisk to 47213000, end 47397c2a ... OK
>    Loading Device Tree to 47209000, end 4721261a ... OK
> 
> Starting kernel ...
> """
> 
> With v2.2 I see:
> """
> U-Boot 2016.07 (Jun 25 2018 - 10:07:57 -0700)
> 
> DRAM:  120 MiB
> WARNING: Caches not enabled
> Flash: 64 MiB
> *** Warning - bad CRC, using default environment
> 
> In:    serial
> Out:   serial
> Err:   serial
> Net:   aspeednic#0
> Error: aspeednic#0 address not set.
> 
> Hit any key to stop autoboot:  0
> libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND

>From below it looks like u-boot finds the kernel in the FIT, but your ramdisk is "corrupt". The error above suggests something is missing from the FIT. Can you check the initrd/ramdisk node in your FIT to make sure it is present and uses all the correct options and paths with respect to the initrd you intended to package?

Might also be helpful to provide the content of the .its file.

> ## Loading kernel from FIT Image at 20080000 ...
>    Using 'conf at aspeed-bmc-quanta-q71l.dtb' configuration
>    Trying 'kernel at 1' kernel subimage
>      Description:  Linux kernel
>      Type:         Kernel Image
>      Compression:  uncompressed
>      Data Start:   0x20080124
>      Data Size:    1723192 Bytes = 1.6 MiB
>      Architecture: ARM
>      OS:           Linux
>      Load Address: 0x40008000
>      Entry Point:  0x40008000
>      Hash algo:    sha1
>      Hash value:   95ed76c9361d9f6f991a6a859a06eb7626af80df
>    Verifying Hash Integrity ... sha1+ OK
> Wrong Ramdisk Image Format
> Ramdisk image is corrupt or invalid
> """
> 
> I figured I'd reach out first as I'm sure this will be familiar to someone :D
> 
> Patrick


More information about the openbmc mailing list