summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBeleswar Padhi <b-padhi@ti.com>2026-01-14 20:35:50 +0300
committerNishanth Menon <nm@ti.com>2026-01-16 13:55:15 +0300
commit474530ef050b77482365de8c595b491f1d4ba683 (patch)
tree8c6b329cac7c5001264e8bfc1b16a7aca39efec4
parent61acc4428a7f52e0a13e226ba76f2ce2ca66c065 (diff)
downloadlinux-474530ef050b77482365de8c595b491f1d4ba683.tar.xz
arm64: dts: ti: k3-{j784s4-j742s2/j721s2}-mcu-wakeup: Add HSM M4F node
The TI K3 J721S2, J784S4 and J742S2 SoCs have a HSM (High Security Module) M4F core in the Wakeup Voltage Domain which could be used to run secure services like Authentication. Add Device Tree Node definitions for the HSM core in the respective SoC wakeup dtsi files. The HSM node is reserved to be loaded and booted by the early-stage bootloader. The firmware-name property is defined at the SoC level since the HSM is not a general-purpose remote core and boards are unlikely to use separate firmware. If needed in exceptional cases, board-specific device trees can override this property. Signed-off-by: Beleswar Padhi <b-padhi@ti.com> Reviewed-by: Bryan Brattlof <bb@ti.com> Link: https://patch.msgid.link/20260114173551.2545088-2-b-padhi@ti.com Signed-off-by: Nishanth Menon <nm@ti.com>
-rw-r--r--arch/arm64/boot/dts/ti/k3-j721s2-mcu-wakeup.dtsi17
-rw-r--r--arch/arm64/boot/dts/ti/k3-j742s2-mcu-wakeup.dtsi4
-rw-r--r--arch/arm64/boot/dts/ti/k3-j784s4-j742s2-mcu-wakeup-common.dtsi17
3 files changed, 38 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/ti/k3-j721s2-mcu-wakeup.dtsi b/arch/arm64/boot/dts/ti/k3-j721s2-mcu-wakeup.dtsi
index fd01437726ab..32ee8031cfcb 100644
--- a/arch/arm64/boot/dts/ti/k3-j721s2-mcu-wakeup.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j721s2-mcu-wakeup.dtsi
@@ -766,4 +766,21 @@
/* reserved for MCU_R5F0_1 */
status = "reserved";
};
+
+ hsm: remoteproc@43c00000 {
+ compatible = "ti,hsm-m4fss";
+ /* contiguous regions but instantiated separately in HW */
+ reg = <0x00 0x43c00000 0x00 0x20000>,
+ <0x00 0x43c20000 0x00 0x10000>,
+ <0x00 0x43c30000 0x00 0x10000>;
+ reg-names = "sram0_0", "sram0_1", "sram1";
+ resets = <&k3_reset 304 1>;
+ firmware-name = "j721s2-hsm-m4f-fw";
+ bootph-pre-ram;
+ ti,sci = <&sms>;
+ ti,sci-dev-id = <304>;
+ ti,sci-proc-ids = <0x80 0xff>;
+ /* reserved for early-stage bootloader */
+ status = "reserved";
+ };
};
diff --git a/arch/arm64/boot/dts/ti/k3-j742s2-mcu-wakeup.dtsi b/arch/arm64/boot/dts/ti/k3-j742s2-mcu-wakeup.dtsi
index 61db2348d6a4..2f40afcfa67c 100644
--- a/arch/arm64/boot/dts/ti/k3-j742s2-mcu-wakeup.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j742s2-mcu-wakeup.dtsi
@@ -15,3 +15,7 @@
&mcu_r5fss0_core1 {
firmware-name = "j742s2-mcu-r5f0_1-fw";
};
+
+&hsm {
+ firmware-name = "j742s2-hsm-m4f-fw";
+};
diff --git a/arch/arm64/boot/dts/ti/k3-j784s4-j742s2-mcu-wakeup-common.dtsi b/arch/arm64/boot/dts/ti/k3-j784s4-j742s2-mcu-wakeup-common.dtsi
index cc22bfb5f599..df37902c963f 100644
--- a/arch/arm64/boot/dts/ti/k3-j784s4-j742s2-mcu-wakeup-common.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j784s4-j742s2-mcu-wakeup-common.dtsi
@@ -762,4 +762,21 @@
/* reserved for MCU_R5F0_1 */
status = "reserved";
};
+
+ hsm: remoteproc@43c00000 {
+ compatible = "ti,hsm-m4fss";
+ /* contiguous regions but instantiated separately in HW */
+ reg = <0x00 0x43c00000 0x00 0x20000>,
+ <0x00 0x43c20000 0x00 0x10000>,
+ <0x00 0x43c30000 0x00 0x10000>;
+ reg-names = "sram0_0", "sram0_1", "sram1";
+ resets = <&k3_reset 371 1>;
+ firmware-name = "j784s4-hsm-m4f-fw";
+ bootph-pre-ram;
+ ti,sci = <&sms>;
+ ti,sci-dev-id = <371>;
+ ti,sci-proc-ids = <0x80 0xff>;
+ /* reserved for early-stage bootloader */
+ status = "reserved";
+ };
};