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.
Reviewed-by: Bryan Brattlof <[email protected]> Reviewed-by: Kendall Willis <[email protected]> Signed-off-by: Markus Schneider-Pargmann (TI) <[email protected]> Reviewed-by: Stefano Radaelli <[email protected]> Link: https://patch.msgid.link/20260918-topic-am62a-ioddr-dt-v6-19-v9-8-40972ef1f...@baylibre.com Signed-off-by: Nishanth Menon <[email protected]> [ upstream commit: 46b7261c2bad842e8b9a25106c132bb8ae83d634 ] (cherry picked from commit 2570b94c6492ba7000ba0135ffed167af952c1a8) Signed-off-by: Markus Schneider-Pargmann (TI) <[email protected]> --- .../src/arm64/ti/k3-am62p-ti-ipc-firmware.dtsi | 10 ++++++-- dts/upstream/src/arm64/ti/k3-am62p-verdin.dtsi | 28 ++++++++++++++++++++-- dts/upstream/src/arm64/ti/k3-am62p5-sk.dts | 28 ++++++++++++++++++++-- dts/upstream/src/arm64/ti/k3-am62p5-var-som.dtsi | 28 ++++++++++++++++++++-- 4 files changed, 86 insertions(+), 8 deletions(-) diff --git a/dts/upstream/src/arm64/ti/k3-am62p-ti-ipc-firmware.dtsi b/dts/upstream/src/arm64/ti/k3-am62p-ti-ipc-firmware.dtsi index 5d7f701420e2..84dfbfd1986c 100644 --- a/dts/upstream/src/arm64/ti/k3-am62p-ti-ipc-firmware.dtsi +++ b/dts/upstream/src/arm64/ti/k3-am62p-ti-ipc-firmware.dtsi @@ -44,8 +44,14 @@ &wkup_r5fss0_core0 { mboxes = <&mailbox0_cluster0 &mbox_r5_0>; memory-region = <&wkup_r5fss0_core0_dma_memory_region>, - <&wkup_r5fss0_core0_memory_region>; - memory-region-names = "dma", "firmware"; + <&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"; status = "okay"; }; diff --git a/dts/upstream/src/arm64/ti/k3-am62p-verdin.dtsi b/dts/upstream/src/arm64/ti/k3-am62p-verdin.dtsi index 8a5ff5c45757..45ab9d947b3a 100644 --- a/dts/upstream/src/arm64/ti/k3-am62p-verdin.dtsi +++ b/dts/upstream/src/arm64/ti/k3-am62p-verdin.dtsi @@ -168,9 +168,33 @@ no-map; }; - wkup_r5fss0_core0_memory_region: memory@9c900000 { + wkup_r5fss0_core0_ipc_region: memory@9c900000 { compatible = "shared-dma-pool"; - reg = <0x00 0x9c900000 0x00 0x01d08000>; + 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 0x1b68000>; no-map; }; }; diff --git a/dts/upstream/src/arm64/ti/k3-am62p5-sk.dts b/dts/upstream/src/arm64/ti/k3-am62p5-sk.dts index b8af9ec81b0c..bb027c65eddd 100644 --- a/dts/upstream/src/arm64/ti/k3-am62p5-sk.dts +++ b/dts/upstream/src/arm64/ti/k3-am62p5-sk.dts @@ -55,9 +55,33 @@ no-map; }; - wkup_r5fss0_core0_memory_region: memory@9c900000 { + wkup_r5fss0_core0_ipc_region: memory@9c900000 { compatible = "shared-dma-pool"; - reg = <0x00 0x9c900000 0x00 0x1d08000>; + 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 0x1b68000>; no-map; }; diff --git a/dts/upstream/src/arm64/ti/k3-am62p5-var-som.dtsi b/dts/upstream/src/arm64/ti/k3-am62p5-var-som.dtsi index 3d1a2c5bc464..31f670fdd91d 100644 --- a/dts/upstream/src/arm64/ti/k3-am62p5-var-som.dtsi +++ b/dts/upstream/src/arm64/ti/k3-am62p5-var-som.dtsi @@ -69,9 +69,33 @@ no-map; }; - wkup_r5fss0_core0_memory_region: r5f-memory@9c900000 { + wkup_r5fss0_core0_ipc_region: r5f-memory@9c900000 { compatible = "shared-dma-pool"; - reg = <0x00 0x9c900000 0x00 0x01d08000>; + reg = <0x00 0x9c900000 0x00 0x100000>; + no-map; + }; + + wkup_r5fss0_core0_lpm_fs_stub_region: r5f-memory@9ca00000 { + compatible = "shared-dma-pool"; + reg = <0x00 0x9ca00000 0x00 0x8000>; + no-map; + }; + + wkup_r5fss0_core0_lpm_metadata_region: r5f-memory@9ca08000 { + compatible = "shared-dma-pool"; + reg = <0x00 0x9ca08000 0x00 0x1000>; + no-map; + }; + + wkup_r5fss0_core0_lpm_rest_region: r5f-memory@9ca09000 { + compatible = "shared-dma-pool"; + reg = <0x00 0x9ca09000 0x00 0x97000>; + no-map; + }; + + wkup_r5fss0_core0_dm_region: r5f-memory@9caa0000 { + compatible = "shared-dma-pool"; + reg = <0x00 0x9caa0000 0x00 0x1b68000>; no-map; }; -- 2.55.0
