boot failed when fitImage with gzip compress on imx8mp-evk

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

boot failed when fitImage with gzip compress on imx8mp-evk

1,813 Views
kunyichen
Contributor IV

I use BSP imx-5.10.9-1.0.0.xml to change loadaddr to 0x46000000

then to make a fitImage for imx8mp-evk booting

I trying kernel with gzip compressed format, but booting failed,

the system will hangup on "Starting kernel ..."

then to try uncompressed kernel format, the system will boot success

have anyone would tell me why?

---------------------------------------------------------------------------------------------------------------------

u-boot=> bootm
## Loading kernel from FIT Image at 46000000 ...
Using 'conf@freescale_imx8mp-evk.dtb' configuration
Trying 'kernel@1' kernel subimage
Description: Linux kernel
Type: Kernel Image
Compression: gzip compressed
Data Start: 0x46000114
Data Size: 12200452 Bytes = 11.6 MiB
Architecture: AArch64
OS: Linux
Load Address: 0x40480000
Entry Point: 0x40480000
Hash algo: sha256
Hash value: 0fdac4e2e7a165050f44f020423042c44090bb9fa42a4a3dc49630fe42328ea5
Verifying Hash Integrity ... sha256+ OK
## Loading fdt from FIT Image at 46000000 ...
Using 'conf@freescale_imx8mp-evk.dtb' configuration
Trying 'fdt@freescale_imx8mp-evk.dtb' fdt subimage
Description: Flattened Device Tree blob
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x46ba2c34
Data Size: 61579 Bytes = 60.1 KiB
Architecture: AArch64
Hash algo: sha256
Hash value: e9e8caf72e976ad5af6abe81fc9c3bb5297715c0094076180bb812faf88cb185
Verifying Hash Integrity ... sha256+ OK
Booting using the fdt blob at 0x46ba2c34
Uncompressing Kernel Image
kernel loaded at 0x40480000, end = 0x4206ca00
Using Device Tree in place at 0000000046ba2c34, end 0000000046bb4cbe
Can't find cec device id=0x3c
fail to probe panel device adv7535@3d
fail to get display timings
probe video device failed, ret -19

Starting kernel ...

---------------------------------------------------------------------------------------------------------------------



u-boot=> bootm
## Loading kernel from FIT Image at 46000000 ...
Using 'conf@freescale_imx8mp-evk.dtb' configuration
Trying 'kernel@1' kernel subimage
Description: Linux kernel
Type: Kernel Image
Compression: uncompressed
Data Start: 0x46000114
Data Size: 29280768 Bytes = 27.9 MiB
Architecture: AArch64
OS: Linux
Load Address: 0x40480000
Entry Point: 0x40480000
Hash algo: sha256
Hash value: 90fe04db31b476ac7f57ddd877f709ddb0c83bae62fd07434c09a74b7356f2eb
Verifying Hash Integrity ... sha256+ OK
## Loading fdt from FIT Image at 46000000 ...
Using 'conf@freescale_imx8mp-evk.dtb' configuration
Trying 'fdt@freescale_imx8mp-evk.dtb' fdt subimage
Description: Flattened Device Tree blob
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x47becc30
Data Size: 61579 Bytes = 60.1 KiB
Architecture: AArch64
Hash algo: sha256
Hash value: e9e8caf72e976ad5af6abe81fc9c3bb5297715c0094076180bb812faf88cb185
Verifying Hash Integrity ... sha256+ OK
Booting using the fdt blob at 0x47becc30
Loading Kernel Image
kernel loaded at 0x40480000, end = 0x4206ca00
Using Device Tree in place at 0000000047becc30, end 0000000047bfecba
Can't find cec device id=0x3c
fail to probe panel device adv7535@3d
fail to get display timings
probe video device failed, ret -19

Starting kernel ...

[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[ 0.000000] Linux version 5.10.9-1.0.0+g32513c25d8c7 (oe-user@oe-host) (aarch64-poky-linux-gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Tue Mar 9 02:17:18 UTC 2021
[ 0.000000] Machine model: NXP i.MX8MPlus EVK board
[ 0.000000] efi: UEFI not found.
[ 0.000000] [Firmware Bug]: Kernel image misaligned at boot, please fix your bootloader!
[ 0.000000] Reserved memory: created CMA memory pool at 0x00000000c4000000, size 960 MiB
[ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[ 0.000000] NUMA: No NUMA configuration found
[ 0.000000] NUMA: Faking a node at [mem 0x0000000040000000-0x00000001bfffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0x1bf3cf700-0x1bf3d1fff]
[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x0000000040000000-0x00000000ffffffff]
[ 0.000000] DMA32 empty
[ 0.000000] Normal [mem 0x0000000100000000-0x00000001bfffffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000040000000-0x0000000055ffffff]
[ 0.000000] node 0: [mem 0x0000000058000000-0x00000000923fffff]
[ 0.000000] node 0: [mem 0x0000000094400000-0x00000001bfffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x00000001bfffffff]

Tags (2)
0 Kudos
2 Replies

1,804 Views
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Did you point that gzip kernel format when using mkimage?

0 Kudos

1,795 Views
kunyichen
Contributor IV

@Zhiming_Liu,

     yes, to check the .its file have indicate compress type with gzip

-------------------------------------------------------------------------------------------------

/dts-v1/;

/ {
        description = "U-Boot fitImage for Poky (Yocto Project Reference Distro)/5.10.9+gitAUTOINC+32513c25d8/imx8mpevk";
        #address-cells = <1>;

        images {
                kernel@1 {
                        description = "Linux kernel";
                        data = /incbin/("./Image.gz");
                        type = "kernel";
                        arch = "arm64";
                        os = "linux";
                        compression = "gzip";
                        load = <0x40480000>;
                        entry = <0x40480000>;
                        hash@1 {
                                algo = "sha256";
                        };
                };
                fdt@freescale_imx8mp-evk.dtb {
                        description = "Flattened Device Tree blob";
                        data = /incbin/("./imx8mp-evk.dtb");
                        type = "flat_dt";
                        arch = "arm64";
                        compression = "none";
                        hash@1 {
                                algo = "sha256";
                        };
                };
                fdt@freescale_imx8mp-ab2.dtb {
                        description = "Flattened Device Tree blob";
                        data = /incbin/("./imx8mp-ab2.dtb");
                        type = "flat_dt";
                        arch = "arm64";
                        compression = "none";
                        hash@1 {
                                algo = "sha256";
                        };
                };
        };

        configurations {
                default = "conf@freescale_imx8mp-evk.dtb";
                conf@freescale_imx8mp-evk.dtb {
			description = "0 Linux kernel, FDT blob";
			kernel = "kernel@1";
			fdt = "fdt@freescale_imx8mp-evk.dtb";
                        os = "linux";

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

                conf@freescale_imx8mp-ab2.dtb {
			description = "1 Linux kernel, FDT blob";
			kernel = "kernel@1";
			fdt = "fdt@freescale_imx8mp-ab2.dtb";
                        os = "linux";

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

~/imx8mpevk/build/tmp/deploy/images/imx8mpevk$ ./mkimage_uboot -f fitImage.its fitimage.manual
fitImage.its:8.26-20.19: Warning (unit_address_vs_reg): /images/kernel@1: node has a unit name, but no reg property
fitImage.its:17.32-19.27: Warning (unit_address_vs_reg): /images/kernel@1/hash@1: node has a unit name, but no reg property
fitImage.its:21.46-30.19: Warning (unit_address_vs_reg): /images/fdt@freescale_imx8mp-evk.dtb: node has a unit name, but no reg property
fitImage.its:27.32-29.27: Warning (unit_address_vs_reg): /images/fdt@freescale_imx8mp-evk.dtb/hash@1: node has a unit name, but no reg property
fitImage.its:31.46-40.19: Warning (unit_address_vs_reg): /images/fdt@freescale_imx8mp-ab2.dtb: node has a unit name, but no reg property
fitImage.its:37.32-39.27: Warning (unit_address_vs_reg): /images/fdt@freescale_imx8mp-ab2.dtb/hash@1: node has a unit name, but no reg property
fitImage.its:45.47-54.19: Warning (unit_address_vs_reg): /configurations/conf@freescale_imx8mp-evk.dtb: node has a unit name, but no reg property
fitImage.its:51.32-53.27: Warning (unit_address_vs_reg): /configurations/conf@freescale_imx8mp-evk.dtb/hash@1: node has a unit name, but no reg property
fitImage.its:56.47-65.19: Warning (unit_address_vs_reg): /configurations/conf@freescale_imx8mp-ab2.dtb: node has a unit name, but no reg property
fitImage.its:62.32-64.27: Warning (unit_address_vs_reg): /configurations/conf@freescale_imx8mp-ab2.dtb/hash@1: node has a unit name, but no reg property
FIT description: U-Boot fitImage for Poky (Yocto Project Reference Distro)/5.10.9+gitAUTOINC+32513c25d8/imx8mpevk
Created: Thu Apr 22 12:23:29 2021
Image 0 (kernel@1)
Description: Linux kernel
Created: Thu Apr 22 12:23:29 2021
Type: Kernel Image
Compression: gzip compressed
Data Size: 12200452 Bytes = 11914.50 KiB = 11.64 MiB
Architecture: AArch64
OS: Linux
Load Address: 0x40480000
Entry Point: 0x40480000
Hash algo: sha256
Hash value: 0fdac4e2e7a165050f44f020423042c44090bb9fa42a4a3dc49630fe42328ea5
Image 1 (fdt@freescale_imx8mp-evk.dtb)
Description: Flattened Device Tree blob
Created: Thu Apr 22 12:23:29 2021
Type: Flat Device Tree
Compression: uncompressed
Data Size: 61579 Bytes = 60.14 KiB = 0.06 MiB
Architecture: AArch64
Hash algo: sha256
Hash value: e9e8caf72e976ad5af6abe81fc9c3bb5297715c0094076180bb812faf88cb185
Image 2 (fdt@freescale_imx8mp-ab2.dtb)
Description: Flattened Device Tree blob
Created: Thu Apr 22 12:23:29 2021
Type: Flat Device Tree
Compression: uncompressed
Data Size: 56019 Bytes = 54.71 KiB = 0.05 MiB
Architecture: AArch64
Hash algo: sha256
Hash value: 93247ca5fe2d9f9ed6c4b591529928f030ee01c3abb122fbd64b864d06e88d18
Default Configuration: 'conf@freescale_imx8mp-evk.dtb'
Configuration 0 (conf@freescale_imx8mp-evk.dtb)
Description: 0 Linux kernel, FDT blob
Kernel: kernel@1
FDT: fdt@freescale_imx8mp-evk.dtb
Hash algo: sha256
Hash value: unavailable
Configuration 1 (conf@freescale_imx8mp-ab2.dtb)
Description: 1 Linux kernel, FDT blob
Kernel: kernel@1
FDT: fdt@freescale_imx8mp-ab2.dtb
Hash algo: sha256
Hash value: unavailable

0 Kudos