Migrating from krogoth to morty (can't boot fitImage)
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?)
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 forImage 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 forImage 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: e2de67793e93d854614a42994180b77e053c7302Image 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
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_ENTRYPOINTandUBOOT_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)