Hash Error When Booting FIT Image
Last modified by Microchip on 2025/08/14 13:16
How Does the Issue Manifest?
Starting from the U-Boot 2021.04 released in Linux4SAM 2021.04, you may notice the following error when trying to boot the FIT image:
U-Boot 2021.04-linux4sam-2021.04-rc3-00005-gf6976dd95f (Jun 25 2021 - 07:37:44 +0530)
CPU: SAMA5D29-CN
Crystal frequency: 12 MHz
CPU clock : 498 MHz
Master clock : 166 MHz
DRAM: 512 MiB
MMC: sdio-host@a0000000: 0, sdio-host@b0000000: 1
Loading Environment from FAT... OK
In: serial@f8020000
Out: serial@f8020000
Err: serial@f8020000
Net: eth0: ethernet@f8008000
Hit any key to stop autoboot: 0
4723628 bytes read in 284 ms (15.9 MiB/s)
## Loading kernel from FIT Image at 24000000 ...
Using 'kernel_dtb' configuration
Trying 'kernel@1' kernel subimage
Description: Linux4SAM Linux kernel
Type: Kernel Image
Compression: uncompressed
Data Start: 0x240000e0
Data Size: 4654984 Bytes = 4.4 MiB
Architecture: ARM
OS: Linux
Load Address: 0x22000000
Entry Point: 0x22000000
Hash algo: crc32
Hash value: ef9dca8e
Hash algo: sha1
Hash value: 87974e6f3452fde4628039cdaf6dbe1ea7585f4f
Verifying Hash Integrity ... error!
Node name contains @ in 'kernel@1' image node
Bad Data Hash
ERROR: can't get kernel image!
CPU: SAMA5D29-CN
Crystal frequency: 12 MHz
CPU clock : 498 MHz
Master clock : 166 MHz
DRAM: 512 MiB
MMC: sdio-host@a0000000: 0, sdio-host@b0000000: 1
Loading Environment from FAT... OK
In: serial@f8020000
Out: serial@f8020000
Err: serial@f8020000
Net: eth0: ethernet@f8008000
Hit any key to stop autoboot: 0
4723628 bytes read in 284 ms (15.9 MiB/s)
## Loading kernel from FIT Image at 24000000 ...
Using 'kernel_dtb' configuration
Trying 'kernel@1' kernel subimage
Description: Linux4SAM Linux kernel
Type: Kernel Image
Compression: uncompressed
Data Start: 0x240000e0
Data Size: 4654984 Bytes = 4.4 MiB
Architecture: ARM
OS: Linux
Load Address: 0x22000000
Entry Point: 0x22000000
Hash algo: crc32
Hash value: ef9dca8e
Hash algo: sha1
Hash value: 87974e6f3452fde4628039cdaf6dbe1ea7585f4f
Verifying Hash Integrity ... error!
Node name contains @ in 'kernel@1' image node
Bad Data Hash
ERROR: can't get kernel image!
Cause of the Issue
U-Boot has updated how configuration and image names inside the ITB file are treated.
Upstream commit 79af75f777 ("fit: Don't allow verification of images with @ nodes") has stopped the possibility of having the '@' character inside image names.
Solution
You must update your dt-overlay-at91 tree to at least the linux4sam-2021.04 version.
Commit 7ad3118 fixes this problem.
Learn More
- Sama5d29 Curiosity
- Sam9x75 Curiosity
- Sam9x60 Curiosity
- Sama5d2 ICP
- Sam9x60 EK
- Sama5d27WLSom1-EK
- Sama5d27Som1-EK
- Sama5d2 PTC EK
- Sama5d2 Xplained
- Sama5d4 Xplained
- Sama5d3 Xplained
- U-Boot