* [PATCH v4 0/2] Add Remoteproc Support for TI's J722S SoCs
@ 2024-08-29 6:09 Beleswar Padhi
2024-08-29 6:09 ` [PATCH v4 1/2] arm64: dts: ti: k3-j722s-main: Add R5F and C7x remote processor nodes Beleswar Padhi
2024-08-29 6:09 ` [PATCH v4 2/2] arm64: dts: ti: k3-j722s-evm: Enable Inter-Processor Communication Beleswar Padhi
0 siblings, 2 replies; 6+ messages in thread
From: Beleswar Padhi @ 2024-08-29 6:09 UTC (permalink / raw)
To: nm, vigneshr, kristo, robh, krzk+dt, conor+dt
Cc: u-kumar1, j-choudhary, vaishnav.a, afd, devicetree, linux-kernel,
linux-arm-kernel
Hello All,
The K3 J722S SoCs have one single-core Arm Cortex-R5F processor in each
of the WAKEUP, MCU and MAIN voltage domain, and two C71x DSP subsystems
in MAIN voltage domain. Thus, this series adds the DT Nodes for the
remote processors to add support for IPC.
This series also enables IPC on the J722S-EVM platform based on the
above SoC by adding the mailbox instances, shared memory carveouts and
reserving the conflicting timer nodes (as they are used by remoteproc
firmware).
v4: Changelog:
* Nishanth:
1) Fixed DT node properties order to put standard properties before vendor
specific properties in patch "arm64: dts: ti: k3-j722s-main: Add R5F
and C7x remote processor nodes"
2) Put "status" property at the end in extended DT nodes and preceded
child nodes with a single blank line wherever applicable in patch
"arm64: dts: ti: k3-j722s-evm: Enable Inter-Processor Communication"
following kernel DTS coding style.
Link to v3:
https://lore.kernel.org/all/20240828112713.2668526-1-b-padhi@ti.com/
v3: Changelog:
1) Reserved conflicting Timer Nodes in k3-j722s-evm.dts file to avoid remotecore
boot failures.
Link to v2:
https://lore.kernel.org/all/20240612112259.1131653-1-b-padhi@ti.com/
v2: Changelog:
1) Addressed Andrew's comments to refactor remotecore nodes into
k3-j722s-main.dtsi file.
2) Squashed Patch 2 and 3 from V1 into Patch 2 in V2 as they were doing
the same logical thing.
3) The DTBs check warnings from V1 are automatically fixed after a
dt-binding patch[0] was merged in linux-next.
Link to v1:
https://lore.kernel.org/all/20240607090433.488454-1-b-padhi@ti.com/
[0]: https://lore.kernel.org/all/20240604171450.2455-1-hnagalla@ti.com/
Apurva Nandan (2):
arm64: dts: ti: k3-j722s-main: Add R5F and C7x remote processor nodes
arm64: dts: ti: k3-j722s-evm: Enable Inter-Processor Communication
arch/arm64/boot/dts/ti/k3-j722s-evm.dts | 157 ++++++++++++++++++++++
arch/arm64/boot/dts/ti/k3-j722s-main.dtsi | 61 +++++++++
2 files changed, 218 insertions(+)
--
2.34.1
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v4 1/2] arm64: dts: ti: k3-j722s-main: Add R5F and C7x remote processor nodes
2024-08-29 6:09 [PATCH v4 0/2] Add Remoteproc Support for TI's J722S SoCs Beleswar Padhi
@ 2024-08-29 6:09 ` Beleswar Padhi
2024-08-30 15:10 ` Kumar, Udit
2024-08-30 15:21 ` Andrew Davis
2024-08-29 6:09 ` [PATCH v4 2/2] arm64: dts: ti: k3-j722s-evm: Enable Inter-Processor Communication Beleswar Padhi
1 sibling, 2 replies; 6+ messages in thread
From: Beleswar Padhi @ 2024-08-29 6:09 UTC (permalink / raw)
To: nm, vigneshr, kristo, robh, krzk+dt, conor+dt
Cc: u-kumar1, j-choudhary, vaishnav.a, afd, devicetree, linux-kernel,
linux-arm-kernel
From: Apurva Nandan <a-nandan@ti.com>
The K3 J722S SoCs have one single-core Arm Cortex-R5F processor in each
of the WAKEUP, MCU and MAIN voltage domain, and two C71x DSP subsystems
in MAIN voltage domain. Add the DT nodes to support Inter-Processor
Communication.
Signed-off-by: Apurva Nandan <a-nandan@ti.com>
[ refactoring changes to k3-j722s-main.dtsi ]
Signed-off-by: Beleswar Padhi <b-padhi@ti.com>
---
v4: Changelog:
1) Put standard properties (resets, firmware-name) before vendor
specific properties in added DT Nodes. (Nishanth)
Link to v3:
https://lore.kernel.org/all/20240828112713.2668526-2-b-padhi@ti.com/
v3: Changelog:
1) None to this patch.
Link to v2:
https://lore.kernel.org/all/20240612112259.1131653-2-b-padhi@ti.com/
v2: Changelog:
1) Refactored changes from k3-j722s.dtsi to k3-j722s-main.dtsi. (Andrew)
Link to v1:
https://lore.kernel.org/all/20240607090433.488454-2-b-padhi@ti.com/
arch/arm64/boot/dts/ti/k3-j722s-main.dtsi | 61 +++++++++++++++++++++++
1 file changed, 61 insertions(+)
diff --git a/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi b/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
index cadb4f7c2ea9..ed6f4ba08afc 100644
--- a/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
@@ -153,6 +153,67 @@ usb1: usb@31200000{
dr_mode = "otg";
};
};
+
+ main_r5fss0: r5fss@78400000 {
+ compatible = "ti,am62-r5fss";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges = <0x78400000 0x00 0x78400000 0x8000>,
+ <0x78500000 0x00 0x78500000 0x8000>;
+ power-domains = <&k3_pds 261 TI_SCI_PD_EXCLUSIVE>;
+ status = "disabled";
+
+ main_r5fss0_core0: r5f@78400000 {
+ compatible = "ti,am62-r5f";
+ reg = <0x78400000 0x00008000>,
+ <0x78500000 0x00008000>;
+ reg-names = "atcm", "btcm";
+ resets = <&k3_reset 262 1>;
+ firmware-name = "j722s-main-r5f0_0-fw";
+ ti,sci = <&dmsc>;
+ ti,sci-dev-id = <262>;
+ ti,sci-proc-ids = <0x04 0xff>;
+ ti,atcm-enable = <1>;
+ ti,btcm-enable = <1>;
+ ti,loczrama = <1>;
+ };
+ };
+
+ c7x_0: dsp@7e000000 {
+ compatible = "ti,am62a-c7xv-dsp";
+ reg = <0x00 0x7e000000 0x00 0x00200000>;
+ reg-names = "l2sram";
+ resets = <&k3_reset 208 1>;
+ firmware-name = "j722s-c71_0-fw";
+ ti,sci = <&dmsc>;
+ ti,sci-dev-id = <208>;
+ ti,sci-proc-ids = <0x30 0xff>;
+ status = "disabled";
+ };
+
+ c7x_1: dsp@7e200000 {
+ compatible = "ti,am62a-c7xv-dsp";
+ reg = <0x00 0x7e200000 0x00 0x00200000>;
+ reg-names = "l2sram";
+ resets = <&k3_reset 268 1>;
+ firmware-name = "j722s-c71_1-fw";
+ ti,sci = <&dmsc>;
+ ti,sci-dev-id = <268>;
+ ti,sci-proc-ids = <0x31 0xff>;
+ status = "disabled";
+ };
+};
+
+/* MCU domain overrides */
+
+&mcu_r5fss0_core0 {
+ firmware-name = "j722s-mcu-r5f0_0-fw";
+};
+
+/* Wakeup domain overrides */
+
+&wkup_r5fss0_core0 {
+ firmware-name = "j722s-wkup-r5f0_0-fw";
};
&main_conf {
--
2.34.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH v4 2/2] arm64: dts: ti: k3-j722s-evm: Enable Inter-Processor Communication
2024-08-29 6:09 [PATCH v4 0/2] Add Remoteproc Support for TI's J722S SoCs Beleswar Padhi
2024-08-29 6:09 ` [PATCH v4 1/2] arm64: dts: ti: k3-j722s-main: Add R5F and C7x remote processor nodes Beleswar Padhi
@ 2024-08-29 6:09 ` Beleswar Padhi
2024-08-30 13:57 ` Kumar, Udit
1 sibling, 1 reply; 6+ messages in thread
From: Beleswar Padhi @ 2024-08-29 6:09 UTC (permalink / raw)
To: nm, vigneshr, kristo, robh, krzk+dt, conor+dt
Cc: u-kumar1, j-choudhary, vaishnav.a, afd, devicetree, linux-kernel,
linux-arm-kernel
From: Apurva Nandan <a-nandan@ti.com>
The K3 J722S-EVM platform is based on the J722S SoC which has one
single-core Arm Cortex-R5F processor in each of the WAKEUP, MCU and MAIN
voltage domain, and two C71x DSP subsystems in MAIN voltage domain.
The Inter-Processor communication between the A72 cores and these R5F
and DSP remote cores is achieved through shared memory and Mailboxes.
Thus, add the memory carveouts and enable the mailbox clusters required
for communication.
Also, The remoteproc firmware like of R5F and DSPs in the MAIN voltage
domain use timers. Therefore, change the status of the timer nodes to
"reserved" to avoid any clash during booting of remotecores. Usage is
described as below:
+===================+=============+
| Remoteproc Node | Timer Node |
+===================+=============+
| main_r5fss0_core0 | main_timer0 |
+-------------------+-------------+
| c7x_0 | main_timer1 |
+-------------------+-------------+
| c7x_1 | main_timer2 |
+-------------------+-------------+
Signed-off-by: Apurva Nandan <a-nandan@ti.com>
[ Enabled mailbox instances and Reserved timer nodes ]
Signed-off-by: Beleswar Padhi <b-padhi@ti.com>
---
v4: Changelog:
1) Moved "status" property to the end in all the extended DT nodes added
in this patch.
2) Preceded child-nodes by a single blank line in the extended DT nodes
added in this patch.
Link to v3:
https://lore.kernel.org/all/20240828112713.2668526-3-b-padhi@ti.com/
v3: Changelog:
1) Reserved conflicting timer nodes with remoteproc firmware (reflected the same
in commit message).
2) Simplified $subject to clarify that this patch enables IPC and transferred
the details into commit message.
Link to v2:
https://lore.kernel.org/all/20240612112259.1131653-3-b-padhi@ti.com/
v2: Changelog:
1) Squashed Patch 2 and 3 from V1 into Patch 2 in V2 as they were doing
the same logical thing.
Links to v1:
https://lore.kernel.org/all/20240607090433.488454-3-b-padhi@ti.com/
https://lore.kernel.org/all/20240607090433.488454-4-b-padhi@ti.com/
arch/arm64/boot/dts/ti/k3-j722s-evm.dts | 157 ++++++++++++++++++++++++
1 file changed, 157 insertions(+)
diff --git a/arch/arm64/boot/dts/ti/k3-j722s-evm.dts b/arch/arm64/boot/dts/ti/k3-j722s-evm.dts
index dd3b5f7039d7..38620c76c3be 100644
--- a/arch/arm64/boot/dts/ti/k3-j722s-evm.dts
+++ b/arch/arm64/boot/dts/ti/k3-j722s-evm.dts
@@ -51,12 +51,71 @@ secure_ddr: optee@9e800000 {
no-map;
};
+ wkup_r5fss0_core0_dma_memory_region: r5f-dma-memory@a0000000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0xa0000000 0x00 0x100000>;
+ no-map;
+ };
+
wkup_r5fss0_core0_memory_region: r5f-memory@a0100000 {
compatible = "shared-dma-pool";
reg = <0x00 0xa0100000 0x00 0xf00000>;
no-map;
};
+ mcu_r5fss0_core0_dma_memory_region: mcu-r5fss-dma-memory-region@a1000000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0xa1000000 0x00 0x100000>;
+ no-map;
+ };
+
+ mcu_r5fss0_core0_memory_region: mcu-r5fss-memory-region@a1100000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0xa1100000 0x00 0xf00000>;
+ no-map;
+ };
+
+ main_r5fss0_core0_dma_memory_region: main-r5fss-dma-memory-region@a2000000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0xa2000000 0x00 0x100000>;
+ no-map;
+ };
+
+ main_r5fss0_core0_memory_region: main-r5fss-memory-region@a2100000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0xa2100000 0x00 0xf00000>;
+ no-map;
+ };
+
+ c7x_0_dma_memory_region: c7x-dma-memory@a3000000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0xa3000000 0x00 0x100000>;
+ no-map;
+ };
+
+ c7x_0_memory_region: c7x-memory@a3100000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0xa3100000 0x00 0xf00000>;
+ no-map;
+ };
+
+ c7x_1_dma_memory_region: c7x-dma-memory@a4000000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0xa4000000 0x00 0x100000>;
+ no-map;
+ };
+
+ c7x_1_memory_region: c7x-memory@a4100000 {
+ compatible = "shared-dma-pool";
+ reg = <0x00 0xa4100000 0x00 0xf00000>;
+ no-map;
+ };
+
+ rtos_ipc_memory_region: ipc-memories@a5000000 {
+ reg = <0x00 0xa5000000 0x00 0x1c00000>;
+ alignment = <0x1000>;
+ no-map;
+ };
};
vmain_pd: regulator-0 {
@@ -494,6 +553,104 @@ &sdhci1 {
bootph-all;
};
+&mailbox0_cluster0 {
+ status = "okay";
+
+ mbox_r5_0: mbox-r5-0 {
+ ti,mbox-rx = <0 0 0>;
+ ti,mbox-tx = <1 0 0>;
+ };
+};
+
+&mailbox0_cluster1 {
+ status = "okay";
+
+ mbox_mcu_r5_0: mbox-mcu-r5-0 {
+ ti,mbox-rx = <0 0 0>;
+ ti,mbox-tx = <1 0 0>;
+ };
+};
+
+&mailbox0_cluster2 {
+ status = "okay";
+
+ mbox_c7x_0: mbox-c7x-0 {
+ ti,mbox-rx = <0 0 0>;
+ ti,mbox-tx = <1 0 0>;
+ };
+};
+
+&mailbox0_cluster3 {
+ status = "okay";
+
+ mbox_main_r5_0: mbox-main-r5-0 {
+ ti,mbox-rx = <0 0 0>;
+ ti,mbox-tx = <1 0 0>;
+ };
+
+ mbox_c7x_1: mbox-c7x-1 {
+ ti,mbox-rx = <2 0 0>;
+ ti,mbox-tx = <3 0 0>;
+ };
+};
+
+/* Timers are used by Remoteproc firmware */
+&main_timer0 {
+ status = "reserved";
+};
+
+&main_timer1 {
+ status = "reserved";
+};
+
+&main_timer2 {
+ status = "reserved";
+};
+
+&wkup_r5fss0 {
+ status = "okay";
+};
+
+&wkup_r5fss0_core0 {
+ mboxes = <&mailbox0_cluster0 &mbox_r5_0>;
+ memory-region = <&wkup_r5fss0_core0_dma_memory_region>,
+ <&wkup_r5fss0_core0_memory_region>;
+};
+
+&mcu_r5fss0 {
+ status = "okay";
+};
+
+&mcu_r5fss0_core0 {
+ mboxes = <&mailbox0_cluster1 &mbox_mcu_r5_0>;
+ memory-region = <&mcu_r5fss0_core0_dma_memory_region>,
+ <&mcu_r5fss0_core0_memory_region>;
+};
+
+&main_r5fss0 {
+ status = "okay";
+};
+
+&main_r5fss0_core0 {
+ mboxes = <&mailbox0_cluster3 &mbox_main_r5_0>;
+ memory-region = <&main_r5fss0_core0_dma_memory_region>,
+ <&main_r5fss0_core0_memory_region>;
+};
+
+&c7x_0 {
+ mboxes = <&mailbox0_cluster2 &mbox_c7x_0>;
+ memory-region = <&c7x_0_dma_memory_region>,
+ <&c7x_0_memory_region>;
+ status = "okay";
+};
+
+&c7x_1 {
+ mboxes = <&mailbox0_cluster3 &mbox_c7x_1>;
+ memory-region = <&c7x_1_dma_memory_region>,
+ <&c7x_1_memory_region>;
+ status = "okay";
+};
+
&serdes_ln_ctrl {
idle-states = <J722S_SERDES0_LANE0_USB>,
<J722S_SERDES1_LANE0_PCIE0_LANE0>;
--
2.34.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH v4 2/2] arm64: dts: ti: k3-j722s-evm: Enable Inter-Processor Communication
2024-08-29 6:09 ` [PATCH v4 2/2] arm64: dts: ti: k3-j722s-evm: Enable Inter-Processor Communication Beleswar Padhi
@ 2024-08-30 13:57 ` Kumar, Udit
0 siblings, 0 replies; 6+ messages in thread
From: Kumar, Udit @ 2024-08-30 13:57 UTC (permalink / raw)
To: Beleswar Padhi, nm, vigneshr, kristo, robh, krzk+dt, conor+dt
Cc: j-choudhary, vaishnav.a, afd, devicetree, linux-kernel,
linux-arm-kernel, u-kumar1
On 8/29/2024 11:39 AM, Beleswar Padhi wrote:
> From: Apurva Nandan <a-nandan@ti.com>
>
> The K3 J722S-EVM platform is based on the J722S SoC which has one
> single-core Arm Cortex-R5F processor in each of the WAKEUP, MCU and MAIN
> voltage domain, and two C71x DSP subsystems in MAIN voltage domain.
>
> The Inter-Processor communication between the A72 cores and these R5F
Should be A53 core not A72
> and DSP remote cores is achieved through shared memory and Mailboxes.
> Thus, add the memory carveouts and enable the mailbox clusters required
> for communication.
>
> Also, The remoteproc firmware like of R5F and DSPs in the MAIN voltage
> domain use timers. Therefore, change the status of the timer nodes to
> "reserved" to avoid any clash during booting of remotecores. Usage is
> described as below:
>
> +===================+=============+
> | Remoteproc Node | Timer Node |
> +===================+=============+
> | main_r5fss0_core0 | main_timer0 |
> +-------------------+-------------+
> | c7x_0 | main_timer1 |
> +-------------------+-------------+
> | c7x_1 | main_timer2 |
> +-------------------+-------------+
>
> Signed-off-by: Apurva Nandan <a-nandan@ti.com>
> [ Enabled mailbox instances and Reserved timer nodes ]
> Signed-off-by: Beleswar Padhi <b-padhi@ti.com>
> [..]
>
> +&mailbox0_cluster0 {
> + status = "okay";
> +
> + mbox_r5_0: mbox-r5-0 {
Could you choose name like mbox_wkup_r5_0 like other name of mbox
> + ti,mbox-rx = <0 0 0>;
> + ti,mbox-tx = <1 0 0>;
> + };
> +};
> +
> +&mailbox0_cluster1 {
> + status = "okay";
> +
> + mbox_mcu_r5_0: mbox-mcu-r5-0 {
> + ti,mbox-rx = <0 0 0>;
> + ti,mbox-tx = <1 0 0>;
> [..]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v4 1/2] arm64: dts: ti: k3-j722s-main: Add R5F and C7x remote processor nodes
2024-08-29 6:09 ` [PATCH v4 1/2] arm64: dts: ti: k3-j722s-main: Add R5F and C7x remote processor nodes Beleswar Padhi
@ 2024-08-30 15:10 ` Kumar, Udit
2024-08-30 15:21 ` Andrew Davis
1 sibling, 0 replies; 6+ messages in thread
From: Kumar, Udit @ 2024-08-30 15:10 UTC (permalink / raw)
To: Beleswar Padhi, nm, vigneshr, kristo, robh, krzk+dt, conor+dt
Cc: j-choudhary, vaishnav.a, afd, devicetree, linux-kernel,
linux-arm-kernel, u-kumar1
On 8/29/2024 11:39 AM, Beleswar Padhi wrote:
> From: Apurva Nandan <a-nandan@ti.com>
>
> The K3 J722S SoCs have one single-core Arm Cortex-R5F processor in each
> of the WAKEUP, MCU and MAIN voltage domain, and two C71x DSP subsystems
> in MAIN voltage domain. Add the DT nodes to support Inter-Processor
> Communication.
>
> Signed-off-by: Apurva Nandan <a-nandan@ti.com>
> [ refactoring changes to k3-j722s-main.dtsi ]
> Signed-off-by: Beleswar Padhi <b-padhi@ti.com>
> [...]
> arch/arm64/boot/dts/ti/k3-j722s-main.dtsi | 61 +++++++++++++++++++++++
> 1 file changed, 61 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi b/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
> index cadb4f7c2ea9..ed6f4ba08afc 100644
> --- a/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
> @@ -153,6 +153,67 @@ usb1: usb@31200000{
> dr_mode = "otg";
> };
> };
> +
> + main_r5fss0: r5fss@78400000 {
> + compatible = "ti,am62-r5fss";
> + #address-cells = <1>;
> + #size-cells = <1>;
> + ranges = <0x78400000 0x00 0x78400000 0x8000>,
> + <0x78500000 0x00 0x78500000 0x8000>;
> + power-domains = <&k3_pds 261 TI_SCI_PD_EXCLUSIVE>;
> + status = "disabled";
> +
> + main_r5fss0_core0: r5f@78400000 {
> + compatible = "ti,am62-r5f";
> + reg = <0x78400000 0x00008000>,
> + <0x78500000 0x00008000>;
> + reg-names = "atcm", "btcm";
> + resets = <&k3_reset 262 1>;
> + firmware-name = "j722s-main-r5f0_0-fw";
Reviewed-by: Udit Kumar <u-kumar1@ti.com>
> + ti,sci = <&dmsc>;
> + ti,sci-dev-id = <262>;
> + ti,sci-proc-ids = <0x04 0xff>;
> + ti,atcm-enable = <1>;
> + ti,btcm-enable = <1>;
> + ti,loczrama = <1>;
> + };
> + };
> +
> + c7x_0: dsp@7e000000 {
> + compatible = "ti,am62a-c7xv-dsp";
> + reg = <0x00 0x7e000000 0x00 0x00200000>;
> + reg-names = "l2sram";
> + resets = <&k3_reset 208 1>;
> + firmware-name = "j722s-c71_0-fw";
> + ti,sci = <&dmsc>;
> + ti,sci-dev-id = <208>;
> + ti,sci-proc-ids = <0x30 0xff>;
> + status = "disabled";
> + };
> +
> + c7x_1: dsp@7e200000 {
> + compatible = "ti,am62a-c7xv-dsp";
> + reg = <0x00 0x7e200000 0x00 0x00200000>;
> + reg-names = "l2sram";
> + resets = <&k3_reset 268 1>;
> + firmware-name = "j722s-c71_1-fw";
> + ti,sci = <&dmsc>;
> + ti,sci-dev-id = <268>;
> + ti,sci-proc-ids = <0x31 0xff>;
> + status = "disabled";
> + };
> +};
> +
> +/* MCU domain overrides */
> +
> +&mcu_r5fss0_core0 {
> + firmware-name = "j722s-mcu-r5f0_0-fw";
> +};
> +
> +/* Wakeup domain overrides */
> +
> +&wkup_r5fss0_core0 {
> + firmware-name = "j722s-wkup-r5f0_0-fw";
> };
>
> &main_conf {
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v4 1/2] arm64: dts: ti: k3-j722s-main: Add R5F and C7x remote processor nodes
2024-08-29 6:09 ` [PATCH v4 1/2] arm64: dts: ti: k3-j722s-main: Add R5F and C7x remote processor nodes Beleswar Padhi
2024-08-30 15:10 ` Kumar, Udit
@ 2024-08-30 15:21 ` Andrew Davis
1 sibling, 0 replies; 6+ messages in thread
From: Andrew Davis @ 2024-08-30 15:21 UTC (permalink / raw)
To: Beleswar Padhi, nm, vigneshr, kristo, robh, krzk+dt, conor+dt
Cc: u-kumar1, j-choudhary, vaishnav.a, devicetree, linux-kernel,
linux-arm-kernel
On 8/29/24 1:09 AM, Beleswar Padhi wrote:
> From: Apurva Nandan <a-nandan@ti.com>
>
> The K3 J722S SoCs have one single-core Arm Cortex-R5F processor in each
> of the WAKEUP, MCU and MAIN voltage domain, and two C71x DSP subsystems
> in MAIN voltage domain. Add the DT nodes to support Inter-Processor
> Communication.
>
> Signed-off-by: Apurva Nandan <a-nandan@ti.com>
> [ refactoring changes to k3-j722s-main.dtsi ]
> Signed-off-by: Beleswar Padhi <b-padhi@ti.com>
> ---
Reviewed-by: Andrew Davis <afd@ti.com>
> v4: Changelog:
> 1) Put standard properties (resets, firmware-name) before vendor
> specific properties in added DT Nodes. (Nishanth)
>
> Link to v3:
> https://lore.kernel.org/all/20240828112713.2668526-2-b-padhi@ti.com/
>
> v3: Changelog:
> 1) None to this patch.
>
> Link to v2:
> https://lore.kernel.org/all/20240612112259.1131653-2-b-padhi@ti.com/
>
> v2: Changelog:
> 1) Refactored changes from k3-j722s.dtsi to k3-j722s-main.dtsi. (Andrew)
>
> Link to v1:
> https://lore.kernel.org/all/20240607090433.488454-2-b-padhi@ti.com/
>
> arch/arm64/boot/dts/ti/k3-j722s-main.dtsi | 61 +++++++++++++++++++++++
> 1 file changed, 61 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi b/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
> index cadb4f7c2ea9..ed6f4ba08afc 100644
> --- a/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
> @@ -153,6 +153,67 @@ usb1: usb@31200000{
> dr_mode = "otg";
> };
> };
> +
> + main_r5fss0: r5fss@78400000 {
> + compatible = "ti,am62-r5fss";
> + #address-cells = <1>;
> + #size-cells = <1>;
> + ranges = <0x78400000 0x00 0x78400000 0x8000>,
> + <0x78500000 0x00 0x78500000 0x8000>;
> + power-domains = <&k3_pds 261 TI_SCI_PD_EXCLUSIVE>;
> + status = "disabled";
> +
> + main_r5fss0_core0: r5f@78400000 {
> + compatible = "ti,am62-r5f";
> + reg = <0x78400000 0x00008000>,
> + <0x78500000 0x00008000>;
> + reg-names = "atcm", "btcm";
> + resets = <&k3_reset 262 1>;
> + firmware-name = "j722s-main-r5f0_0-fw";
> + ti,sci = <&dmsc>;
> + ti,sci-dev-id = <262>;
> + ti,sci-proc-ids = <0x04 0xff>;
> + ti,atcm-enable = <1>;
> + ti,btcm-enable = <1>;
> + ti,loczrama = <1>;
> + };
> + };
> +
> + c7x_0: dsp@7e000000 {
> + compatible = "ti,am62a-c7xv-dsp";
> + reg = <0x00 0x7e000000 0x00 0x00200000>;
> + reg-names = "l2sram";
> + resets = <&k3_reset 208 1>;
> + firmware-name = "j722s-c71_0-fw";
> + ti,sci = <&dmsc>;
> + ti,sci-dev-id = <208>;
> + ti,sci-proc-ids = <0x30 0xff>;
> + status = "disabled";
> + };
> +
> + c7x_1: dsp@7e200000 {
> + compatible = "ti,am62a-c7xv-dsp";
> + reg = <0x00 0x7e200000 0x00 0x00200000>;
> + reg-names = "l2sram";
> + resets = <&k3_reset 268 1>;
> + firmware-name = "j722s-c71_1-fw";
> + ti,sci = <&dmsc>;
> + ti,sci-dev-id = <268>;
> + ti,sci-proc-ids = <0x31 0xff>;
> + status = "disabled";
> + };
> +};
> +
> +/* MCU domain overrides */
> +
> +&mcu_r5fss0_core0 {
> + firmware-name = "j722s-mcu-r5f0_0-fw";
> +};
> +
> +/* Wakeup domain overrides */
> +
> +&wkup_r5fss0_core0 {
> + firmware-name = "j722s-wkup-r5f0_0-fw";
> };
>
> &main_conf {
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2024-08-30 15:23 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-29 6:09 [PATCH v4 0/2] Add Remoteproc Support for TI's J722S SoCs Beleswar Padhi
2024-08-29 6:09 ` [PATCH v4 1/2] arm64: dts: ti: k3-j722s-main: Add R5F and C7x remote processor nodes Beleswar Padhi
2024-08-30 15:10 ` Kumar, Udit
2024-08-30 15:21 ` Andrew Davis
2024-08-29 6:09 ` [PATCH v4 2/2] arm64: dts: ti: k3-j722s-evm: Enable Inter-Processor Communication Beleswar Padhi
2024-08-30 13:57 ` Kumar, Udit
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).