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

Patrick Venture venture at google.com
Thu Jun 28 01:39:55 AEST 2018


On Wed, Jun 27, 2018 at 7:38 AM, Patrick Venture <venture at google.com> wrote:
> On Tue, Jun 26, 2018 at 6:10 PM, Andrew Jeffery <andrew at aj.id.au> wrote:
>> 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?
>
> I'll take a look -- one thought I had last night is that now the
> kernel config bit above is using the dts -- and IIRC, there have been
> changes to the flash layout.  So, maybe my device tree being used here
> is out-of-date or doesn't match what it's expecting now.  I'm still on
> the 4.7.10 kernel as I haven't had a chance to get the host booted
> with 4.13 (although that's high on my todo list).

My layout idea didn't pan out -- I'm going to try 4.13 kernel with
v2.2 openbmc -- I had tried 4.13 with v2.0 and it worked (other than
the host wouldn't boot).  So, I'm going to give that a quick try so
I"m at least failing on something up-to-date.

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