mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 0/2] Add R5F and C7x DSP nodes for AM62a SoC
@ 2023-05-02 14:14 Hari Nagalla
  2023-05-02 14:14 ` [PATCH 1/2] arm64: dts: ti: k3-am62a: Add remote proc nodes Hari Nagalla
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Hari Nagalla @ 2023-05-02 14:14 UTC (permalink / raw)
  To: nm, vigneshr
  Cc: kristo, robh+dt, krzysztof.kozlowski+dt, linux-arm-kernel,
	devicetree, linux-kernel

This series adds the R5F processor nodes and C7x DSP node for
AM62a SoC.

The first patch adds the nodes to the SoC device tree and the second
patch reserves the memory for remote rpoc IPCs on AM62a-SK.

Hari Nagalla (2):
  arm64: dts: ti: k3-am62a: Add remote proc nodes
  arm64: dts: ti: k3-am62a7-sk: Enable remote proc nodes

 arch/arm64/boot/dts/ti/k3-am62a-main.dtsi   | 11 ++++
 arch/arm64/boot/dts/ti/k3-am62a-mcu.dtsi    | 23 +++++++
 arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi | 23 +++++++
 arch/arm64/boot/dts/ti/k3-am62a7-sk.dts     | 69 +++++++++++++++++++++
 4 files changed, 126 insertions(+)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 1/2] arm64: dts: ti: k3-am62a: Add remote proc nodes
  2023-05-02 14:14 [PATCH 0/2] Add R5F and C7x DSP nodes for AM62a SoC Hari Nagalla
@ 2023-05-02 14:14 ` Hari Nagalla
  2023-05-02 14:14 ` [PATCH 2/2] arm64: dts: ti: k3-am62a7-sk: Enable " Hari Nagalla
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Hari Nagalla @ 2023-05-02 14:14 UTC (permalink / raw)
  To: nm, vigneshr
  Cc: kristo, robh+dt, krzysztof.kozlowski+dt, linux-arm-kernel,
	devicetree, linux-kernel

AM62A SoC devices have a C7x DSP in main voltage domain and two single
core R5F processors in MCU and Wakeup domains respectively. The C7x
DSP subsystem has various accelerators for Deep learning purposes. The
R5F processor in wakeup domain is used as a device manager for the SoC.

Signed-off-by: Jai Luthra <j-luthra@ti.com>
Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
Signed-off-by: Hari Nagalla <hnagalla@ti.com>
---
 arch/arm64/boot/dts/ti/k3-am62a-main.dtsi   | 11 ++++++++++
 arch/arm64/boot/dts/ti/k3-am62a-mcu.dtsi    | 23 +++++++++++++++++++++
 arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi | 23 +++++++++++++++++++++
 3 files changed, 57 insertions(+)

diff --git a/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
index 393a1a40b68b..81a017b2f2b2 100644
--- a/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
@@ -660,4 +660,15 @@ ecap2: pwm@23120000 {
 		clock-names = "fck";
 		status = "disabled";
 	};
+
+	c7x_0: dsp@7e000000 {
+		compatible = "ti,am62a-c7xv-dsp";
+		reg = <0x00 0x7e000000 0x00 0x00100000>;
+		reg-names = "l2sram";
+		ti,sci = <&dmsc>;
+		ti,sci-dev-id = <208>;
+		ti,sci-proc-ids = <0x04 0xff>;
+		resets = <&k3_reset 208 1>;
+		firmware-name = "am62a-c71_0-fw";
+	};
 };
diff --git a/arch/arm64/boot/dts/ti/k3-am62a-mcu.dtsi b/arch/arm64/boot/dts/ti/k3-am62a-mcu.dtsi
index 2bb813e784a2..605df62d1d28 100644
--- a/arch/arm64/boot/dts/ti/k3-am62a-mcu.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62a-mcu.dtsi
@@ -87,4 +87,27 @@ mcu_gpio0: gpio@4201000 {
 		clock-names = "gpio";
 		status = "disabled";
 	};
+
+	mcu_r5fss0: r5fss@79000000 {
+		compatible = "ti,am62-r5fss";
+		#address-cells = <1>;
+		#size-cells = <1>;
+		ranges = <0x79000000 0x00 0x79000000 0x8000>,
+			 <0x79020000 0x00 0x79020000 0x8000>;
+		power-domains = <&k3_pds 7 TI_SCI_PD_EXCLUSIVE>;
+		mcu_r5fss0_core0: r5f@79000000 {
+			compatible = "ti,am62-r5f";
+			reg = <0x79000000 0x00008000>,
+				<0x79020000 0x00008000>;
+			reg-names = "atcm", "btcm";
+			ti,sci = <&dmsc>;
+			ti,sci-dev-id = <9>;
+			ti,sci-proc-ids = <0x03 0xff>;
+			resets = <&k3_reset 9 1>;
+			firmware-name = "am62a-mcu-r5f0_0-fw";
+			ti,atcm-enable = <0>;
+			ti,btcm-enable = <1>;
+			ti,loczrama = <0>;
+		};
+	};
 };
diff --git a/arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi b/arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi
index 81d984414fd4..c75f6e59dff3 100644
--- a/arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi
@@ -51,4 +51,27 @@ wkup_rtc0: rtc@2b1f0000 {
 		wakeup-source;
 		status = "disabled";
 	};
+
+	wkup_r5fss0: r5fss@78000000 {
+		compatible = "ti,am62-r5fss";
+		#address-cells = <1>;
+		#size-cells = <1>;
+		ranges = <0x78000000 0x00 0x78000000 0x8000>,
+			 <0x78100000 0x00 0x78100000 0x8000>;
+		power-domains = <&k3_pds 119 TI_SCI_PD_EXCLUSIVE>;
+		wkup_r5fss0_core0: r5f@78000000 {
+			compatible = "ti,am62-r5f";
+			reg = <0x78000000 0x00008000>,
+				<0x78100000 0x00008000>;
+			reg-names = "atcm", "btcm";
+			ti,sci = <&dmsc>;
+			ti,sci-dev-id = <121>;
+			ti,sci-proc-ids = <0x01 0xff>;
+			resets = <&k3_reset 121 1>;
+			firmware-name = "am62-wkup-r5f0_0-fw";
+			ti,atcm-enable = <1>;
+			ti,btcm-enable = <1>;
+			ti,loczrama = <1>;
+		};
+	};
 };
-- 
2.34.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 2/2] arm64: dts: ti: k3-am62a7-sk: Enable remote proc nodes
  2023-05-02 14:14 [PATCH 0/2] Add R5F and C7x DSP nodes for AM62a SoC Hari Nagalla
  2023-05-02 14:14 ` [PATCH 1/2] arm64: dts: ti: k3-am62a: Add remote proc nodes Hari Nagalla
@ 2023-05-02 14:14 ` Hari Nagalla
  2023-05-09 16:34 ` [PATCH 0/2] Add R5F and C7x DSP nodes for AM62a SoC Devarsh Thakkar
  2023-06-15  5:22 ` Vignesh Raghavendra
  3 siblings, 0 replies; 5+ messages in thread
From: Hari Nagalla @ 2023-05-02 14:14 UTC (permalink / raw)
  To: nm, vigneshr
  Cc: kristo, robh+dt, krzysztof.kozlowski+dt, linux-arm-kernel,
	devicetree, linux-kernel

Reserve memory for remote rpoc IPC and bind the mailbox assignments
for each remote proc. Two memory regions are reserved for each
remote processor. The first region of 1Mb of memory is used for Vring
shared buffers and the second region is used as external memory to the
remote processor, resource table and as tracebuffer.

Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
Signed-off-by: Hari Nagalla <hnagalla@ti.com>
---
 arch/arm64/boot/dts/ti/k3-am62a7-sk.dts | 69 +++++++++++++++++++++++++
 1 file changed, 69 insertions(+)

diff --git a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
index f6a67f072dca..231ff393e241 100644
--- a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts
@@ -49,11 +49,41 @@ secure_ddr: optee@9e800000 {
 			no-map;
 		};
 
+		wkup_r5fss0_core0_dma_memory_region: r5f-dma-memory@9c800000 {
+			compatible = "shared-dma-pool";
+			reg = <0x00 0x9c800000 0x00 0x100000>;
+			no-map;
+		};
+
 		wkup_r5fss0_core0_memory_region: r5f-dma-memory@9c900000 {
 			compatible = "shared-dma-pool";
 			reg = <0x00 0x9c900000 0x00 0x01e00000>;
 			no-map;
 		};
+
+		mcu_r5fss0_core0_dma_memory_region: r5f-dma-memory@9b800000 {
+			compatible = "shared-dma-pool";
+			reg = <0x00 0x9b800000 0x00 0x100000>;
+			no-map;
+		};
+
+		mcu_r5fss0_core0_memory_region: r5f-dma-memory@9b900000 {
+			compatible = "shared-dma-pool";
+			reg = <0x00 0x9b900000 0x00 0x0f00000>;
+			no-map;
+		};
+
+		c7x_0_dma_memory_region: c7x-dma-memory@99800000 {
+			compatible = "shared-dma-pool";
+			reg = <0x00 0x99800000 0x00 0x100000>;
+			no-map;
+		};
+
+		c7x_0_memory_region: c7x-memory@99900000 {
+			compatible = "shared-dma-pool";
+			reg = <0x00 0x99900000 0x00 0x01efffff>;
+			no-map;
+		};
 	};
 
 	vmain_pd: regulator-0 {
@@ -292,3 +322,42 @@ cpsw3g_phy0: ethernet-phy@0 {
 		ti,min-output-impedance;
 	};
 };
+
+&mailbox0_cluster0 {
+	mbox_r5_0: mbox-r5-0 {
+		ti,mbox-rx = <0 0 0>;
+		ti,mbox-tx = <1 0 0>;
+	};
+};
+
+&mailbox0_cluster1 {
+	mbox_c7x_0: mbox-c7x-0 {
+		ti,mbox-rx = <0 0 0>;
+		ti,mbox-tx = <1 0 0>;
+	};
+};
+
+&mailbox0_cluster2 {
+	mbox_mcu_r5_0: mbox-mcu_r5-0 {
+		ti,mbox-rx = <0 0 0>;
+		ti,mbox-tx = <1 0 0>;
+	};
+};
+
+&c7x_0 {
+	mboxes = <&mailbox0_cluster1 &mbox_c7x_0>;
+	memory-region = <&c7x_0_dma_memory_region>,
+			<&c7x_0_memory_region>;
+};
+
+&wkup_r5fss0_core0 {
+	mboxes = <&mailbox0_cluster0 &mbox_r5_0>;
+	memory-region = <&wkup_r5fss0_core0_dma_memory_region>,
+		<&wkup_r5fss0_core0_memory_region>;
+};
+
+&mcu_r5fss0_core0 {
+	mboxes = <&mailbox0_cluster2 &mbox_mcu_r5_0>;
+	memory-region = <&mcu_r5fss0_core0_dma_memory_region>,
+			<&mcu_r5fss0_core0_memory_region>;
+};
-- 
2.34.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 0/2] Add R5F and C7x DSP nodes for AM62a SoC
  2023-05-02 14:14 [PATCH 0/2] Add R5F and C7x DSP nodes for AM62a SoC Hari Nagalla
  2023-05-02 14:14 ` [PATCH 1/2] arm64: dts: ti: k3-am62a: Add remote proc nodes Hari Nagalla
  2023-05-02 14:14 ` [PATCH 2/2] arm64: dts: ti: k3-am62a7-sk: Enable " Hari Nagalla
@ 2023-05-09 16:34 ` Devarsh Thakkar
  2023-06-15  5:22 ` Vignesh Raghavendra
  3 siblings, 0 replies; 5+ messages in thread
From: Devarsh Thakkar @ 2023-05-09 16:34 UTC (permalink / raw)
  To: Hari Nagalla, nm, vigneshr
  Cc: kristo, robh+dt, krzysztof.kozlowski+dt, linux-arm-kernel,
	devicetree, linux-kernel

Hi Hari,

Thanks for the series.

On 02/05/23 19:44, Hari Nagalla wrote:
> This series adds the R5F processor nodes and C7x DSP node for
> AM62a SoC.
> 
> The first patch adds the nodes to the SoC device tree and the second
> patch reserves the memory for remote rpoc IPCs on AM62a-SK.
> 
> Hari Nagalla (2):
>    arm64: dts: ti: k3-am62a: Add remote proc nodes
>    arm64: dts: ti: k3-am62a7-sk: Enable remote proc nodes
> 

I think good to preserve the authorship if porting from an existing 
tree. Also in my opinion good to keep split patches if coming from 
different authors and to different files.

Regards
Devarsh

>   arch/arm64/boot/dts/ti/k3-am62a-main.dtsi   | 11 ++++
>   arch/arm64/boot/dts/ti/k3-am62a-mcu.dtsi    | 23 +++++++
>   arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi | 23 +++++++
>   arch/arm64/boot/dts/ti/k3-am62a7-sk.dts     | 69 +++++++++++++++++++++
>   4 files changed, 126 insertions(+)
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 0/2] Add R5F and C7x DSP nodes for AM62a SoC
  2023-05-02 14:14 [PATCH 0/2] Add R5F and C7x DSP nodes for AM62a SoC Hari Nagalla
                   ` (2 preceding siblings ...)
  2023-05-09 16:34 ` [PATCH 0/2] Add R5F and C7x DSP nodes for AM62a SoC Devarsh Thakkar
@ 2023-06-15  5:22 ` Vignesh Raghavendra
  3 siblings, 0 replies; 5+ messages in thread
From: Vignesh Raghavendra @ 2023-06-15  5:22 UTC (permalink / raw)
  To: Hari Nagalla, nm
  Cc: kristo, robh+dt, krzysztof.kozlowski+dt, linux-arm-kernel,
	devicetree, linux-kernel



On 02/05/23 19:44, Hari Nagalla wrote:
> This series adds the R5F processor nodes and C7x DSP node for
> AM62a SoC.
> 
> The first patch adds the nodes to the SoC device tree and the second
> patch reserves the memory for remote rpoc IPCs on AM62a-SK.
> 
> Hari Nagalla (2):
>   arm64: dts: ti: k3-am62a: Add remote proc nodes
>   arm64: dts: ti: k3-am62a7-sk: Enable remote proc nodes
> 
>  arch/arm64/boot/dts/ti/k3-am62a-main.dtsi   | 11 ++++
>  arch/arm64/boot/dts/ti/k3-am62a-mcu.dtsi    | 23 +++++++
>  arch/arm64/boot/dts/ti/k3-am62a-wakeup.dtsi | 23 +++++++
>  arch/arm64/boot/dts/ti/k3-am62a7-sk.dts     | 69 +++++++++++++++++++++
>  4 files changed, 126 insertions(+)
> 

Please fix dtbs_check issues:

+arch/arm64/boot/dts/ti/k3-am62a7-sk.dts: /bus@f0000/mailbox@29020000/mbox-mcu_r5-0: Character '_' not recommended in node name
+/workdir/arch/arm64/boot/dts/ti/k3-am62a7-sk.dtb: dsp@7e000000: reg: [[0, 2113929216, 0, 1048576]] is too short
+/workdir/arch/arm64/boot/dts/ti/k3-am62a7-sk.dtb: dsp@7e000000: reg-names: ['l2sram'] is too short
+/workdir/arch/arm64/boot/dts/ti/k3-am62a7-sk.dtb: dsp@7e000000: Unevaluated properties are not allowed ('reg', 'reg-names' were unexpected)
+arch/arm64/boot/dts/ti/k3-am62a7-sk.dts: /bus@f0000/mailbox@29020000/mbox-mcu_r5-0: Character '_' not recommended in node name
+/workdir/arch/arm64/boot/dts/ti/k3-am62a7-sk.dtb: mailbox@29020000: 'mbox-mcu_r5-0' does not match any of the regexes: '^mbox-[a-z0-9-]+$', 'pinctrl-[0-9]+'


-- 
Regards
Vignesh

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2023-06-15  5:22 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-02 14:14 [PATCH 0/2] Add R5F and C7x DSP nodes for AM62a SoC Hari Nagalla
2023-05-02 14:14 ` [PATCH 1/2] arm64: dts: ti: k3-am62a: Add remote proc nodes Hari Nagalla
2023-05-02 14:14 ` [PATCH 2/2] arm64: dts: ti: k3-am62a7-sk: Enable " Hari Nagalla
2023-05-09 16:34 ` [PATCH 0/2] Add R5F and C7x DSP nodes for AM62a SoC Devarsh Thakkar
2023-06-15  5:22 ` Vignesh Raghavendra

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®