On Fri, Apr 29, 2022 at 10:35 AM Stefan Roese <s...@denx.de> wrote:
While working on an LX2160 based board and updating to latest mainline
I noticed problems using the HW accelerated hash functions on this
platform, when trying to boot a FIT Kernel image. Here the resulting
error message:
Using 'conf-freescale_lx2160a.dtb' configuration
Trying 'kernel-1' kernel subimage
Verifying Hash Integrity ... sha256Error: Address arguments are not aligned
CAAM was not setup properly or it is faulty
error!
Bad hash value for 'hash-1' hash node in 'kernel-1' image node
Bad Data Hash
ERROR: can't get kernel image!
Testing and checking with Gaurav Jain from NXP has revealed, that this
alignment check is not necessary here at all. So let's remove this
check completely.
Signed-off-by: Stefan Roese <s...@denx.de>
Cc: Gaurav Jain <gaurav.j...@nxp.com>
Cc: dullf...@yahoo.com
I applied this patch against top of tree U-Boot, but I am still
getting the following
error on a kontron-sl-mx8mm board with the options below selected:
CONFIG_IMX_HAB=y
CONFIG_SPL_DRIVERS_MISC=y
### Loading kernel from FIT Image at 42000000 ...
Using 'conf-freescale_imx8mm-kontron-n801x-s.dtb' configuration
Trying 'kernel-1' kernel subimage
Description: Linux kernel
Created: 2022-06-07 1:58:57 UTC
Type: Kernel Image
Compression: gzip compressed
Data Start: 0x42000100
Data Size: 7609360 Bytes = 7.3 MiB
Architecture: AArch64
OS: Linux
Load Address: 0x40480000
Entry Point: 0x40480000
Hash algo: sha256
Hash value:
d20b5d533e123096edb05a6433d850c0fafb4b39a6e6d47e9bade3f6fa7c26ce
Verifying Hash Integrity ... sha256dev_get_priv: null device
Hi Fabio,
I had the very same problem/error on i.MX6 and figured out that
CONFIG_ARCH_MISC_INIT=y must be enabled otherwise the caam_jr driver
is not initialized.
I also tried this patch. Now the caam_hash() returns OK and I can boot
the board but I am still seeing a warning regarding wrong alignment
from cache lib:
=> bootm 12000000#conf-4
## Loading kernel from FIT Image at 12000000 ...
Using 'conf-4' configuration
Verifying Hash Integrity ... OK
Trying 'kernel' kernel subimage
Description: Kernel
Type: Kernel Image
Compression: uncompressed
Data Start: 0x120000dc
Data Size: 2901024 Bytes = 2.8 MiB
Architecture: ARM
OS: Linux
Load Address: 0x10800000
Entry Point: 0x10800000
Hash algo: sha256
Hash value:
a3343f1df615f14677176ea4966644fcaa25b31bd3808682567b7fedf704cfb8
Verifying Hash Integrity ... sha256CACHE: Misaligned operation at range
[120000dc, 122c451c]
+ OK
## Loading fdt from FIT Image at 12000000 ...
Using 'conf-4' configuration
Verifying Hash Integrity ... OK
Trying 'fdt-4' fdt subimage
Description: Orion Flattened Device Tree blob
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x122c4604
Data Size: 41038 Bytes = 40.1 KiB
Architecture: ARM
Load Address: 0x18000000
Hash algo: sha256
Hash value:
13e0b23bd49f9e86a0425080fc788db67bf318d6f103f217d5705a455737e91c
Verifying Hash Integrity ... sha256CACHE: Misaligned operation at range
[122c4604, 122ce684]
+ OK
Loading fdt from 0x122c4604 to 0x18000000
Booting using the fdt blob at 0x18000000
Loading Kernel Image
Using Device Tree in place at 18000000, end 1800d04d
Starting kernel ...
Michal