diff mbox series

[1/3] arm: dts: k3-j721e-r5*: Introduce k3-j721e-r5.dtsi

Message ID 20240520095916.1809962-2-n-francis@ti.com
State New
Delegated to: Tom Rini
Headers show
Series k3-j721e: Enable OF_UPSTREAM for J721E | expand

Commit Message

Neha Malcom Francis May 20, 2024, 9:59 a.m. UTC
Introduce k3-j721e-r5.dtsi to be used by board R5 DTS files. This
helps sync SoC changes across boards.

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
---
 arch/arm/dts/k3-j721e-r5-beagleboneai64.dts   | 78 +-----------------
 .../arm/dts/k3-j721e-r5-common-proc-board.dts | 75 +----------------
 arch/arm/dts/k3-j721e-r5-sk.dts               | 75 +----------------
 arch/arm/dts/k3-j721e-r5.dtsi                 | 80 +++++++++++++++++++
 4 files changed, 83 insertions(+), 225 deletions(-)
 create mode 100644 arch/arm/dts/k3-j721e-r5.dtsi

Comments

Manorit Chawdhry May 22, 2024, 6:20 a.m. UTC | #1
Hi Neha,

On 15:29-20240520, Neha Malcom Francis wrote:
> Introduce k3-j721e-r5.dtsi to be used by board R5 DTS files. This
> helps sync SoC changes across boards.
> 
> Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
> ---
>  arch/arm/dts/k3-j721e-r5-beagleboneai64.dts   | 78 +-----------------
>  .../arm/dts/k3-j721e-r5-common-proc-board.dts | 75 +----------------
>  arch/arm/dts/k3-j721e-r5-sk.dts               | 75 +----------------
>  arch/arm/dts/k3-j721e-r5.dtsi                 | 80 +++++++++++++++++++
>  4 files changed, 83 insertions(+), 225 deletions(-)
>  create mode 100644 arch/arm/dts/k3-j721e-r5.dtsi
> 
> diff --git a/arch/arm/dts/k3-j721e-r5-beagleboneai64.dts b/arch/arm/dts/k3-j721e-r5-beagleboneai64.dts
> index 43da4dafba8..4f97af4fd94 100644
> --- a/arch/arm/dts/k3-j721e-r5-beagleboneai64.dts
> +++ b/arch/arm/dts/k3-j721e-r5-beagleboneai64.dts
> @@ -12,84 +12,8 @@
>  #include "k3-j721e-ddr.dtsi"
>  
>  #include "k3-j721e-beagleboneai64-u-boot.dtsi"
> +#include "k3-j721e-r5.dtsi"
>  
> -/ {
> -	aliases {
> -		remoteproc0 = &sysctrler;
> -		remoteproc1 = &a72_0;
> -	};
> -
> -	chosen {
> -		tick-timer = &mcu_timer0;
> -	};
> -
> -	a72_0: a72@0 {
> -		compatible = "ti,am654-rproc";
> -		reg = <0x0 0x00a90000 0x0 0x10>;
> -		power-domains = <&k3_pds 61 TI_SCI_PD_EXCLUSIVE>,
> -				<&k3_pds 202 TI_SCI_PD_EXCLUSIVE>,
> -				<&k3_pds 4 TI_SCI_PD_EXCLUSIVE>;
> -		resets = <&k3_reset 202 0>;
> -		clocks = <&k3_clks 61 1>;
> -		assigned-clocks = <&k3_clks 202 2>, <&k3_clks 61 1>;
> -		assigned-clock-rates = <2000000000>, <200000000>;
> -		ti,sci = <&dmsc>;
> -		ti,sci-proc-id = <32>;
> -		ti,sci-host-id = <10>;
> -		bootph-pre-ram;
> -	};
> -
> -	dm_tifs: dm-tifs {
> -		compatible = "ti,j721e-dm-sci";
> -		ti,host-id = <3>;
> -		ti,secure-host;
> -		mbox-names = "rx", "tx";
> -		mboxes= <&secure_proxy_mcu 21>,
> -				<&secure_proxy_mcu 23>;
> -		bootph-pre-ram;
> -	};
> -};
> -
> -&dmsc {
> -	mboxes= <&secure_proxy_mcu 6>,
> -		<&secure_proxy_mcu 8>,
> -		<&secure_proxy_mcu 5>;
> -	mbox-names = "rx", "tx", "notify";
> -	ti,host-id = <4>;
> -	ti,secure-host;
> -};
> -
> -&mcu_timer0 {
> -	status = "okay";
> -	bootph-pre-ram;
> -};
> -
> -&secure_proxy_mcu {
> -	bootph-pre-ram;
> -	/* We require this for boot handshake */
> -	status = "okay";
> -};
> -
> -&cbass_mcu_wakeup {
> -	sysctrler: sysctrler {
> -		compatible = "ti,am654-system-controller";
> -		mboxes= <&secure_proxy_mcu 4>, <&secure_proxy_mcu 5>;
> -		mbox-names = "tx", "rx";
> -		bootph-pre-ram;
> -	};
> -};
> -
> -&mcu_ringacc {
> -	ti,sci = <&dm_tifs>;
> -};
> -
> -&mcu_udmap {
> -	ti,sci = <&dm_tifs>;
> -};
> -
> -&wkup_uart0_pins_default {
> -	bootph-pre-ram;
> -};
>  
>  &wkup_i2c0 {
>  	bootph-pre-ram;
> diff --git a/arch/arm/dts/k3-j721e-r5-common-proc-board.dts b/arch/arm/dts/k3-j721e-r5-common-proc-board.dts
> index 9655ca21d02..c7e344350c8 100644
> --- a/arch/arm/dts/k3-j721e-r5-common-proc-board.dts
> +++ b/arch/arm/dts/k3-j721e-r5-common-proc-board.dts
> @@ -10,76 +10,7 @@
>  #include "k3-j721e-ddr.dtsi"
>  #include "k3-j721e-common-proc-board-u-boot.dtsi"
>  
> -/ {
> -	chosen {
> -		tick-timer = &mcu_timer0;
> -	};
> -
> -	aliases {
> -		remoteproc0 = &sysctrler;
> -		remoteproc1 = &a72_0;
> -	};
> -
> -	a72_0: a72@0 {
> -		compatible = "ti,am654-rproc";
> -		reg = <0x0 0x00a90000 0x0 0x10>;
> -		power-domains = <&k3_pds 61 TI_SCI_PD_EXCLUSIVE>,
> -				<&k3_pds 202 TI_SCI_PD_EXCLUSIVE>,
> -				<&k3_pds 4 TI_SCI_PD_EXCLUSIVE>;
> -		resets = <&k3_reset 202 0>;
> -		clocks = <&k3_clks 61 1>;
> -		assigned-clocks = <&k3_clks 202 2>, <&k3_clks 61 1>;
> -		assigned-clock-rates = <2000000000>, <200000000>;
> -		ti,sci = <&dmsc>;
> -		ti,sci-proc-id = <32>;
> -		ti,sci-host-id = <10>;
> -		bootph-pre-ram;
> -	};
> -
> -	dm_tifs: dm-tifs {
> -		compatible = "ti,j721e-dm-sci";
> -		ti,host-id = <3>;
> -		ti,secure-host;
> -		mbox-names = "rx", "tx";
> -		mboxes= <&secure_proxy_mcu 21>,
> -			<&secure_proxy_mcu 23>;
> -		bootph-pre-ram;
> -	};
> -};
> -
> -&mcu_timer0 {
> -	status = "okay";
> -	bootph-pre-ram;
> -};
> -
> -&dmsc {
> -	mboxes= <&secure_proxy_mcu 8>, <&secure_proxy_mcu 6>, <&secure_proxy_mcu 5>;
> -	mbox-names = "tx", "rx", "notify";
> -	ti,host-id = <4>;
> -	ti,secure-host;
> -};
> -
> -&secure_proxy_mcu {
> -	bootph-pre-ram;
> -	status = "okay";
> -};
> -
> -&cbass_mcu_wakeup {
> -	sysctrler: sysctrler {
> -		bootph-pre-ram;
> -		compatible = "ti,am654-system-controller";
> -		mboxes= <&secure_proxy_mcu 4>, <&secure_proxy_mcu 5>;
> -		mbox-names = "tx", "rx";
> -	};
> -};
> -
> -&mcu_ringacc {
> -	ti,sci = <&dm_tifs>;
> -};
> -
> -&mcu_udmap {
> -	ti,sci = <&dm_tifs>;
> -};
> +#include "k3-j721e-r5.dtsi"
>  
>  &wkup_i2c0 {
>  	bootph-pre-ram;
> @@ -111,10 +42,6 @@
>  	};
>  };
>  
> -&wkup_uart0_pins_default {
> -	bootph-pre-ram;
> -};
> -
>  &mcu_uart0_pins_default {
>  	bootph-pre-ram;
>  };
> diff --git a/arch/arm/dts/k3-j721e-r5-sk.dts b/arch/arm/dts/k3-j721e-r5-sk.dts
> index b0c108e9693..96a13b2cb2b 100644
> --- a/arch/arm/dts/k3-j721e-r5-sk.dts
> +++ b/arch/arm/dts/k3-j721e-r5-sk.dts
> @@ -10,80 +10,7 @@
>  #include "k3-j721e-ddr.dtsi"
>  #include "k3-j721e-sk-u-boot.dtsi"
>  
> -/ {
> -	chosen {
> -		tick-timer = &mcu_timer0;
> -	};
> -
> -	aliases {
> -		remoteproc0 = &sysctrler;
> -		remoteproc1 = &a72_0;
> -	};
> -
> -	a72_0: a72@0 {
> -		compatible = "ti,am654-rproc";
> -		reg = <0x0 0x00a90000 0x0 0x10>;
> -		power-domains = <&k3_pds 61 TI_SCI_PD_EXCLUSIVE>,
> -				<&k3_pds 202 TI_SCI_PD_EXCLUSIVE>,
> -				<&k3_pds 4 TI_SCI_PD_EXCLUSIVE>;
> -		resets = <&k3_reset 202 0>;
> -		clocks = <&k3_clks 61 1>;
> -		assigned-clocks = <&k3_clks 202 2>, <&k3_clks 61 1>;
> -		assigned-clock-rates = <2000000000>, <200000000>;
> -		ti,sci = <&dmsc>;
> -		ti,sci-proc-id = <32>;
> -		ti,sci-host-id = <10>;
> -		bootph-pre-ram;
> -	};
> -
> -	dm_tifs: dm-tifs {
> -		compatible = "ti,j721e-dm-sci";
> -		ti,host-id = <3>;
> -		ti,secure-host;
> -		mbox-names = "rx", "tx";
> -		mboxes= <&secure_proxy_mcu 21>,
> -				<&secure_proxy_mcu 23>;
> -		bootph-pre-ram;
> -	};
> -};
> -
> -&mcu_timer0 {
> -	status = "okay";
> -	bootph-pre-ram;
> -};
> -
> -&secure_proxy_mcu {
> -	bootph-pre-ram;
> -	status = "okay";
> -};
> -
> -&cbass_mcu_wakeup {
> -	sysctrler: sysctrler {
> -		bootph-pre-ram;
> -		compatible = "ti,am654-system-controller";
> -		mboxes= <&secure_proxy_mcu 4>, <&secure_proxy_mcu 5>;
> -		mbox-names = "tx", "rx";
> -	};
> -};
> -
> -&dmsc {
> -	mboxes= <&secure_proxy_mcu 8>, <&secure_proxy_mcu 6>, <&secure_proxy_mcu 5>;
> -	mbox-names = "tx", "rx", "notify";
> -	ti,host-id = <4>;
> -	ti,secure-host;
> -};
> -
> -&mcu_ringacc {
> -	ti,sci = <&dm_tifs>;
> -};
> -
> -&mcu_udmap {
> -	ti,sci = <&dm_tifs>;
> -};
> -
> -&wkup_uart0_pins_default {
> -	bootph-pre-ram;
> -};
> +#include "k3-j721e-r5.dtsi"
>  
>  &mcu_uart0_pins_default {
>  	bootph-pre-ram;
> diff --git a/arch/arm/dts/k3-j721e-r5.dtsi b/arch/arm/dts/k3-j721e-r5.dtsi
> new file mode 100644
> index 00000000000..fd0d921272c
> --- /dev/null
> +++ b/arch/arm/dts/k3-j721e-r5.dtsi
> @@ -0,0 +1,80 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (C) 2024 Texas Instruments Incorporated - https://www.ti.com/
> + */
> +
> +/ {
> +	chosen {
> +		tick-timer = &mcu_timer0;
> +	};
> +
> +	aliases {
> +		remoteproc0 = &sysctrler;
> +		remoteproc1 = &a72_0;
> +	};
> +
> +	a72_0: a72@0 {
> +		compatible = "ti,am654-rproc";
> +		reg = <0x0 0x00a90000 0x0 0x10>;
> +		power-domains = <&k3_pds 61 TI_SCI_PD_EXCLUSIVE>,
> +				<&k3_pds 202 TI_SCI_PD_EXCLUSIVE>,
> +				<&k3_pds 4 TI_SCI_PD_EXCLUSIVE>;
> +		resets = <&k3_reset 202 0>;
> +		clocks = <&k3_clks 61 1>;
> +		assigned-clocks = <&k3_clks 202 2>, <&k3_clks 61 1>;
> +		assigned-clock-rates = <2000000000>, <200000000>;
> +		ti,sci = <&dmsc>;
> +		ti,sci-proc-id = <32>;
> +		ti,sci-host-id = <10>;
> +		bootph-pre-ram;
> +	};
> +
> +	dm_tifs: dm-tifs {
> +		compatible = "ti,j721e-dm-sci";
> +		ti,host-id = <3>;
> +		ti,secure-host;
> +		mbox-names = "rx", "tx";
> +		mboxes= <&secure_proxy_mcu 21>,
> +			<&secure_proxy_mcu 23>;
> +		bootph-pre-ram;
> +	};
> +};
> +
> +&mcu_timer0 {
> +	status = "okay";
> +	bootph-pre-ram;
> +};
> +
> +&dmsc {
> +	mboxes= <&secure_proxy_mcu 8>, <&secure_proxy_mcu 6>, <&secure_proxy_mcu 5>;
> +	mbox-names = "tx", "rx", "notify";
> +	ti,host-id = <4>;
> +	ti,secure-host;
> +};
> +
> +&secure_proxy_mcu {
> +	bootph-pre-ram;
> +	/* We require this for boot handshake */
> +	status = "okay";
> +};
> +
> +&cbass_mcu_wakeup {
> +	sysctrler: sysctrler {
> +		bootph-pre-ram;
> +		compatible = "ti,am654-system-controller";
> +		mboxes= <&secure_proxy_mcu 4>, <&secure_proxy_mcu 5>;
> +		mbox-names = "tx", "rx";
> +	};
> +};
> +
> +&mcu_ringacc {
> +	ti,sci = <&dm_tifs>;
> +};
> +
> +&mcu_udmap {
> +	ti,sci = <&dm_tifs>;
> +};
> +
> +&wkup_uart0_pins_default {
> +	bootph-pre-ram;
> +};

I think I just noticed that this node is only enabled in R5 dts for
j721e, though not required for cleanup in this series as we'll be
porting these tags to kernel anyways but the node is marked with
bootph-all in -u-boot.dtsi and the pins are only marked bootph-pre-ram.
Might be good to look at some other tags as well while porting these to
kernel [0].

Rest LGTM.

Reviewed-by: Manorit Chawdhry <m-chawdhry@ti.com>

[0]: https://lore.kernel.org/linux-arm-kernel/20240507-b4-upstream-bootph-all-v1-0-c6d52651856f@ti.com/

Regards,
Manorit

> -- 
> 2.34.1
>
diff mbox series

Patch

diff --git a/arch/arm/dts/k3-j721e-r5-beagleboneai64.dts b/arch/arm/dts/k3-j721e-r5-beagleboneai64.dts
index 43da4dafba8..4f97af4fd94 100644
--- a/arch/arm/dts/k3-j721e-r5-beagleboneai64.dts
+++ b/arch/arm/dts/k3-j721e-r5-beagleboneai64.dts
@@ -12,84 +12,8 @@ 
 #include "k3-j721e-ddr.dtsi"
 
 #include "k3-j721e-beagleboneai64-u-boot.dtsi"
+#include "k3-j721e-r5.dtsi"
 
-/ {
-	aliases {
-		remoteproc0 = &sysctrler;
-		remoteproc1 = &a72_0;
-	};
-
-	chosen {
-		tick-timer = &mcu_timer0;
-	};
-
-	a72_0: a72@0 {
-		compatible = "ti,am654-rproc";
-		reg = <0x0 0x00a90000 0x0 0x10>;
-		power-domains = <&k3_pds 61 TI_SCI_PD_EXCLUSIVE>,
-				<&k3_pds 202 TI_SCI_PD_EXCLUSIVE>,
-				<&k3_pds 4 TI_SCI_PD_EXCLUSIVE>;
-		resets = <&k3_reset 202 0>;
-		clocks = <&k3_clks 61 1>;
-		assigned-clocks = <&k3_clks 202 2>, <&k3_clks 61 1>;
-		assigned-clock-rates = <2000000000>, <200000000>;
-		ti,sci = <&dmsc>;
-		ti,sci-proc-id = <32>;
-		ti,sci-host-id = <10>;
-		bootph-pre-ram;
-	};
-
-	dm_tifs: dm-tifs {
-		compatible = "ti,j721e-dm-sci";
-		ti,host-id = <3>;
-		ti,secure-host;
-		mbox-names = "rx", "tx";
-		mboxes= <&secure_proxy_mcu 21>,
-				<&secure_proxy_mcu 23>;
-		bootph-pre-ram;
-	};
-};
-
-&dmsc {
-	mboxes= <&secure_proxy_mcu 6>,
-		<&secure_proxy_mcu 8>,
-		<&secure_proxy_mcu 5>;
-	mbox-names = "rx", "tx", "notify";
-	ti,host-id = <4>;
-	ti,secure-host;
-};
-
-&mcu_timer0 {
-	status = "okay";
-	bootph-pre-ram;
-};
-
-&secure_proxy_mcu {
-	bootph-pre-ram;
-	/* We require this for boot handshake */
-	status = "okay";
-};
-
-&cbass_mcu_wakeup {
-	sysctrler: sysctrler {
-		compatible = "ti,am654-system-controller";
-		mboxes= <&secure_proxy_mcu 4>, <&secure_proxy_mcu 5>;
-		mbox-names = "tx", "rx";
-		bootph-pre-ram;
-	};
-};
-
-&mcu_ringacc {
-	ti,sci = <&dm_tifs>;
-};
-
-&mcu_udmap {
-	ti,sci = <&dm_tifs>;
-};
-
-&wkup_uart0_pins_default {
-	bootph-pre-ram;
-};
 
 &wkup_i2c0 {
 	bootph-pre-ram;
diff --git a/arch/arm/dts/k3-j721e-r5-common-proc-board.dts b/arch/arm/dts/k3-j721e-r5-common-proc-board.dts
index 9655ca21d02..c7e344350c8 100644
--- a/arch/arm/dts/k3-j721e-r5-common-proc-board.dts
+++ b/arch/arm/dts/k3-j721e-r5-common-proc-board.dts
@@ -10,76 +10,7 @@ 
 #include "k3-j721e-ddr.dtsi"
 #include "k3-j721e-common-proc-board-u-boot.dtsi"
 
-/ {
-	chosen {
-		tick-timer = &mcu_timer0;
-	};
-
-	aliases {
-		remoteproc0 = &sysctrler;
-		remoteproc1 = &a72_0;
-	};
-
-	a72_0: a72@0 {
-		compatible = "ti,am654-rproc";
-		reg = <0x0 0x00a90000 0x0 0x10>;
-		power-domains = <&k3_pds 61 TI_SCI_PD_EXCLUSIVE>,
-				<&k3_pds 202 TI_SCI_PD_EXCLUSIVE>,
-				<&k3_pds 4 TI_SCI_PD_EXCLUSIVE>;
-		resets = <&k3_reset 202 0>;
-		clocks = <&k3_clks 61 1>;
-		assigned-clocks = <&k3_clks 202 2>, <&k3_clks 61 1>;
-		assigned-clock-rates = <2000000000>, <200000000>;
-		ti,sci = <&dmsc>;
-		ti,sci-proc-id = <32>;
-		ti,sci-host-id = <10>;
-		bootph-pre-ram;
-	};
-
-	dm_tifs: dm-tifs {
-		compatible = "ti,j721e-dm-sci";
-		ti,host-id = <3>;
-		ti,secure-host;
-		mbox-names = "rx", "tx";
-		mboxes= <&secure_proxy_mcu 21>,
-			<&secure_proxy_mcu 23>;
-		bootph-pre-ram;
-	};
-};
-
-&mcu_timer0 {
-	status = "okay";
-	bootph-pre-ram;
-};
-
-&dmsc {
-	mboxes= <&secure_proxy_mcu 8>, <&secure_proxy_mcu 6>, <&secure_proxy_mcu 5>;
-	mbox-names = "tx", "rx", "notify";
-	ti,host-id = <4>;
-	ti,secure-host;
-};
-
-&secure_proxy_mcu {
-	bootph-pre-ram;
-	status = "okay";
-};
-
-&cbass_mcu_wakeup {
-	sysctrler: sysctrler {
-		bootph-pre-ram;
-		compatible = "ti,am654-system-controller";
-		mboxes= <&secure_proxy_mcu 4>, <&secure_proxy_mcu 5>;
-		mbox-names = "tx", "rx";
-	};
-};
-
-&mcu_ringacc {
-	ti,sci = <&dm_tifs>;
-};
-
-&mcu_udmap {
-	ti,sci = <&dm_tifs>;
-};
+#include "k3-j721e-r5.dtsi"
 
 &wkup_i2c0 {
 	bootph-pre-ram;
@@ -111,10 +42,6 @@ 
 	};
 };
 
-&wkup_uart0_pins_default {
-	bootph-pre-ram;
-};
-
 &mcu_uart0_pins_default {
 	bootph-pre-ram;
 };
diff --git a/arch/arm/dts/k3-j721e-r5-sk.dts b/arch/arm/dts/k3-j721e-r5-sk.dts
index b0c108e9693..96a13b2cb2b 100644
--- a/arch/arm/dts/k3-j721e-r5-sk.dts
+++ b/arch/arm/dts/k3-j721e-r5-sk.dts
@@ -10,80 +10,7 @@ 
 #include "k3-j721e-ddr.dtsi"
 #include "k3-j721e-sk-u-boot.dtsi"
 
-/ {
-	chosen {
-		tick-timer = &mcu_timer0;
-	};
-
-	aliases {
-		remoteproc0 = &sysctrler;
-		remoteproc1 = &a72_0;
-	};
-
-	a72_0: a72@0 {
-		compatible = "ti,am654-rproc";
-		reg = <0x0 0x00a90000 0x0 0x10>;
-		power-domains = <&k3_pds 61 TI_SCI_PD_EXCLUSIVE>,
-				<&k3_pds 202 TI_SCI_PD_EXCLUSIVE>,
-				<&k3_pds 4 TI_SCI_PD_EXCLUSIVE>;
-		resets = <&k3_reset 202 0>;
-		clocks = <&k3_clks 61 1>;
-		assigned-clocks = <&k3_clks 202 2>, <&k3_clks 61 1>;
-		assigned-clock-rates = <2000000000>, <200000000>;
-		ti,sci = <&dmsc>;
-		ti,sci-proc-id = <32>;
-		ti,sci-host-id = <10>;
-		bootph-pre-ram;
-	};
-
-	dm_tifs: dm-tifs {
-		compatible = "ti,j721e-dm-sci";
-		ti,host-id = <3>;
-		ti,secure-host;
-		mbox-names = "rx", "tx";
-		mboxes= <&secure_proxy_mcu 21>,
-				<&secure_proxy_mcu 23>;
-		bootph-pre-ram;
-	};
-};
-
-&mcu_timer0 {
-	status = "okay";
-	bootph-pre-ram;
-};
-
-&secure_proxy_mcu {
-	bootph-pre-ram;
-	status = "okay";
-};
-
-&cbass_mcu_wakeup {
-	sysctrler: sysctrler {
-		bootph-pre-ram;
-		compatible = "ti,am654-system-controller";
-		mboxes= <&secure_proxy_mcu 4>, <&secure_proxy_mcu 5>;
-		mbox-names = "tx", "rx";
-	};
-};
-
-&dmsc {
-	mboxes= <&secure_proxy_mcu 8>, <&secure_proxy_mcu 6>, <&secure_proxy_mcu 5>;
-	mbox-names = "tx", "rx", "notify";
-	ti,host-id = <4>;
-	ti,secure-host;
-};
-
-&mcu_ringacc {
-	ti,sci = <&dm_tifs>;
-};
-
-&mcu_udmap {
-	ti,sci = <&dm_tifs>;
-};
-
-&wkup_uart0_pins_default {
-	bootph-pre-ram;
-};
+#include "k3-j721e-r5.dtsi"
 
 &mcu_uart0_pins_default {
 	bootph-pre-ram;
diff --git a/arch/arm/dts/k3-j721e-r5.dtsi b/arch/arm/dts/k3-j721e-r5.dtsi
new file mode 100644
index 00000000000..fd0d921272c
--- /dev/null
+++ b/arch/arm/dts/k3-j721e-r5.dtsi
@@ -0,0 +1,80 @@ 
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2024 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+/ {
+	chosen {
+		tick-timer = &mcu_timer0;
+	};
+
+	aliases {
+		remoteproc0 = &sysctrler;
+		remoteproc1 = &a72_0;
+	};
+
+	a72_0: a72@0 {
+		compatible = "ti,am654-rproc";
+		reg = <0x0 0x00a90000 0x0 0x10>;
+		power-domains = <&k3_pds 61 TI_SCI_PD_EXCLUSIVE>,
+				<&k3_pds 202 TI_SCI_PD_EXCLUSIVE>,
+				<&k3_pds 4 TI_SCI_PD_EXCLUSIVE>;
+		resets = <&k3_reset 202 0>;
+		clocks = <&k3_clks 61 1>;
+		assigned-clocks = <&k3_clks 202 2>, <&k3_clks 61 1>;
+		assigned-clock-rates = <2000000000>, <200000000>;
+		ti,sci = <&dmsc>;
+		ti,sci-proc-id = <32>;
+		ti,sci-host-id = <10>;
+		bootph-pre-ram;
+	};
+
+	dm_tifs: dm-tifs {
+		compatible = "ti,j721e-dm-sci";
+		ti,host-id = <3>;
+		ti,secure-host;
+		mbox-names = "rx", "tx";
+		mboxes= <&secure_proxy_mcu 21>,
+			<&secure_proxy_mcu 23>;
+		bootph-pre-ram;
+	};
+};
+
+&mcu_timer0 {
+	status = "okay";
+	bootph-pre-ram;
+};
+
+&dmsc {
+	mboxes= <&secure_proxy_mcu 8>, <&secure_proxy_mcu 6>, <&secure_proxy_mcu 5>;
+	mbox-names = "tx", "rx", "notify";
+	ti,host-id = <4>;
+	ti,secure-host;
+};
+
+&secure_proxy_mcu {
+	bootph-pre-ram;
+	/* We require this for boot handshake */
+	status = "okay";
+};
+
+&cbass_mcu_wakeup {
+	sysctrler: sysctrler {
+		bootph-pre-ram;
+		compatible = "ti,am654-system-controller";
+		mboxes= <&secure_proxy_mcu 4>, <&secure_proxy_mcu 5>;
+		mbox-names = "tx", "rx";
+	};
+};
+
+&mcu_ringacc {
+	ti,sci = <&dm_tifs>;
+};
+
+&mcu_udmap {
+	ti,sci = <&dm_tifs>;
+};
+
+&wkup_uart0_pins_default {
+	bootph-pre-ram;
+};