The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH] dt-bindings: remoteproc: ti,wkup-m3: Convert to DT schema
@ 2026-07-19 18:06 Bhargav Joshi
  2026-07-21 13:55 ` Rob Herring (Arm)
  2026-07-22 15:16 ` Mathieu Poirier
  0 siblings, 2 replies; 3+ messages in thread
From: Bhargav Joshi @ 2026-07-19 18:06 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Suman Anna
  Cc: linux-remoteproc, devicetree, linux-kernel, goledhruva,
	m-chawdhry, daniel.baluta, simona.toaca, j.bhargav.u

Convert Texas Instruments Wakeup M3 Remote Processor from text to Dt
schema. Add optional resets and reset-names property which was missing
from legacy binding. make ti,hwmods deprecated as it no longer needed,
it is kept to support older board files without ti,sysc.

Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
---
 .../bindings/remoteproc/ti,am3352-wkup-m3.yaml     | 89 ++++++++++++++++++++++
 .../bindings/remoteproc/wkup_m3_rproc.txt          | 52 -------------
 2 files changed, 89 insertions(+), 52 deletions(-)

diff --git a/Documentation/devicetree/bindings/remoteproc/ti,am3352-wkup-m3.yaml b/Documentation/devicetree/bindings/remoteproc/ti,am3352-wkup-m3.yaml
new file mode 100644
index 000000000000..9e8a03acdec4
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/ti,am3352-wkup-m3.yaml
@@ -0,0 +1,89 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/remoteproc/ti,am3352-wkup-m3.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: TI AM33xx/AM43xx Wakeup M3 Remote Processor
+
+maintainers:
+  - Suman Anna <s-anna@ti.com>
+  - Bhargav Joshi <j.bhargav.u@gmail.com>
+
+description:
+  The TI AM33xx and AM43xx family of devices use a small Cortex M3 co-processor
+  (commonly referred to as Wakeup M3 or CM3) to help with various low power
+  tasks that cannot be controlled from the MPU. This CM3 processor requires a
+  firmware binary to accomplish this. A wkup_m3 device node is used to
+  represent the Wakeup M3 processor instance within the SoC. It is added as a
+  child node of the parent interconnect bus (l4_wkup) through which it is
+  accessible to the MPU.
+
+properties:
+  compatible:
+    enum:
+      - ti,am3352-wkup-m3
+      - ti,am4372-wkup-m3
+
+  reg:
+    items:
+      - description: Address range for UMEM
+      - description: Address range for DMEM
+
+  reg-names:
+    items:
+      - const: umem
+      - const: dmem
+
+  ti,pm-firmware:
+    $ref: /schemas/types.yaml#/definitions/string
+    description:
+      Name of firmware file to be used for loading and booting the wkup_m3
+      remote processor.
+
+  resets:
+    maxItems: 1
+
+  reset-names:
+    items:
+      - const: rstctrl
+
+  ti,hwmods:
+    $ref: /schemas/types.yaml#/definitions/string
+    deprecated: true
+    description:
+      Name of the hwmod associated with the wkupm3 device.
+
+required:
+  - compatible
+  - reg
+  - reg-names
+  - ti,pm-firmware
+
+dependencies:
+  resets: [reset-names]
+  reset-names: [resets]
+
+additionalProperties: false
+
+examples:
+  - |
+    target-module@0 {
+        compatible = "ti,sysc-omap4", "ti,sysc";
+        reg = <0x0 0x4>;
+        reg-names = "rev";
+        #address-cells = <1>;
+        #size-cells = <1>;
+        ranges = <0x00000000 0x00000000 0x4000>,
+                 <0x00080000 0x00080000 0x2000>;
+
+        cpu@0 {
+            compatible = "ti,am3352-wkup-m3";
+            reg = <0x00000000 0x4000>,
+                  <0x00080000 0x2000>;
+            reg-names = "umem", "dmem";
+            resets = <&prm_wkup 3>;
+            reset-names = "rstctrl";
+            ti,pm-firmware = "am335x-pm-firmware.elf";
+        };
+    };
diff --git a/Documentation/devicetree/bindings/remoteproc/wkup_m3_rproc.txt b/Documentation/devicetree/bindings/remoteproc/wkup_m3_rproc.txt
deleted file mode 100644
index 3a70073797eb..000000000000
--- a/Documentation/devicetree/bindings/remoteproc/wkup_m3_rproc.txt
+++ /dev/null
@@ -1,52 +0,0 @@
-TI Wakeup M3 Remoteproc Driver
-==============================
-
-The TI AM33xx and AM43xx family of devices use a small Cortex M3 co-processor
-(commonly referred to as Wakeup M3 or CM3) to help with various low power tasks
-that cannot be controlled from the MPU. This CM3 processor requires a firmware
-binary to accomplish this. The wkup_m3 remoteproc driver handles the loading of
-the firmware and booting of the CM3.
-
-Wkup M3 Device Node:
-====================
-A wkup_m3 device node is used to represent the Wakeup M3 processor instance
-within the SoC. It is added as a child node of the parent interconnect bus
-(l4_wkup) through which it is accessible to the MPU.
-
-Required properties:
---------------------
-- compatible:		Should be one of,
-				"ti,am3352-wkup-m3" for AM33xx SoCs
-				"ti,am4372-wkup-m3" for AM43xx SoCs
-- reg:			Should contain the address ranges for the two internal
-			memory regions, UMEM and DMEM. The parent node should
-			provide an appropriate ranges property for properly
-			translating these into bus addresses.
-- reg-names:		Contains the corresponding names for the two memory
-			regions. These should be named "umem" & "dmem".
-- ti,hwmods:		Name of the hwmod associated with the wkupm3 device.
-- ti,pm-firmware:	Name of firmware file to be used for loading and
-			booting the wkup_m3 remote processor.
-
-Example:
---------
-/* AM33xx */
-ocp {
-	 l4_wkup: l4_wkup@44c00000 {
-		compatible = "am335-l4-wkup", "simple-bus";
-		ranges = <0 0x44c00000 0x400000>;
-		#address-cells = <1>;
-		#size-cells = <1>;
-
-		wkup_m3: wkup_m3@100000 {
-			compatible = "ti,am3352-wkup-m3";
-			reg = <0x100000 0x4000>,
-			      <0x180000 0x2000>;
-			reg-names = "umem", "dmem";
-			ti,hwmods = "wkup_m3";
-			ti,pm-firmware = "am335x-pm-firmware.elf";
-		};
-	};
-
-	...
-};

---
base-commit: c6859eed755df351a3978b33cb92365f9b3e8f06
change-id: 20260719-ti-wkup_m3-edac718d0d7c

Best regards,
-- 
Bhargav


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

* Re: [PATCH] dt-bindings: remoteproc: ti,wkup-m3: Convert to DT schema
  2026-07-19 18:06 [PATCH] dt-bindings: remoteproc: ti,wkup-m3: Convert to DT schema Bhargav Joshi
@ 2026-07-21 13:55 ` Rob Herring (Arm)
  2026-07-22 15:16 ` Mathieu Poirier
  1 sibling, 0 replies; 3+ messages in thread
From: Rob Herring (Arm) @ 2026-07-21 13:55 UTC (permalink / raw)
  To: Bhargav Joshi
  Cc: linux-remoteproc, devicetree, linux-kernel, m-chawdhry,
	Conor Dooley, simona.toaca, goledhruva, Suman Anna,
	Bjorn Andersson, Mathieu Poirier, Krzysztof Kozlowski,
	daniel.baluta


On Sun, 19 Jul 2026 23:36:41 +0530, Bhargav Joshi wrote:
> Convert Texas Instruments Wakeup M3 Remote Processor from text to Dt
> schema. Add optional resets and reset-names property which was missing
> from legacy binding. make ti,hwmods deprecated as it no longer needed,
> it is kept to support older board files without ti,sysc.
> 
> Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
> ---
>  .../bindings/remoteproc/ti,am3352-wkup-m3.yaml     | 89 ++++++++++++++++++++++
>  .../bindings/remoteproc/wkup_m3_rproc.txt          | 52 -------------
>  2 files changed, 89 insertions(+), 52 deletions(-)
> 

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>


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

* Re: [PATCH] dt-bindings: remoteproc: ti,wkup-m3: Convert to DT schema
  2026-07-19 18:06 [PATCH] dt-bindings: remoteproc: ti,wkup-m3: Convert to DT schema Bhargav Joshi
  2026-07-21 13:55 ` Rob Herring (Arm)
@ 2026-07-22 15:16 ` Mathieu Poirier
  1 sibling, 0 replies; 3+ messages in thread
From: Mathieu Poirier @ 2026-07-22 15:16 UTC (permalink / raw)
  To: Bhargav Joshi
  Cc: Bjorn Andersson, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Suman Anna, linux-remoteproc, devicetree, linux-kernel,
	goledhruva, m-chawdhry, daniel.baluta, simona.toaca

On Sun, Jul 19, 2026 at 11:36:41PM +0530, Bhargav Joshi wrote:
> Convert Texas Instruments Wakeup M3 Remote Processor from text to Dt
> schema. Add optional resets and reset-names property which was missing
> from legacy binding. make ti,hwmods deprecated as it no longer needed,
> it is kept to support older board files without ti,sysc.
> 
> Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
> ---
>  .../bindings/remoteproc/ti,am3352-wkup-m3.yaml     | 89 ++++++++++++++++++++++
>  .../bindings/remoteproc/wkup_m3_rproc.txt          | 52 -------------
>  2 files changed, 89 insertions(+), 52 deletions(-)
>

Applied.

Thanks,
Mathieu
 
> diff --git a/Documentation/devicetree/bindings/remoteproc/ti,am3352-wkup-m3.yaml b/Documentation/devicetree/bindings/remoteproc/ti,am3352-wkup-m3.yaml
> new file mode 100644
> index 000000000000..9e8a03acdec4
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/remoteproc/ti,am3352-wkup-m3.yaml
> @@ -0,0 +1,89 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/remoteproc/ti,am3352-wkup-m3.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: TI AM33xx/AM43xx Wakeup M3 Remote Processor
> +
> +maintainers:
> +  - Suman Anna <s-anna@ti.com>
> +  - Bhargav Joshi <j.bhargav.u@gmail.com>
> +
> +description:
> +  The TI AM33xx and AM43xx family of devices use a small Cortex M3 co-processor
> +  (commonly referred to as Wakeup M3 or CM3) to help with various low power
> +  tasks that cannot be controlled from the MPU. This CM3 processor requires a
> +  firmware binary to accomplish this. A wkup_m3 device node is used to
> +  represent the Wakeup M3 processor instance within the SoC. It is added as a
> +  child node of the parent interconnect bus (l4_wkup) through which it is
> +  accessible to the MPU.
> +
> +properties:
> +  compatible:
> +    enum:
> +      - ti,am3352-wkup-m3
> +      - ti,am4372-wkup-m3
> +
> +  reg:
> +    items:
> +      - description: Address range for UMEM
> +      - description: Address range for DMEM
> +
> +  reg-names:
> +    items:
> +      - const: umem
> +      - const: dmem
> +
> +  ti,pm-firmware:
> +    $ref: /schemas/types.yaml#/definitions/string
> +    description:
> +      Name of firmware file to be used for loading and booting the wkup_m3
> +      remote processor.
> +
> +  resets:
> +    maxItems: 1
> +
> +  reset-names:
> +    items:
> +      - const: rstctrl
> +
> +  ti,hwmods:
> +    $ref: /schemas/types.yaml#/definitions/string
> +    deprecated: true
> +    description:
> +      Name of the hwmod associated with the wkupm3 device.
> +
> +required:
> +  - compatible
> +  - reg
> +  - reg-names
> +  - ti,pm-firmware
> +
> +dependencies:
> +  resets: [reset-names]
> +  reset-names: [resets]
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    target-module@0 {
> +        compatible = "ti,sysc-omap4", "ti,sysc";
> +        reg = <0x0 0x4>;
> +        reg-names = "rev";
> +        #address-cells = <1>;
> +        #size-cells = <1>;
> +        ranges = <0x00000000 0x00000000 0x4000>,
> +                 <0x00080000 0x00080000 0x2000>;
> +
> +        cpu@0 {
> +            compatible = "ti,am3352-wkup-m3";
> +            reg = <0x00000000 0x4000>,
> +                  <0x00080000 0x2000>;
> +            reg-names = "umem", "dmem";
> +            resets = <&prm_wkup 3>;
> +            reset-names = "rstctrl";
> +            ti,pm-firmware = "am335x-pm-firmware.elf";
> +        };
> +    };
> diff --git a/Documentation/devicetree/bindings/remoteproc/wkup_m3_rproc.txt b/Documentation/devicetree/bindings/remoteproc/wkup_m3_rproc.txt
> deleted file mode 100644
> index 3a70073797eb..000000000000
> --- a/Documentation/devicetree/bindings/remoteproc/wkup_m3_rproc.txt
> +++ /dev/null
> @@ -1,52 +0,0 @@
> -TI Wakeup M3 Remoteproc Driver
> -==============================
> -
> -The TI AM33xx and AM43xx family of devices use a small Cortex M3 co-processor
> -(commonly referred to as Wakeup M3 or CM3) to help with various low power tasks
> -that cannot be controlled from the MPU. This CM3 processor requires a firmware
> -binary to accomplish this. The wkup_m3 remoteproc driver handles the loading of
> -the firmware and booting of the CM3.
> -
> -Wkup M3 Device Node:
> -====================
> -A wkup_m3 device node is used to represent the Wakeup M3 processor instance
> -within the SoC. It is added as a child node of the parent interconnect bus
> -(l4_wkup) through which it is accessible to the MPU.
> -
> -Required properties:
> ---------------------
> -- compatible:		Should be one of,
> -				"ti,am3352-wkup-m3" for AM33xx SoCs
> -				"ti,am4372-wkup-m3" for AM43xx SoCs
> -- reg:			Should contain the address ranges for the two internal
> -			memory regions, UMEM and DMEM. The parent node should
> -			provide an appropriate ranges property for properly
> -			translating these into bus addresses.
> -- reg-names:		Contains the corresponding names for the two memory
> -			regions. These should be named "umem" & "dmem".
> -- ti,hwmods:		Name of the hwmod associated with the wkupm3 device.
> -- ti,pm-firmware:	Name of firmware file to be used for loading and
> -			booting the wkup_m3 remote processor.
> -
> -Example:
> ---------
> -/* AM33xx */
> -ocp {
> -	 l4_wkup: l4_wkup@44c00000 {
> -		compatible = "am335-l4-wkup", "simple-bus";
> -		ranges = <0 0x44c00000 0x400000>;
> -		#address-cells = <1>;
> -		#size-cells = <1>;
> -
> -		wkup_m3: wkup_m3@100000 {
> -			compatible = "ti,am3352-wkup-m3";
> -			reg = <0x100000 0x4000>,
> -			      <0x180000 0x2000>;
> -			reg-names = "umem", "dmem";
> -			ti,hwmods = "wkup_m3";
> -			ti,pm-firmware = "am335x-pm-firmware.elf";
> -		};
> -	};
> -
> -	...
> -};
> 
> ---
> base-commit: c6859eed755df351a3978b33cb92365f9b3e8f06
> change-id: 20260719-ti-wkup_m3-edac718d0d7c
> 
> Best regards,
> -- 
> Bhargav
> 

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

end of thread, other threads:[~2026-07-22 15:16 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-19 18:06 [PATCH] dt-bindings: remoteproc: ti,wkup-m3: Convert to DT schema Bhargav Joshi
2026-07-21 13:55 ` Rob Herring (Arm)
2026-07-22 15:16 ` Mathieu Poirier

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