Skip to contentSkip to conversation

Migrating from krogoth to morty (can't boot fitImage)

DISCUSSION [email protected] 2 participants 3 messages Jul 25, 2017

lore
Share & tools
lore
#0 lore raw

I'm trying to migrate my krogoth environment to morty. I have custom recipes for u-boot and kernel; the only change necessary to build under morty was to patch u-boot for gcc6  - other than that the source versions and configs used are the same.
On krogoth I can boot a fitImage kernel, but not on morty. (uImage works on both).
Looking at the image info on the morty image, it looks like the load/entry addresses are completely wrong.

On krogoth:
U-Boot > iminfo

## Checking Image at 18000000 ...
FIT image found
FIT description: U-Boot fitImage for

    Image 0 (kernel@1)
     Description:  Linux kernel
     Type:         Kernel Image
     Compression:  uncompressed
     Data Start:   0x180000e8
     Data Size:    3304552 Bytes = 3.2 MiB
     Architecture: ARM
     OS:           Linux
     Load Address: 0x10008000
     Entry Point:  0x10008000
     Hash algo:    sha1
     Hash value:   10a220564569205b11febba4b7e2809395bfee9c
    Image 1 (fdt@1)
     Description:  Flattened Device Tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x18326e44
     Data Size:    38269 Bytes = 37.4 KiB
     Architecture: ARM
     Hash algo:    sha1
     Hash value:   79d5eeb892ef059566c04d98cdc6b30e92a665a2
    Default Configuration: 'conf@1'
    Configuration 0 (conf@1)
     Description:  Boot Linux kernel with FDT blob
     Kernel:       kernel@1
     FDT:          fdt@1

## Checking hash(es) for FIT Image at 18000000 ...
Hash(es) for Image 0 (kernel@1): sha1+ Hash(es) for Image 1 (fdt@1): sha1+

On morty:
U-Boot > iminfo

## Checking Image at 18000000 ...
FIT image found
FIT description: U-Boot fitImage for

    Image 0 (kernel@1)
     Description:  Linux kernel
     Type:         Kernel Image
     Compression:  uncompressed
     Data Start:   0x180000e8
     Data Size:    3304016 Bytes = 3.2 MiB
     Architecture: ARM
     OS:           Linux
     Load Address: 0x01314c40		<- doesn't seem like these could be
correct?
     Entry Point:  0x01314c40
     Hash algo:    sha1
     Hash value:   e2de67793e93d854614a42994180b77e053c7302

Image 1 (fdt@1)
Description: Flattened Device Tree blob
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x18326c2c
Data Size: 38269 Bytes = 37.4 KiB
Architecture: ARM
Hash algo: sha1
Hash value: 79d5eeb892ef059566c04d98cdc6b30e92a665a2
Default Configuration: 'conf@1' Configuration 0 (conf@1)
Description: Linux kernel, FDT blob
Kernel: kernel@1
FDT: fdt@1
## Checking hash(es) for FIT Image at 18000000 ...
Hash(es) for Image 0 (kernel@1): sha1+ Hash(es) for Image 1 (fdt@1): sha1+

Attempting to boot causes it to hang after "Loading Kernel Image ... "

Anyone got any ideas what might be wrong, or where to look to track it down? (Any change to mkimage-type steps in morty?)

#1 lore raw

Hi Colin,

Quoted 8 lines · On Tue, Jul 25, 2017 at 12:21 PM, <[email protected]> wrote:

I'm trying to migrate my krogoth environment to morty. I have custom recipes for u-boot and kernel; the only change necessary to build under morty was to patch u-boot for gcc6 - other than that the source versions and configs used are the same.
On krogoth I can boot a fitImage kernel, but not on morty. (uImage works on both).
Looking at the image info on the morty image, it looks like the load/entry addresses are completely wrong.

Do you have those variables in your conf: UBOOT_ENTRYPOINT and UBOOT_LOADADDRESS.
For details please check: meta/classes/kernel-fitimage.bbclass

Quoted 80 lines

On krogoth:
U-Boot > iminfo

## Checking Image at 18000000 ...
FIT image found
FIT description: U-Boot fitImage for

    Image 0 (kernel@1)
     Description:  Linux kernel
     Type:         Kernel Image
     Compression:  uncompressed
     Data Start:   0x180000e8
     Data Size:    3304552 Bytes = 3.2 MiB
     Architecture: ARM
     OS:           Linux
     Load Address: 0x10008000
     Entry Point:  0x10008000
     Hash algo:    sha1
     Hash value:   10a220564569205b11febba4b7e2809395bfee9c
    Image 1 (fdt@1)
     Description:  Flattened Device Tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x18326e44
     Data Size:    38269 Bytes = 37.4 KiB
     Architecture: ARM
     Hash algo:    sha1
     Hash value:   79d5eeb892ef059566c04d98cdc6b30e92a665a2
    Default Configuration: 'conf@1'
    Configuration 0 (conf@1)
     Description:  Boot Linux kernel with FDT blob
     Kernel:       kernel@1
     FDT:          fdt@1

## Checking hash(es) for FIT Image at 18000000 ...
Hash(es) for Image 0 (kernel@1): sha1+ Hash(es) for Image 1 (fdt@1): sha1+

On morty:
U-Boot > iminfo

## Checking Image at 18000000 ...
FIT image found
FIT description: U-Boot fitImage for

    Image 0 (kernel@1)
     Description:  Linux kernel
     Type:         Kernel Image
     Compression:  uncompressed
     Data Start:   0x180000e8
     Data Size:    3304016 Bytes = 3.2 MiB
     Architecture: ARM
     OS:           Linux
     Load Address: 0x01314c40           <- doesn't seem like these could be
correct?
     Entry Point:  0x01314c40
     Hash algo:    sha1
     Hash value:   e2de67793e93d854614a42994180b77e053c7302

Image 1 (fdt@1)
Description: Flattened Device Tree blob
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x18326c2c
Data Size: 38269 Bytes = 37.4 KiB
Architecture: ARM
Hash algo: sha1
Hash value: 79d5eeb892ef059566c04d98cdc6b30e92a665a2
Default Configuration: 'conf@1' Configuration 0 (conf@1)
Description: Linux kernel, FDT blob
Kernel: kernel@1
FDT: fdt@1
## Checking hash(es) for FIT Image at 18000000 ...
Hash(es) for Image 0 (kernel@1): sha1+ Hash(es) for Image 1 (fdt@1): sha1+

Attempting to boot causes it to hang after "Loading Kernel Image ... "

Anyone got any ideas what might be wrong, or where to look to track it down? (Any change to mkimage-type steps in morty?)

Quoted 5 lines

--
_______________________________________________
yocto mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/yocto

Thanks and BR,

marek

Signature · 10 lines
as simple and primitive as possible
-------------------------------------------------
Marek Belisko - OPEN-NANDRA
Freelance Developer

Ruska Nova Ves 219 | Presov, 08005 Slovak Republic
Tel: +421 915 052 184
skype: marekwhite
twitter: #opennandra
web: http://open-nandra.com
#2 lore raw
Quoted 15 lines · On 25 July 2017 at 12:16 Belisko Marek <[email protected]> wrote:

Hi Colin,

Quoted 8 lines · On Tue, Jul 25, 2017 at 12:21 PM, <[email protected]> wrote:

I'm trying to migrate my krogoth environment to morty. I have custom recipes for u-boot and kernel; the only change necessary to build under morty was to patch u-boot for gcc6 - other than that the source versions and configs used are the same.
On krogoth I can boot a fitImage kernel, but not on morty. (uImage works on both).
Looking at the image info on the morty image, it looks like the load/entry addresses are completely wrong.

Quoted 4 lines

Do you have those variables in your conf: UBOOT_ENTRYPOINT and UBOOT_LOADADDRESS.
For details please check: meta/classes/kernel-fitimage.bbclass

Ah yes, thanks that was the problem - added UBOOT_ENTRYPOINT and it now boots.
(I have my own machine defined, which borrows from meta-freescale-3rdparty/conf/machine/include/tx6-karo-common.inc - there must be some subtle difference between that and the meta-fsl-arm-extra/conf/machine/include/tx6-karo-common.inc that I was using on krogoth)