[U-Boot] Can't boot my FIT image: 'Could not find configuration node'

Grant Jurgensen gajurgensen at gmail.com
Mon Aug 6 17:50:16 UTC 2018


Hi,

I'm using U-boot to boot an ELF image. I am easily able to load the image
into memory and boot it with the `bootelf` command. However, I'd like to
create a FIT image in order to make use of the convenient hashing and
secure boot features, but I'm having trouble getting my image to boot.

Here is my current `.its` file (currently as simple as possible until I get
it to boot):

/dts-v1/;

/ {
    description = "SeL4";
    #address-cells = <1>;

    images {
        kerne-0 {
            description = "SeL4 image";
            data = /incbin/("./test_app-image-arm-exynos5");
            type = "kernel";
            arch = "arm";
            os = "qnx";
            compression = "none";
            load = <0x48000000>;
            entry = <0x48000000>;
        };
    };

    configurations {
        default = "config-0";
        config-0 {
             description = "default config";
             kernel = "kernel-0";
        };
    };
};

By the way, my ELF image isn't actually a qnx kernel. It is a sel4 kernel,
however "sel4" is not an option. (I can make a uImage with `mkimage -A arm
-a 0x48000000 -e 0x48000000 -C none -T kernel -O qnx -d
test_app-image-exynos5 image` and can actually boot the resulting image
here with `bootm` no problem, so I believe using the qnx OS setting
shouldn't be a problem.)

I am then able to create the FIT image with `mkimage -f sel4.its sel4.itb`.
I copy this image to my SD card, successfully load the fit image into
memory (with `fatload`), but then `bootm` fails with the following message:

## Loading kernel from FIT Image at 50000000 ...
Could not find configuration node
ERROR: can't get kernel image!

I can't make sense of this error. `iminfo` recognizes my default
configuration, yet `bootm` can't find the configuration node?

Thanks,
Grant


More information about the U-Boot mailing list