1

I am new to fit image and secure boot. I created fit image using mkimage command and added kernel dtb and rootfs into it.

Goals:

  1. Need to boot up from fit image kernel rootfs and dtb. I am able to boot up kernel and dtb from the fit image. However I am not getting any clue how to load the rootfs from the fit image and write it to mmcblk.
  2. I also need to verify the images i.e kernel rootfs and dtb with some signature. How to do this. Please help me or guide me If I am missing something.

Below is my fitimage configuration:

/dts-v1/;

/ {
        description = "U-Boot fitImage for Aprisa NEXT/4.14.54+gitAUTOINC+7c0df4bf46/clearfog";
        #address-cells = <1>;

        images {
                kernel@1 {
                        description = "Linux kernel";
                        data = /incbin/("/home/deepak/4RF/release_11/fit_image_pro/zImage");
                        type = "kernel";
                        arch = "arm";
                        os = "linux";
                        compression = "none";
                        load = <20008000>;
                        entry = <20008000>;
                        hash@1 {
                                algo = "sha1";
                        };
                };
                fdt@armada-388-clearfog.dtb {
                        description = "Flattened Device Tree blob";
                        data = /incbin/("/home/deepak/4RF/release_11/fit_image_pro/armada-388-clearfog-pro.dtb");
                        type = "flat_dt";
                        arch = "arm";
                        compression = "none";
                        hash@1 {
                                algo = "sha1";
                        };
                };
                ramdisk@1 {
                        description = "initramfs-main-image";
                        data = /incbin/("/home/deepak/4RF/release_11/fit_image_pro/openwrt-mvebu-cortexa9-device-armada-388-clearfog-pro-rootfs.tar.gz");
                        type = "ramdisk";
                        arch = "arm";
                        os = "linux";
                        compression = "gzip";
                        load = <00000000>;
                        entry = <00000000>;
                        hash@1 {
                                algo = "sha1";
                        };
                };
    };

        configurations {
                default = "conf@armada-388-clearfog.dtb";
                conf@armada-388-clearfog.dtb {
            description = "1 Linux kernel, FDT blob, ramdisk";
            kernel = "kernel@1";
            fdt = "fdt@armada-388-clearfog.dtb";
            ramdisk = "ramdisk@1";

                        hash@1 {
                                algo = "sha1";
                        };
                };
    };
};

Please guide me on it and share if any proper document is available for doing the above things.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.