[PATCH v4 11/11] arm64: dts: Enable EdgeLock Secure Enclave on all i.MX91/i.MX93 boards
From: Frieder Schrempf <hidden>
Date: 2026-07-27 13:02:04
Also in:
imx, linux-devicetree, lkml
Subsystem:
arm/freescale imx / mxc arm architecture, the rest, tq systems board & driver support · Maintainers:
Frank Li, Sascha Hauer, Linus Torvalds
From: Frieder Schrempf <redacted> Include the common dtsi to enable the firmware node for all boards based on the i.MX91 or i.MX93 SoC. For the TQ-Systems i.MX91 TQMa91xxCA / TQMa91xxLA SOM that already has a node for the reserved memory, keep the current settings. Signed-off-by: Frieder Schrempf <redacted> --- arch/arm64/boot/dts/freescale/imx91-11x11-evk.dts | 1 + arch/arm64/boot/dts/freescale/imx91-11x11-frdm-s.dts | 1 + arch/arm64/boot/dts/freescale/imx91-11x11-frdm.dts | 1 + arch/arm64/boot/dts/freescale/imx91-9x9-qsb.dts | 1 + arch/arm64/boot/dts/freescale/imx91-phycore-som.dtsi | 1 + arch/arm64/boot/dts/freescale/imx91-tqma9131.dtsi | 15 ++++++++------- arch/arm64/boot/dts/freescale/imx91-var-dart.dtsi | 1 + arch/arm64/boot/dts/freescale/imx91-var-som.dtsi | 1 + arch/arm64/boot/dts/freescale/imx93-11x11-evk-common.dtsi | 1 + arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts | 1 + arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts | 1 + arch/arm64/boot/dts/freescale/imx93-9x9-qsb.dts | 1 + arch/arm64/boot/dts/freescale/imx93-kontron-osm-s.dtsi | 1 + arch/arm64/boot/dts/freescale/imx93-phycore-som.dtsi | 1 + arch/arm64/boot/dts/freescale/imx93-tqma9352.dtsi | 1 + arch/arm64/boot/dts/freescale/imx93-var-dart.dtsi | 1 + arch/arm64/boot/dts/freescale/imx93-var-som.dtsi | 1 + 17 files changed, 24 insertions(+), 7 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/imx91-11x11-evk.dts b/arch/arm64/boot/dts/freescale/imx91-11x11-evk.dts
index 5716febb5a50..7813a3cf215b 100644
--- a/arch/arm64/boot/dts/freescale/imx91-11x11-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx91-11x11-evk.dts@@ -7,6 +7,7 @@ #include <dt-bindings/usb/pd.h> #include "imx91.dtsi" +#include "imx93-firmware.dtsi" / { compatible = "fsl,imx91-11x11-evk", "fsl,imx91";
diff --git a/arch/arm64/boot/dts/freescale/imx91-11x11-frdm-s.dts b/arch/arm64/boot/dts/freescale/imx91-11x11-frdm-s.dts
index 62dc1dedfb0e..b5a042a58b57 100644
--- a/arch/arm64/boot/dts/freescale/imx91-11x11-frdm-s.dts
+++ b/arch/arm64/boot/dts/freescale/imx91-11x11-frdm-s.dts@@ -7,6 +7,7 @@ #include <dt-bindings/usb/pd.h> #include "imx91.dtsi" +#include "imx93-firmware.dtsi" / { compatible = "fsl,imx91-11x11-frdm-s", "fsl,imx91";
diff --git a/arch/arm64/boot/dts/freescale/imx91-11x11-frdm.dts b/arch/arm64/boot/dts/freescale/imx91-11x11-frdm.dts
index c25561574d3f..20c7e4989367 100644
--- a/arch/arm64/boot/dts/freescale/imx91-11x11-frdm.dts
+++ b/arch/arm64/boot/dts/freescale/imx91-11x11-frdm.dts@@ -7,6 +7,7 @@ #include <dt-bindings/usb/pd.h> #include "imx91.dtsi" +#include "imx93-firmware.dtsi" / { compatible = "fsl,imx91-11x11-frdm", "fsl,imx91";
diff --git a/arch/arm64/boot/dts/freescale/imx91-9x9-qsb.dts b/arch/arm64/boot/dts/freescale/imx91-9x9-qsb.dts
index ea8cf14e0bc6..430c0402138b 100644
--- a/arch/arm64/boot/dts/freescale/imx91-9x9-qsb.dts
+++ b/arch/arm64/boot/dts/freescale/imx91-9x9-qsb.dts@@ -7,6 +7,7 @@ #include <dt-bindings/usb/pd.h> #include "imx91.dtsi" +#include "imx93-firmware.dtsi" / { compatible = "fsl,imx91-9x9-qsb", "fsl,imx91";
diff --git a/arch/arm64/boot/dts/freescale/imx91-phycore-som.dtsi b/arch/arm64/boot/dts/freescale/imx91-phycore-som.dtsi
index 8b8cb3daecbb..509d869a216b 100644
--- a/arch/arm64/boot/dts/freescale/imx91-phycore-som.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx91-phycore-som.dtsi@@ -11,6 +11,7 @@ #include <dt-bindings/regulator/nxp,pca9450-regulator.h> #include "imx91.dtsi" +#include "imx93-firmware.dtsi" / { model = "PHYTEC phyCORE-i.MX91";
diff --git a/arch/arm64/boot/dts/freescale/imx91-tqma9131.dtsi b/arch/arm64/boot/dts/freescale/imx91-tqma9131.dtsi
index c99d7bc16848..ad66fea4099a 100644
--- a/arch/arm64/boot/dts/freescale/imx91-tqma9131.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx91-tqma9131.dtsi@@ -7,6 +7,7 @@ */ #include "imx91.dtsi" +#include "imx93-firmware.dtsi" /{ model = "TQ-Systems i.MX91 TQMa91xxCA / TQMa91xxLA SOM";
@@ -31,13 +32,6 @@ linux,cma { size = <0 0x10000000>; linux,cma-default; }; - - /* EdgeLock secure enclave */ - ele_reserved: ele-reserved@a4120000 { - compatible = "shared-dma-pool"; - reg = <0 0xa4120000 0 0x100000>; - no-map; - }; }; /* SD2 RST# via PMIC SW_EN */
@@ -58,6 +52,13 @@ &adc1 { vref-supply = <&buck5>; }; +&ele_memory { + /delete-property/alloc-ranges; + /delete-property/size; + reg = <0 0xa4120000 0 0x100000>; + no-map; +}; + &flexspi1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_flexspi1>;
diff --git a/arch/arm64/boot/dts/freescale/imx91-var-dart.dtsi b/arch/arm64/boot/dts/freescale/imx91-var-dart.dtsi
index a9e44efad13f..2e1830c33012 100644
--- a/arch/arm64/boot/dts/freescale/imx91-var-dart.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx91-var-dart.dtsi@@ -13,6 +13,7 @@ #include <dt-bindings/leds/common.h> #include <dt-bindings/usb/pd.h> #include "imx91.dtsi" +#include "imx93-firmware.dtsi" / { model = "Variscite DART-MX91 Module";
diff --git a/arch/arm64/boot/dts/freescale/imx91-var-som.dtsi b/arch/arm64/boot/dts/freescale/imx91-var-som.dtsi
index b30a0d8a81ba..87db0abb8257 100644
--- a/arch/arm64/boot/dts/freescale/imx91-var-som.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx91-var-som.dtsi@@ -11,6 +11,7 @@ /dts-v1/; #include "imx91.dtsi" +#include "imx93-firmware.dtsi" /{ model = "Variscite VAR-SOM-MX91 module";
diff --git a/arch/arm64/boot/dts/freescale/imx93-11x11-evk-common.dtsi b/arch/arm64/boot/dts/freescale/imx93-11x11-evk-common.dtsi
index f48e7947cf64..65db986fc7ba 100644
--- a/arch/arm64/boot/dts/freescale/imx93-11x11-evk-common.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx93-11x11-evk-common.dtsi@@ -4,6 +4,7 @@ */ #include <dt-bindings/usb/pd.h> +#include "imx93-firmware.dtsi" / { aliases {
diff --git a/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts
index bd14ba28690c..0bd19988ce9f 100644
--- a/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts
+++ b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts@@ -3,6 +3,7 @@ #include <dt-bindings/usb/pd.h> #include "imx93.dtsi" +#include "imx93-firmware.dtsi" / { compatible = "fsl,imx93-11x11-frdm", "fsl,imx93";
diff --git a/arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts b/arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts
index ec78c03f4788..0e5c7d1ed4ee 100644
--- a/arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts@@ -7,6 +7,7 @@ #include <dt-bindings/usb/pd.h> #include "imx93.dtsi" +#include "imx93-firmware.dtsi" / { model = "NXP i.MX93 14X14 EVK board";
diff --git a/arch/arm64/boot/dts/freescale/imx93-9x9-qsb.dts b/arch/arm64/boot/dts/freescale/imx93-9x9-qsb.dts
index 01c11c517986..694f114aef36 100644
--- a/arch/arm64/boot/dts/freescale/imx93-9x9-qsb.dts
+++ b/arch/arm64/boot/dts/freescale/imx93-9x9-qsb.dts@@ -7,6 +7,7 @@ #include <dt-bindings/usb/pd.h> #include "imx93.dtsi" +#include "imx93-firmware.dtsi" / { model = "NXP i.MX93 9x9 Quick Start Board";
diff --git a/arch/arm64/boot/dts/freescale/imx93-kontron-osm-s.dtsi b/arch/arm64/boot/dts/freescale/imx93-kontron-osm-s.dtsi
index c79b1df339db..c9aa764cc3b8 100644
--- a/arch/arm64/boot/dts/freescale/imx93-kontron-osm-s.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx93-kontron-osm-s.dtsi@@ -5,6 +5,7 @@ #include <dt-bindings/interrupt-controller/irq.h> #include "imx93.dtsi" +#include "imx93-firmware.dtsi" / { model = "Kontron OSM-S i.MX93";
diff --git a/arch/arm64/boot/dts/freescale/imx93-phycore-som.dtsi b/arch/arm64/boot/dts/freescale/imx93-phycore-som.dtsi
index 325e465d0056..076716cc2095 100644
--- a/arch/arm64/boot/dts/freescale/imx93-phycore-som.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx93-phycore-som.dtsi@@ -12,6 +12,7 @@ #include <dt-bindings/regulator/nxp,pca9450-regulator.h> #include "imx93.dtsi" +#include "imx93-firmware.dtsi" /{ model = "PHYTEC phyCORE-i.MX93";
diff --git a/arch/arm64/boot/dts/freescale/imx93-tqma9352.dtsi b/arch/arm64/boot/dts/freescale/imx93-tqma9352.dtsi
index ce34a296495c..159be0d5dfde 100644
--- a/arch/arm64/boot/dts/freescale/imx93-tqma9352.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx93-tqma9352.dtsi@@ -6,6 +6,7 @@ */ #include "imx93.dtsi" +#include "imx93-firmware.dtsi" /{ model = "TQ-Systems i.MX93 TQMa93xxLA/TQMa93xxCA SOM";
diff --git a/arch/arm64/boot/dts/freescale/imx93-var-dart.dtsi b/arch/arm64/boot/dts/freescale/imx93-var-dart.dtsi
index 69495bb7fc9f..122a8a091c80 100644
--- a/arch/arm64/boot/dts/freescale/imx93-var-dart.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx93-var-dart.dtsi@@ -12,6 +12,7 @@ #include <dt-bindings/usb/pd.h> #include "imx93.dtsi" +#include "imx93-firmware.dtsi" / { model = "Variscite DART-MX93 Module";
diff --git a/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi b/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi
index 24063bf8183d..50aec264f87c 100644
--- a/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi@@ -7,6 +7,7 @@ /dts-v1/; #include "imx93.dtsi" +#include "imx93-firmware.dtsi" /{ model = "Variscite VAR-SOM-MX93 module";
--
2.55.0