* [PATCH 1/4] dt-bindings: remoteproc: k3-dsp: Add C7xv dsp variant for J722S
2026-02-13 0:11 [PATCH 0/4] Fix AM62A/J722S C7XV DSP reset variation Hari Nagalla
@ 2026-02-13 0:11 ` Hari Nagalla
2026-02-13 8:13 ` Krzysztof Kozlowski
2026-02-13 0:11 ` [PATCH 2/4] arm64: dts: ti: k3-j722s-main: update compatible string for C7XV dsps Hari Nagalla
` (2 subsequent siblings)
3 siblings, 1 reply; 9+ messages in thread
From: Hari Nagalla @ 2026-02-13 0:11 UTC (permalink / raw)
To: andersson, mathieu.poirier, robh, krzk+dt, conor+dt, nm
Cc: vigneshr, s-anna, b-padhi, linux-remoteproc, devicetree,
linux-kernel, kristo, linux-arm-kernel, Hari Nagalla
J722S uses the C7xv DSP based deep learning engine similar to AM62A,
but the reset and module enable integration in the SoC is little
different. It does not have local reset from power state controller.
So, add a new compatible string to distinguish this difference.
Signed-off-by: Hari Nagalla <hnagalla@ti.com>
Reviewed-by: Devarsh Thakkar <devarsht@ti.com>
---
.../devicetree/bindings/remoteproc/ti,k3-dsp-rproc.yaml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/Documentation/devicetree/bindings/remoteproc/ti,k3-dsp-rproc.yaml b/Documentation/devicetree/bindings/remoteproc/ti,k3-dsp-rproc.yaml
index b51bb863d759..c241d88f640b 100644
--- a/Documentation/devicetree/bindings/remoteproc/ti,k3-dsp-rproc.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/ti,k3-dsp-rproc.yaml
@@ -29,11 +29,13 @@ properties:
compatible:
enum:
- ti,am62a-c7xv-dsp
+ - ti,j722s-c7xv-dsp
- ti,j721e-c66-dsp
- ti,j721e-c71-dsp
- ti,j721s2-c71-dsp
description:
Use "ti,am62a-c7xv-dsp" for AM62A Deep learning DSPs on K3 AM62A SoCs
+ Use "ti,j722s-c7xv-dsp" for J722S Deep learning DSPs on K3 J722S SoCs
Use "ti,j721e-c66-dsp" for C66x DSPs on K3 J721E SoCs
Use "ti,j721e-c71-dsp" for C71x DSPs on K3 J721E SoCs
Use "ti,j721s2-c71-dsp" for C71x DSPs on K3 J721S2 SoCs
@@ -127,6 +129,7 @@ allOf:
compatible:
enum:
- ti,am62a-c7xv-dsp
+ - ti,j722s-c7xv-dsp
then:
properties:
reg:
--
2.34.1
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [PATCH 1/4] dt-bindings: remoteproc: k3-dsp: Add C7xv dsp variant for J722S
2026-02-13 0:11 ` [PATCH 1/4] dt-bindings: remoteproc: k3-dsp: Add C7xv dsp variant for J722S Hari Nagalla
@ 2026-02-13 8:13 ` Krzysztof Kozlowski
2026-02-13 9:34 ` Krzysztof Kozlowski
0 siblings, 1 reply; 9+ messages in thread
From: Krzysztof Kozlowski @ 2026-02-13 8:13 UTC (permalink / raw)
To: Hari Nagalla
Cc: andersson, mathieu.poirier, robh, krzk+dt, conor+dt, nm,
vigneshr, s-anna, b-padhi, linux-remoteproc, devicetree,
linux-kernel, kristo, linux-arm-kernel
On Thu, Feb 12, 2026 at 06:11:48PM -0600, Hari Nagalla wrote:
> J722S uses the C7xv DSP based deep learning engine similar to AM62A,
> but the reset and module enable integration in the SoC is little
> different. It does not have local reset from power state controller.
> So, add a new compatible string to distinguish this difference.
This does not explain lack of compatibility. You ALWAYS add new
compatible string. ALWAYS. Drop the last sentence and fix the patch.
>
> Signed-off-by: Hari Nagalla <hnagalla@ti.com>
> Reviewed-by: Devarsh Thakkar <devarsht@ti.com>
> ---
> .../devicetree/bindings/remoteproc/ti,k3-dsp-rproc.yaml | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/remoteproc/ti,k3-dsp-rproc.yaml b/Documentation/devicetree/bindings/remoteproc/ti,k3-dsp-rproc.yaml
> index b51bb863d759..c241d88f640b 100644
> --- a/Documentation/devicetree/bindings/remoteproc/ti,k3-dsp-rproc.yaml
> +++ b/Documentation/devicetree/bindings/remoteproc/ti,k3-dsp-rproc.yaml
> @@ -29,11 +29,13 @@ properties:
> compatible:
> enum:
> - ti,am62a-c7xv-dsp
> + - ti,j722s-c7xv-dsp
721 < 722
> - ti,j721e-c66-dsp
> - ti,j721e-c71-dsp
> - ti,j721s2-c71-dsp
> description:
> Use "ti,am62a-c7xv-dsp" for AM62A Deep learning DSPs on K3 AM62A SoCs
> + Use "ti,j722s-c7xv-dsp" for J722S Deep learning DSPs on K3 J722S SoCs
Same here
> Use "ti,j721e-c66-dsp" for C66x DSPs on K3 J721E SoCs
> Use "ti,j721e-c71-dsp" for C71x DSPs on K3 J721E SoCs
> Use "ti,j721s2-c71-dsp" for C71x DSPs on K3 J721S2 SoCs
> @@ -127,6 +129,7 @@ allOf:
> compatible:
> enum:
> - ti,am62a-c7xv-dsp
> + - ti,j722s-c7xv-dsp
> then:
> properties:
> reg:
> --
> 2.34.1
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 1/4] dt-bindings: remoteproc: k3-dsp: Add C7xv dsp variant for J722S
2026-02-13 8:13 ` Krzysztof Kozlowski
@ 2026-02-13 9:34 ` Krzysztof Kozlowski
2026-03-02 9:34 ` Hari Nagalla
0 siblings, 1 reply; 9+ messages in thread
From: Krzysztof Kozlowski @ 2026-02-13 9:34 UTC (permalink / raw)
To: Hari Nagalla
Cc: andersson, mathieu.poirier, robh, krzk+dt, conor+dt, nm,
vigneshr, s-anna, b-padhi, linux-remoteproc, devicetree,
linux-kernel, kristo, linux-arm-kernel
On 13/02/2026 09:13, Krzysztof Kozlowski wrote:
> On Thu, Feb 12, 2026 at 06:11:48PM -0600, Hari Nagalla wrote:
>> J722S uses the C7xv DSP based deep learning engine similar to AM62A,
>> but the reset and module enable integration in the SoC is little
>> different. It does not have local reset from power state controller.
>> So, add a new compatible string to distinguish this difference.
>
> This does not explain lack of compatibility. You ALWAYS add new
> compatible string. ALWAYS. Drop the last sentence and fix the patch.
>
And by "fix" I meant express compatibility or explain better why local
reset is different than resets property, which applies to new device.
The entire picture made by commit msg and existing binding is just very
confusing.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 1/4] dt-bindings: remoteproc: k3-dsp: Add C7xv dsp variant for J722S
2026-02-13 9:34 ` Krzysztof Kozlowski
@ 2026-03-02 9:34 ` Hari Nagalla
0 siblings, 0 replies; 9+ messages in thread
From: Hari Nagalla @ 2026-03-02 9:34 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: andersson, mathieu.poirier, robh, krzk+dt, conor+dt, nm,
vigneshr, s-anna, b-padhi, linux-remoteproc, devicetree,
linux-kernel, kristo, linux-arm-kernel
On 2/13/26 03:34, Krzysztof Kozlowski wrote:
>> This does not explain lack of compatibility. You ALWAYS add new
>> compatible string. ALWAYS. Drop the last sentence and fix the patch.
>>
>
> And by "fix" I meant express compatibility or explain better why local
> reset is different than resets property, which applies to new device.
> The entire picture made by commit msg and existing binding is just very
> confusing.
>
> Best regards,
> Krzysztof
>
Understood. Thanks for the review. I'll submit a v2 with a better
explanation of the local reset vs resets property distinction.
Best Regards,
Hari
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 2/4] arm64: dts: ti: k3-j722s-main: update compatible string for C7XV dsps
2026-02-13 0:11 [PATCH 0/4] Fix AM62A/J722S C7XV DSP reset variation Hari Nagalla
2026-02-13 0:11 ` [PATCH 1/4] dt-bindings: remoteproc: k3-dsp: Add C7xv dsp variant for J722S Hari Nagalla
@ 2026-02-13 0:11 ` Hari Nagalla
2026-02-13 8:14 ` Krzysztof Kozlowski
2026-02-13 0:11 ` [PATCH 3/4] remoteproc: k3-dsp: use local reset for C7XV dsps on AM62A Hari Nagalla
2026-02-13 0:11 ` [PATCH 4/4] remoteproc: k3-dsp: add compatible string for j722s C7XV DSP Hari Nagalla
3 siblings, 1 reply; 9+ messages in thread
From: Hari Nagalla @ 2026-02-13 0:11 UTC (permalink / raw)
To: andersson, mathieu.poirier, robh, krzk+dt, conor+dt, nm
Cc: vigneshr, s-anna, b-padhi, linux-remoteproc, devicetree,
linux-kernel, kristo, linux-arm-kernel, Hari Nagalla
update the compatible string for C7XV deep learning DSP core in J722S.
Signed-off-by: Hari Nagalla <hnagalla@ti.com>
---
arch/arm64/boot/dts/ti/k3-j722s-main.dtsi | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi b/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
index 9ee5d0c8ffd1..0a746ede01dd 100644
--- a/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
@@ -373,7 +373,7 @@ main_r5fss0_core0: r5f@78400000 {
};
c7x_0: dsp@7e000000 {
- compatible = "ti,am62a-c7xv-dsp";
+ compatible = "ti,j722s-c7xv-dsp";
reg = <0x00 0x7e000000 0x00 0x00200000>;
reg-names = "l2sram";
resets = <&k3_reset 208 1>;
@@ -385,7 +385,7 @@ c7x_0: dsp@7e000000 {
};
c7x_1: dsp@7e200000 {
- compatible = "ti,am62a-c7xv-dsp";
+ compatible = "ti,j722s-c7xv-dsp";
reg = <0x00 0x7e200000 0x00 0x00200000>;
reg-names = "l2sram";
resets = <&k3_reset 268 1>;
--
2.34.1
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [PATCH 2/4] arm64: dts: ti: k3-j722s-main: update compatible string for C7XV dsps
2026-02-13 0:11 ` [PATCH 2/4] arm64: dts: ti: k3-j722s-main: update compatible string for C7XV dsps Hari Nagalla
@ 2026-02-13 8:14 ` Krzysztof Kozlowski
0 siblings, 0 replies; 9+ messages in thread
From: Krzysztof Kozlowski @ 2026-02-13 8:14 UTC (permalink / raw)
To: Hari Nagalla
Cc: andersson, mathieu.poirier, robh, krzk+dt, conor+dt, nm,
vigneshr, s-anna, b-padhi, linux-remoteproc, devicetree,
linux-kernel, kristo, linux-arm-kernel
On Thu, Feb 12, 2026 at 06:11:49PM -0600, Hari Nagalla wrote:
> update the compatible string for C7XV deep learning DSP core in J722S.
>
> Signed-off-by: Hari Nagalla <hnagalla@ti.com>
> ---
> arch/arm64/boot/dts/ti/k3-j722s-main.dtsi | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi b/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
> index 9ee5d0c8ffd1..0a746ede01dd 100644
> --- a/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-j722s-main.dtsi
> @@ -373,7 +373,7 @@ main_r5fss0_core0: r5f@78400000 {
> };
>
> c7x_0: dsp@7e000000 {
> - compatible = "ti,am62a-c7xv-dsp";
> + compatible = "ti,j722s-c7xv-dsp";
Silent, unjustified users break. Commit msg is so poor that this for
sure should not be accepted.
NAK
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 3/4] remoteproc: k3-dsp: use local reset for C7XV dsps on AM62A
2026-02-13 0:11 [PATCH 0/4] Fix AM62A/J722S C7XV DSP reset variation Hari Nagalla
2026-02-13 0:11 ` [PATCH 1/4] dt-bindings: remoteproc: k3-dsp: Add C7xv dsp variant for J722S Hari Nagalla
2026-02-13 0:11 ` [PATCH 2/4] arm64: dts: ti: k3-j722s-main: update compatible string for C7XV dsps Hari Nagalla
@ 2026-02-13 0:11 ` Hari Nagalla
2026-02-13 0:11 ` [PATCH 4/4] remoteproc: k3-dsp: add compatible string for j722s C7XV DSP Hari Nagalla
3 siblings, 0 replies; 9+ messages in thread
From: Hari Nagalla @ 2026-02-13 0:11 UTC (permalink / raw)
To: andersson, mathieu.poirier, robh, krzk+dt, conor+dt, nm
Cc: vigneshr, s-anna, b-padhi, linux-remoteproc, devicetree,
linux-kernel, kristo, linux-arm-kernel, Hari Nagalla
The C7XV deep learning engine dsp core in AM62A has a local reset line
from power state controller. In the absence of using the local reset,
it is in an unknown state and when the module is turned on, CPU starts
executing and may go into a bad state. Set local reset to 'true' for
AM62A, so that the remote proc driver properly asserts the local reset
before enabling the module to load the firmware. And it is deasserted
after firmware load is complete to start the core.
Signed-off-by: Hari Nagalla <hnagalla@ti.com>
---
drivers/remoteproc/ti_k3_dsp_remoteproc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/remoteproc/ti_k3_dsp_remoteproc.c b/drivers/remoteproc/ti_k3_dsp_remoteproc.c
index d6ceea6dc920..7881c711d872 100644
--- a/drivers/remoteproc/ti_k3_dsp_remoteproc.c
+++ b/drivers/remoteproc/ti_k3_dsp_remoteproc.c
@@ -211,7 +211,7 @@ static const struct k3_rproc_dev_data c7xv_data = {
.mems = c7xv_mems,
.num_mems = ARRAY_SIZE(c7xv_mems),
.boot_align_addr = SZ_2M,
- .uses_lreset = false,
+ .uses_lreset = true,
};
static const struct of_device_id k3_dsp_of_match[] = {
--
2.34.1
^ permalink raw reply [flat|nested] 9+ messages in thread* [PATCH 4/4] remoteproc: k3-dsp: add compatible string for j722s C7XV DSP
2026-02-13 0:11 [PATCH 0/4] Fix AM62A/J722S C7XV DSP reset variation Hari Nagalla
` (2 preceding siblings ...)
2026-02-13 0:11 ` [PATCH 3/4] remoteproc: k3-dsp: use local reset for C7XV dsps on AM62A Hari Nagalla
@ 2026-02-13 0:11 ` Hari Nagalla
3 siblings, 0 replies; 9+ messages in thread
From: Hari Nagalla @ 2026-02-13 0:11 UTC (permalink / raw)
To: andersson, mathieu.poirier, robh, krzk+dt, conor+dt, nm
Cc: vigneshr, s-anna, b-padhi, linux-remoteproc, devicetree,
linux-kernel, kristo, linux-arm-kernel, Hari Nagalla
J722S uses the C7XV DSP based deep learning engine similar to AM62A,
but the reset and module enable integration in the SoC is little
different. It does not have a local reset from power state controller.
So, add a new compatible string to distinguish this difference.
For these DSP core variants 'prepare' operation is not needed before
loading the firmware. The module level main reset is released during
'start' operation, i.e after firmware load.
Signed-off-by: Hari Nagalla <hnagalla@ti.com>
---
drivers/remoteproc/ti_k3_dsp_remoteproc.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/remoteproc/ti_k3_dsp_remoteproc.c b/drivers/remoteproc/ti_k3_dsp_remoteproc.c
index 7881c711d872..301d7b5afd2f 100644
--- a/drivers/remoteproc/ti_k3_dsp_remoteproc.c
+++ b/drivers/remoteproc/ti_k3_dsp_remoteproc.c
@@ -214,11 +214,19 @@ static const struct k3_rproc_dev_data c7xv_data = {
.uses_lreset = true,
};
+static const struct k3_rproc_dev_data j722s_c7xv_data = {
+ .mems = c7xv_mems,
+ .num_mems = ARRAY_SIZE(c7xv_mems),
+ .boot_align_addr = SZ_2M,
+ .uses_lreset = false,
+};
+
static const struct of_device_id k3_dsp_of_match[] = {
{ .compatible = "ti,j721e-c66-dsp", .data = &c66_data, },
{ .compatible = "ti,j721e-c71-dsp", .data = &c71_data, },
{ .compatible = "ti,j721s2-c71-dsp", .data = &c71_data, },
{ .compatible = "ti,am62a-c7xv-dsp", .data = &c7xv_data, },
+ { .compatible = "ti,j722s-c7xv-dsp", .data = &j722s_c7xv_data, },
{ /* sentinel */ },
};
MODULE_DEVICE_TABLE(of, k3_dsp_of_match);
--
2.34.1
^ permalink raw reply [flat|nested] 9+ messages in thread