From 45651a3d6910b780095d2e31bf299acbf33b95bf Mon Sep 17 00:00:00 2001 From: Fabio Estevam Date: Tue, 12 Sep 2023 12:11:00 -0300 Subject: [PATCH] imx7: Disable CAAM Job Ring 0 Trying to boot a fitImage after a successful hab_auth_img operation causes the following error: ## Loading kernel from FIT Image at 88000000 ... Using 'conf-imx7d-smegw01.dtb' configuration Trying 'kernel-1' kernel subimage Description: Linux kernel Type: Kernel Image Compression: uncompressed Data Start: 0x8800010c Data Size: 9901752 Bytes = 9.4 MiB Architecture: ARM OS: Linux Load Address: 0x80800000 Entry Point: 0x80800000 Hash algo: sha256 Hash value: 28f8779bbf010780f16dd3d84ecb9b604c44c5c2cf7acd098c264a2d3f68e969 Verifying Hash Integrity ... sha256Error in SEC deq CAAM was not setup properly or it is faulty error! The reason for this error is that the BootROM uses the CAAM Job Ring 0, so disable its node in U-Boot to avoid the resource conflict. imx8m dtsi files also have the Job Ring 0 disable since the following kernel commit: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/arch?h=v6.5&id=dc9c1ceb555ff661e6fc1081434600771f29657c For a temporary solution, disable the Job Ring 0 in imx7s-u-boot.dtsi. Reported-by: Eduard Strehlau Signed-off-by: Fabio Estevam --- arch/arm/dts/imx7d-colibri-eval-v3-u-boot.dtsi | 2 ++ arch/arm/dts/imx7d-pico-pi-u-boot.dtsi | 2 ++ arch/arm/dts/imx7d-sdb-qspi-u-boot.dtsi | 2 ++ arch/arm/dts/imx7d-sdb-u-boot.dtsi | 2 ++ arch/arm/dts/imx7d-smegw01-u-boot.dtsi | 3 +++ arch/arm/dts/imx7s-u-boot.dtsi | 7 +++++++ 6 files changed, 18 insertions(+) create mode 100644 arch/arm/dts/imx7d-smegw01-u-boot.dtsi create mode 100644 arch/arm/dts/imx7s-u-boot.dtsi diff --git a/arch/arm/dts/imx7d-colibri-eval-v3-u-boot.dtsi b/arch/arm/dts/imx7d-colibri-eval-v3-u-boot.dtsi index 52aa875870..57ca28edb7 100644 --- a/arch/arm/dts/imx7d-colibri-eval-v3-u-boot.dtsi +++ b/arch/arm/dts/imx7d-colibri-eval-v3-u-boot.dtsi @@ -3,6 +3,8 @@ * Copyright 2020-2022 Toradex */ +#include "imx7s-u-boot.dtsi" + &{/aliases} { /* SDHCI instance order: eMMC, SD/MMC */ mmc0 = &usdhc3; diff --git a/arch/arm/dts/imx7d-pico-pi-u-boot.dtsi b/arch/arm/dts/imx7d-pico-pi-u-boot.dtsi index 67b41ae112..843b4583e5 100644 --- a/arch/arm/dts/imx7d-pico-pi-u-boot.dtsi +++ b/arch/arm/dts/imx7d-pico-pi-u-boot.dtsi @@ -1,3 +1,5 @@ +#include "imx7s-u-boot.dtsi" + /{ aliases { mmc0 = &usdhc3; diff --git a/arch/arm/dts/imx7d-sdb-qspi-u-boot.dtsi b/arch/arm/dts/imx7d-sdb-qspi-u-boot.dtsi index 62cdcbaeb6..896c8bcaa5 100644 --- a/arch/arm/dts/imx7d-sdb-qspi-u-boot.dtsi +++ b/arch/arm/dts/imx7d-sdb-qspi-u-boot.dtsi @@ -3,6 +3,8 @@ * Copyright 2018 NXP */ +#include "imx7s-u-boot.dtsi" + &qspi { flash0: mx25l51245g@0 { compatible = "jedec,spi-nor"; diff --git a/arch/arm/dts/imx7d-sdb-u-boot.dtsi b/arch/arm/dts/imx7d-sdb-u-boot.dtsi index ac1d6e2e64..e4a27b8dd5 100644 --- a/arch/arm/dts/imx7d-sdb-u-boot.dtsi +++ b/arch/arm/dts/imx7d-sdb-u-boot.dtsi @@ -1,3 +1,5 @@ +#include "imx7s-u-boot.dtsi" + &fec2 { status = "disable"; }; diff --git a/arch/arm/dts/imx7d-smegw01-u-boot.dtsi b/arch/arm/dts/imx7d-smegw01-u-boot.dtsi new file mode 100644 index 0000000000..90f7500ee3 --- /dev/null +++ b/arch/arm/dts/imx7d-smegw01-u-boot.dtsi @@ -0,0 +1,3 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) + +#include "imx7s-u-boot.dtsi" diff --git a/arch/arm/dts/imx7s-u-boot.dtsi b/arch/arm/dts/imx7s-u-boot.dtsi new file mode 100644 index 0000000000..c4c1da3c64 --- /dev/null +++ b/arch/arm/dts/imx7s-u-boot.dtsi @@ -0,0 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT + +&crypto { + sec_jr0: jr@1000 { + status = "disabled"; + }; +}; -- 2.39.5