* [PATCH v4 1/4] arm64: dts: ti: k3-am62a7-sk: Split r5f memory region
2026-04-29 13:22 [PATCH v4 0/4] arm64: dts: ti: k3-am62a7-sk: Split r5f memory region Markus Schneider-Pargmann (TI)
@ 2026-04-29 13:22 ` Markus Schneider-Pargmann (TI)
2026-05-05 12:41 ` Nishanth Menon
2026-04-29 13:22 ` [PATCH v4 2/4] arm64: dts: ti: k3-am62p5-sk: " Markus Schneider-Pargmann (TI)
` (2 subsequent siblings)
3 siblings, 1 reply; 6+ messages in thread
From: Markus Schneider-Pargmann (TI) @ 2026-04-29 13:22 UTC (permalink / raw)
To: Bjorn Andersson, Mathieu Poirier, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Suman Anna, Nishanth Menon,
Vignesh Raghavendra, Tero Kristo
Cc: Vishal Mahaveer, Kevin Hilman, Dhruva Gole, Sebin Francis,
Kendall Willis, Akashdeep Kaur, linux-remoteproc, devicetree,
linux-kernel, linux-arm-kernel, Markus Schneider-Pargmann (TI)
Split the firmware memory region in more specific parts so it is better
described where to find which information. Specifically the LPM metadata
region is important as bootloader software like U-Boot has to know where
that data is to be able to read that data.
Signed-off-by: Markus Schneider-Pargmann (TI) <msp@baylibre.com>
---
arch/arm64/boot/dts/ti/k3-am62a7-sk.dts | 40 +++++++++++++++++++++++++++++++--
1 file changed, 38 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
index c1e9067b3bdd5ab0591541d4685bb17a5dac4f65..6f2ee93c7be141ee5ae3f1e3324d3a060db069f6 100644
--- a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
@@ -59,9 +59,33 @@ wkup_r5fss0_core0_dma_memory_region: memory@9c800000 {
no-map;
};
- wkup_r5fss0_core0_memory_region: memory@9c900000 {
+ wkup_r5fss0_core0_ipc_region: memory@9c900000 {
compatible = "shared-dma-pool";
- reg = <0x00 0x9c900000 0x00 0xf00000>;
+ reg = <0x00 0x9c900000 0x00 0x100000>;
+ no-map;
+ };
+
+ wkup_r5fss0_core0_lpm_fs_stub_region: memory@9ca00000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0x9ca00000 0x00 0x8000>;
+ no-map;
+ };
+
+ wkup_r5fss0_core0_lpm_metadata_region: memory@9ca08000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0x9ca08000 0x00 0x1000>;
+ no-map;
+ };
+
+ wkup_r5fss0_core0_lpm_rest_region: memory@9ca09000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0x9ca09000 0x00 0x97000>;
+ no-map;
+ };
+
+ wkup_r5fss0_core0_dm_region: memory@9caa0000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0x9caa0000 0x00 0xd60000>;
no-map;
};
@@ -933,3 +957,15 @@ &mcu_uart0 {
};
#include "k3-am62a-ti-ipc-firmware.dtsi"
+
+&wkup_r5fss0_core0 {
+ memory-region = <&wkup_r5fss0_core0_dma_memory_region>,
+ <&wkup_r5fss0_core0_ipc_region>,
+ <&wkup_r5fss0_core0_lpm_fs_stub_region>,
+ <&wkup_r5fss0_core0_lpm_metadata_region>,
+ <&wkup_r5fss0_core0_lpm_rest_region>,
+ <&wkup_r5fss0_core0_dm_region>;
+ memory-region-names = "dma", "ipc", "lpm-stub",
+ "lpm-metadata", "lpm-context",
+ "dm-firmware";
+};
--
2.53.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH v4 1/4] arm64: dts: ti: k3-am62a7-sk: Split r5f memory region
2026-04-29 13:22 ` [PATCH v4 1/4] " Markus Schneider-Pargmann (TI)
@ 2026-05-05 12:41 ` Nishanth Menon
0 siblings, 0 replies; 6+ messages in thread
From: Nishanth Menon @ 2026-05-05 12:41 UTC (permalink / raw)
To: Markus Schneider-Pargmann (TI)
Cc: Rob Herring, Conor Dooley, Vignesh Raghavendra, Mathieu Poirier,
Dhruva Gole, Akashdeep Kaur, Kevin Hilman, Bjorn Andersson,
linux-remoteproc, linux-kernel, Kendall Willis, devicetree,
Vishal Mahaveer, Sebin Francis, Krzysztof Kozlowski, Tero Kristo,
linux-arm-kernel
On 15:22-20260429, Markus Schneider-Pargmann (TI) wrote:
> Split the firmware memory region in more specific parts so it is better
> described where to find which information. Specifically the LPM metadata
> region is important as bootloader software like U-Boot has to know where
> that data is to be able to read that data.
>
> Signed-off-by: Markus Schneider-Pargmann (TI) <msp@baylibre.com>
> ---
> arch/arm64/boot/dts/ti/k3-am62a7-sk.dts | 40 +++++++++++++++++++++++++++++++--
> 1 file changed, 38 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
> index c1e9067b3bdd5ab0591541d4685bb17a5dac4f65..6f2ee93c7be141ee5ae3f1e3324d3a060db069f6 100644
> --- a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
> +++ b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
> @@ -59,9 +59,33 @@ wkup_r5fss0_core0_dma_memory_region: memory@9c800000 {
> no-map;
> };
>
> - wkup_r5fss0_core0_memory_region: memory@9c900000 {
> + wkup_r5fss0_core0_ipc_region: memory@9c900000 {
Looks like you have'nt addressed Vignesh's comments from previous
revision.
https://lore.kernel.org/all/DHS46FH9ZYZB.3BG6HVH832NAE@baylibre.com/
We dropped wkup_r5fss0_core0_memory_region here..
> #include "k3-am62a-ti-ipc-firmware.dtsi"
In this file:
https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux.git/tree/arch/arm64/boot/dts/ti/k3-am62a-ti-ipc-firmware.dtsi#n27
https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux.git/tree/arch/arm64/boot/dts/ti/k3-am62a-ti-ipc-firmware.dtsi#n68
I am not clear where wkup_r5fss0_core0_memory_region is now defined.
BUT, in the patch, we introduce:
> +
> +&wkup_r5fss0_core0 {
> + memory-region = <&wkup_r5fss0_core0_dma_memory_region>,
> + <&wkup_r5fss0_core0_ipc_region>,
> + <&wkup_r5fss0_core0_lpm_fs_stub_region>,
> + <&wkup_r5fss0_core0_lpm_metadata_region>,
> + <&wkup_r5fss0_core0_lpm_rest_region>,
> + <&wkup_r5fss0_core0_dm_region>;
> + memory-region-names = "dma", "ipc", "lpm-stub",
> + "lpm-metadata", "lpm-context",
> + "dm-firmware";
> +};
So we go ahead an override the definitions of ipc-firmware.dtsi for
wkup_r5fss0_core0 here - explaining why the build does'nt fail. I am
confused why the ipc firmware dtsi was'nt updated instead? is this
something different firmware dtsi now? if so, we should split the
ipc-firmware.dtsi accordingly. Commit message does'nt mention the same
either. This right solution is to make up our minds if ipc-firmware.dtsi
is meant for LPM mode support or not. if not, split the dtsi, if yes, do
the mods in the ipc.dtsi
--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D
https://ti.com/opensource
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v4 2/4] arm64: dts: ti: k3-am62p5-sk: Split r5f memory region
2026-04-29 13:22 [PATCH v4 0/4] arm64: dts: ti: k3-am62a7-sk: Split r5f memory region Markus Schneider-Pargmann (TI)
2026-04-29 13:22 ` [PATCH v4 1/4] " Markus Schneider-Pargmann (TI)
@ 2026-04-29 13:22 ` Markus Schneider-Pargmann (TI)
2026-04-29 13:22 ` [PATCH v4 3/4] arm64: dts: ti: k3-am62a7-sk: Add r5f nodes to pre-ram bootphase Markus Schneider-Pargmann (TI)
2026-04-29 13:22 ` [PATCH v4 4/4] arm64: dts: ti: k3-am62p5-sk: " Markus Schneider-Pargmann (TI)
3 siblings, 0 replies; 6+ messages in thread
From: Markus Schneider-Pargmann (TI) @ 2026-04-29 13:22 UTC (permalink / raw)
To: Bjorn Andersson, Mathieu Poirier, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Suman Anna, Nishanth Menon,
Vignesh Raghavendra, Tero Kristo
Cc: Vishal Mahaveer, Kevin Hilman, Dhruva Gole, Sebin Francis,
Kendall Willis, Akashdeep Kaur, linux-remoteproc, devicetree,
linux-kernel, linux-arm-kernel, Markus Schneider-Pargmann (TI)
Split the firmware memory region in more specific parts so it is better
described where to find which information. Specifically the LPM metadata
region is important as bootloader software like U-Boot has to know where
that data is to be able to read that data.
Signed-off-by: Markus Schneider-Pargmann (TI) <msp@baylibre.com>
---
arch/arm64/boot/dts/ti/k3-am62p5-sk.dts | 40 +++++++++++++++++++++++++++++++--
1 file changed, 38 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts b/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
index b770ed82be9d8f5827c49ed871351a6423db8026..e67489a178f2a2caedf1306e1c1c9dd6a95745e6 100644
--- a/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
@@ -55,9 +55,33 @@ wkup_r5fss0_core0_dma_memory_region: memory@9c800000 {
no-map;
};
- wkup_r5fss0_core0_memory_region: memory@9c900000 {
+ wkup_r5fss0_core0_ipc_region: memory@9c900000 {
compatible = "shared-dma-pool";
- reg = <0x00 0x9c900000 0x00 0xf00000>;
+ reg = <0x00 0x9c900000 0x00 0x100000>;
+ no-map;
+ };
+
+ wkup_r5fss0_core0_lpm_fs_stub_region: memory@9ca00000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0x9ca00000 0x00 0x8000>;
+ no-map;
+ };
+
+ wkup_r5fss0_core0_lpm_metadata_region: memory@9ca08000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0x9ca08000 0x00 0x1000>;
+ no-map;
+ };
+
+ wkup_r5fss0_core0_lpm_rest_region: memory@9ca09000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0x9ca09000 0x00 0x97000>;
+ no-map;
+ };
+
+ wkup_r5fss0_core0_dm_region: memory@9caa0000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0x9caa0000 0x00 0xd60000>;
no-map;
};
@@ -844,3 +868,15 @@ &mcu_uart0 {
};
#include "k3-am62p-ti-ipc-firmware.dtsi"
+
+&wkup_r5fss0_core0 {
+ memory-region = <&wkup_r5fss0_core0_dma_memory_region>,
+ <&wkup_r5fss0_core0_ipc_region>,
+ <&wkup_r5fss0_core0_lpm_fs_stub_region>,
+ <&wkup_r5fss0_core0_lpm_metadata_region>,
+ <&wkup_r5fss0_core0_lpm_rest_region>,
+ <&wkup_r5fss0_core0_dm_region>;
+ memory-region-names = "dma", "ipc", "lpm-stub",
+ "lpm-metadata", "lpm-context",
+ "dm-firmware";
+};
--
2.53.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* [PATCH v4 3/4] arm64: dts: ti: k3-am62a7-sk: Add r5f nodes to pre-ram bootphase
2026-04-29 13:22 [PATCH v4 0/4] arm64: dts: ti: k3-am62a7-sk: Split r5f memory region Markus Schneider-Pargmann (TI)
2026-04-29 13:22 ` [PATCH v4 1/4] " Markus Schneider-Pargmann (TI)
2026-04-29 13:22 ` [PATCH v4 2/4] arm64: dts: ti: k3-am62p5-sk: " Markus Schneider-Pargmann (TI)
@ 2026-04-29 13:22 ` Markus Schneider-Pargmann (TI)
2026-04-29 13:22 ` [PATCH v4 4/4] arm64: dts: ti: k3-am62p5-sk: " Markus Schneider-Pargmann (TI)
3 siblings, 0 replies; 6+ messages in thread
From: Markus Schneider-Pargmann (TI) @ 2026-04-29 13:22 UTC (permalink / raw)
To: Bjorn Andersson, Mathieu Poirier, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Suman Anna, Nishanth Menon,
Vignesh Raghavendra, Tero Kristo
Cc: Vishal Mahaveer, Kevin Hilman, Dhruva Gole, Sebin Francis,
Kendall Willis, Akashdeep Kaur, linux-remoteproc, devicetree,
linux-kernel, linux-arm-kernel, Markus Schneider-Pargmann (TI)
For IO+DDR the wkup_r5fss0_core0 and the
wkup_r5fss0_core0_lpm_metadata_region need to be accessed before RAM
setup is done. These are used to read the lpm metadata region in which
data is stored to resume. This needs to be done before RAM is in use to
avoid overwriting data.
Signed-off-by: Markus Schneider-Pargmann (TI) <msp@baylibre.com>
---
arch/arm64/boot/dts/ti/k3-am62a7-sk.dts | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
index 6f2ee93c7be141ee5ae3f1e3324d3a060db069f6..5155f093437f35d815b2bf62429b57c9d8672290 100644
--- a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
@@ -75,6 +75,7 @@ wkup_r5fss0_core0_lpm_metadata_region: memory@9ca08000 {
compatible = "shared-dma-pool";
reg = <0x00 0x9ca08000 0x00 0x1000>;
no-map;
+ bootph-pre-ram;
};
wkup_r5fss0_core0_lpm_rest_region: memory@9ca09000 {
@@ -968,4 +969,5 @@ &wkup_r5fss0_core0 {
memory-region-names = "dma", "ipc", "lpm-stub",
"lpm-metadata", "lpm-context",
"dm-firmware";
+ bootph-pre-ram;
};
--
2.53.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* [PATCH v4 4/4] arm64: dts: ti: k3-am62p5-sk: Add r5f nodes to pre-ram bootphase
2026-04-29 13:22 [PATCH v4 0/4] arm64: dts: ti: k3-am62a7-sk: Split r5f memory region Markus Schneider-Pargmann (TI)
` (2 preceding siblings ...)
2026-04-29 13:22 ` [PATCH v4 3/4] arm64: dts: ti: k3-am62a7-sk: Add r5f nodes to pre-ram bootphase Markus Schneider-Pargmann (TI)
@ 2026-04-29 13:22 ` Markus Schneider-Pargmann (TI)
3 siblings, 0 replies; 6+ messages in thread
From: Markus Schneider-Pargmann (TI) @ 2026-04-29 13:22 UTC (permalink / raw)
To: Bjorn Andersson, Mathieu Poirier, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Suman Anna, Nishanth Menon,
Vignesh Raghavendra, Tero Kristo
Cc: Vishal Mahaveer, Kevin Hilman, Dhruva Gole, Sebin Francis,
Kendall Willis, Akashdeep Kaur, linux-remoteproc, devicetree,
linux-kernel, linux-arm-kernel, Markus Schneider-Pargmann (TI)
For IO+DDR the wkup_r5fss0_core0 and the
wkup_r5fss0_core0_lpm_metadata_region need to be accessed before RAM
setup is done. These are used to read the lpm metadata region in which
data is stored to resume. This needs to be done before RAM is in use to
avoid overwriting data.
Signed-off-by: Markus Schneider-Pargmann (TI) <msp@baylibre.com>
---
arch/arm64/boot/dts/ti/k3-am62p5-sk.dts | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts b/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
index e67489a178f2a2caedf1306e1c1c9dd6a95745e6..b4a4e427637bb4d5ca408d29234b95fe7e69d006 100644
--- a/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
@@ -71,6 +71,7 @@ wkup_r5fss0_core0_lpm_metadata_region: memory@9ca08000 {
compatible = "shared-dma-pool";
reg = <0x00 0x9ca08000 0x00 0x1000>;
no-map;
+ bootph-pre-ram;
};
wkup_r5fss0_core0_lpm_rest_region: memory@9ca09000 {
@@ -879,4 +880,5 @@ &wkup_r5fss0_core0 {
memory-region-names = "dma", "ipc", "lpm-stub",
"lpm-metadata", "lpm-context",
"dm-firmware";
+ bootph-pre-ram;
};
--
2.53.0
^ permalink raw reply related [flat|nested] 6+ messages in thread