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)
       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
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to