Hi Christopher,
On Wed, Nov 20, 2013 at 10:49 AM, Christopher Preschern < christopher.presch...@tugraz.at> wrote: > Hi, > > I try to boot a signed RTOS as FIT Image with the bootm command and I'm > kind of stuck here - any help well appreciated. When booting, U-Boot shows > the following error message: > “No Linux ARM Kernel Image Image > ERROR: can't get kernel image!” > > My questions: > - Is it possible to boot a signed RTOS with U-Boot? > - Is there something I do wrong (I'm rather new to U-Boot)? > > > I use the following setup: > - U-Boot 2013.07 > - i.MX28 board > - safeRTOS which I can boot with the bootelf command > > The following mkimage command (which does not yet create a signature) > works and produces a with bootm bootable "u-rtos" file: > mkimage -A arm -C none -O qnx -T kernel_noload -d safeRTOS u-rtos > > I tried to re-build the above parameters in my .its File (which I need to > use the signing features of mkimage): > > /dts-v1/; > / { > description = "MY-RTOS"; > #address-cells = <1>; > images { > kernel@1 { > description = "MY-RTOS"; > data = /incbin/("./my-rtos-image"); > type = "kernel_noload"; > arch = "arm"; > os = "qnx"; > compression = "none"; > signature@1 { > algo = "sha1,rsa2048"; > key-name-hint = "dev"; > }; > }; > }; > configurations { > default = "conf@1"; > conf@1 { > kernel = "kernel@1"; > hash@1 { > algo = "sha1"; > }; > }; > }; > }; > > I run the following command to get my FIT-file: > mkimage -f rtos.its -k <path-to-my-keys> rtos.fit > > When booting the FIT file with bootm, I get the following output: > > => bootm 0x42000000 > ## Loading kernel from FIT Image at 42000000 ... > Using 'conf@1' configuration > Verifying Hash Integrity ... OK > Trying 'kernel@1' kernel subimage > Description: safeRTOS Kernel > Type: Kernel Image (no loading done) > This means Linux kernel. You probably need a new type - the one you are using is this one (common/image.c): { IH_TYPE_KERNEL_NOLOAD, "kernel_noload", "Kernel Image (no loading done)", }, You can add a new type in include/image.h but will need to also add support for it in a few places. > Compression: uncompressed > Data Start: 0x420000b8 > Data Size: 1543860 Bytes = 1.5 MiB > Sign algo: sha1,rsa2048:dev > Sign value: 45bd54112.........99d0d710 > Verifying Hash Integrity ... sha1,rsa2048:dev+ OK > No Linux ARM Kernel Image Image > ERROR: can't get kernel image! > > It seems that the whole signature-checking works. However U-Boot > apparently expects a kernel and instead gets my RTOS to boot. How can I > tell U-Boot that I want to run my bootelf-runable RTOS? > > I'm really stuck here - any help is very much appreciated! > > thank you & best regards, > Christopher > > > -- > ------------------------------------------------------------------ > | Christopher Preschern > | Institute for Technical Informatics - TU Graz > | Tel: +43 (316) 873 - 6404 > | EMail: christopher.presch...@tugraz.at > Regards, Simon
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot