On 23:45-20230807, Hari Nagalla wrote:
> The AM62x SoCs of the TI K3 family have a Cortex M4F core in the MCU
> domain. This core can be used by non safety applications as a remote
> processor. When used as a remote processor with virtio/rpmessage IPC,
> two carveout reserved memory nodes are needed. The first region is used
> as a DMA pool for the rproc device, and the second region will furnish
> the static carveout regions for the firmware memory.
>
> The current carveout addresses and sizes are defined statically for
> each rproc device. The M4F processor do not have an MMU, and as such
> require the exact memory used by the firmware to be set-aside.
>
> Signed-off-by: Hari Nagalla <[email protected]>
> ---
> Changes in v5:
> - Add the M4F device tree node patches to the patch list
This will need to be reviewed after driver changes are complete and
should go through the SoC tree.
>
> arch/arm64/boot/dts/ti/k3-am62-mcu.dtsi | 12 ++++++++++++
> .../arm64/boot/dts/ti/k3-am62x-sk-common.dtsi | 19 +++++++++++++++++++
> 2 files changed, 31 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/ti/k3-am62-mcu.dtsi b/arch/arm64/boot/dts/ti/k3-am62-mcu.dtsi
> index 80a3e1db26a9..4b55df1da751 100644
> --- a/arch/arm64/boot/dts/ti/k3-am62-mcu.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-am62-mcu.dtsi
> @@ -171,4 +171,16 @@ mcu_mcan1: can@4e18000 {
> bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
> status = "disabled";
> };
> +
> + mcu_m4fss: m4fss@5000000 {
> + compatible = "ti,am64-m4fss";
> + reg = <0x00 0x5000000 0x00 0x30000>,
> + <0x00 0x5040000 0x00 0x10000>;
> + reg-names = "iram", "dram";
> + ti,sci = <&dmsc>;
> + ti,sci-dev-id = <9>;
> + ti,sci-proc-ids = <0x18 0xff>;
> + resets = <&k3_reset 9 1>;
> + firmware-name = "am62-mcu-m4f0_0-fw";
> + };
> };
> diff --git a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
> index 34c8ffc553ec..ffca61fcf9ba 100644
> --- a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
> @@ -47,6 +47,18 @@ ramoops@9ca00000 {
> pmsg-size = <0x8000>;
> };
>
> + mcu_m4fss_dma_memory_region: m4f-dma-memory@9cb00000 {
> + compatible = "shared-dma-pool";
> + reg = <0x00 0x9cb00000 0x00 0x100000>;
> + no-map;
> + };
> +
> + mcu_m4fss_memory_region: m4f-memory@9cc00000 {
> + compatible = "shared-dma-pool";
> + reg = <0x00 0x9cc00000 0x00 0xe00000>;
> + no-map;
> + };
> +
> secure_tfa_ddr: tfa@9e780000 {
> reg = <0x00 0x9e780000 0x00 0x80000>;
> alignment = <0x1000>;
> @@ -362,6 +374,13 @@ mbox_m4_0: mbox-m4-0 {
> };
> };
>
> +&mcu_m4fss {
> + mboxes = <&mailbox0_cluster0>, <&mbox_m4_0>;
> + memory-region = <&mcu_m4fss_dma_memory_region>,
> + <&mcu_m4fss_memory_region>;
> + sram = <&oc_sram>;
> +};
> +
> &usbss0 {
> status = "okay";
> ti,vbus-divider;
> --
> 2.34.1
>
--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D