From: Eduard Bostina <egbostina@gmail.com>
To: "Conor Dooley" <conor+dt@kernel.org>,
devicetree@vger.kernel.org,
"Eduard Bostina" <egbostina@gmail.com>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
linux-kernel@vger.kernel.org, linux-pwm@vger.kernel.org,
"Rob Herring" <robh@kernel.org>,
"Uwe Kleine-König" <ukleinek@kernel.org>
Cc: daniel.baluta@nxp.com, simona.toaca@nxp.com,
goledhruva@gmail.com, m-chawdhry@ti.com
Subject: [PATCH v2] dt-bindings: pwm: Convert TI PWM Subsystem to DT schema
Date: Wed, 12 Aug 2026 09:44:20 +0000 [thread overview]
Message-ID: <20260812094420.1057067-1-egbostina@gmail.com> (raw)
Convert the Texas Instruments SoC PWM Subsystem bindings
to DT schema.
During the conversion, the following updates were made:
- 'counter' node was added to the allowed child nodes
list to resolve dtbs_check warnings. Some eqep nodes
use 'counter' instead of 'eqep'.
Signed-off-by: Eduard Bostina <egbostina@gmail.com>
---
Changes in v2:
- Renamed the file to ti,am33xx-pwmss.yaml to match the base compatible.
- Required a 'compatible' property in the child nodes.
- Reduced the binding to a single example and included the PWM child
nodes (ECAP, EQEP, EHRPWM) in it.
Link to v1: https://lore.kernel.org/all/2026081109d-up2208.687731-1-egbostina@gmail.com/
.../devicetree/bindings/pwm/pwm-tipwmss.txt | 58 --------------
.../bindings/pwm/ti,am33xx-pwmss.yaml | 76 +++++++++++++++++++
2 files changed, 76 insertions(+), 58 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/pwm/pwm-tipwmss.txt
create mode 100644 Documentation/devicetree/bindings/pwm/ti,am33xx-pwmss.yaml
diff --git a/Documentation/devicetree/bindings/pwm/pwm-tipwmss.txt b/Documentation/devicetree/bindings/pwm/pwm-tipwmss.txt
deleted file mode 100644
index 4633697fbda1..000000000000
--- a/Documentation/devicetree/bindings/pwm/pwm-tipwmss.txt
+++ /dev/null
@@ -1,58 +0,0 @@
-TI SOC based PWM Subsystem
-
-Required properties:
-- compatible: Must be "ti,<soc>-pwmss".
- for am33xx - compatible = "ti,am33xx-pwmss";
- for am4372 - compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
- for dra746 - compatible = "ti,dra746-pwmss", "ti,am33xx-pwmss"
-
-- reg: physical base address and size of the registers map.
-- address-cells: Specify the number of u32 entries needed in child nodes.
- Should set to 1.
-- size-cells: specify number of u32 entries needed to specify child nodes size
- in reg property. Should set to 1.
-- ranges: describes the address mapping of a memory-mapped bus. Should set to
- physical address map of child's base address, physical address within
- parent's address space and length of the address map. For am33xx,
- 3 set of child register maps present, ECAP register space, EQEP
- register space, EHRPWM register space.
-
-Also child nodes should also populated under PWMSS DT node.
-
-Example:
-epwmss0: epwmss@48300000 { /* PWMSS for am33xx */
- compatible = "ti,am33xx-pwmss";
- reg = <0x48300000 0x10>;
- ti,hwmods = "epwmss0";
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x48300100 0x48300100 0x80 /* ECAP */
- 0x48300180 0x48300180 0x80 /* EQEP */
- 0x48300200 0x48300200 0x80>; /* EHRPWM */
-
- /* child nodes go here */
-};
-
-epwmss0: epwmss@48300000 { /* PWMSS for am4372 */
- compatible = "ti,am4372-pwmss","ti,am33xx-pwmss"
- reg = <0x48300000 0x10>;
- ti,hwmods = "epwmss0";
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x48300100 0x48300100 0x80 /* ECAP */
- 0x48300180 0x48300180 0x80 /* EQEP */
- 0x48300200 0x48300200 0x80>; /* EHRPWM */
-
- /* child nodes go here */
-};
-
-epwmss0: epwmss@4843e000 { /* PWMSS for DRA7xx */
- compatible = "ti,dra746-pwmss", "ti,am33xx-pwmss";
- reg = <0x4843e000 0x30>;
- ti,hwmods = "epwmss0";
- #address-cells = <1>;
- #size-cells = <1>;
- ranges;
-
- /* child nodes go here */
-};
diff --git a/Documentation/devicetree/bindings/pwm/ti,am33xx-pwmss.yaml b/Documentation/devicetree/bindings/pwm/ti,am33xx-pwmss.yaml
new file mode 100644
index 000000000000..e2b6ae326cb5
--- /dev/null
+++ b/Documentation/devicetree/bindings/pwm/ti,am33xx-pwmss.yaml
@@ -0,0 +1,76 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/pwm/ti,am33xx-pwmss.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Texas Instruments SoC PWM Subsystem
+
+maintainers:
+ - Eduard Bostina <egbostina@gmail.com>
+
+properties:
+ compatible:
+ oneOf:
+ - const: ti,am33xx-pwmss
+ - items:
+ - enum:
+ - ti,am4372-pwmss
+ - ti,dra746-pwmss
+ - const: ti,am33xx-pwmss
+
+ reg:
+ maxItems: 1
+
+ "#address-cells":
+ const: 1
+
+ "#size-cells":
+ const: 1
+
+ ranges: true
+
+patternProperties:
+ "^(ecap|eqep|pwm|counter)@[0-9a-f]+$":
+ type: object
+ description: Child nodes for ECAP, EQEP (counter), and EHRPWM
+ required:
+ - compatible
+
+required:
+ - compatible
+ - reg
+ - "#address-cells"
+ - "#size-cells"
+ - ranges
+
+additionalProperties: false
+
+examples:
+ - |
+ pwm@48300000 {
+ compatible = "ti,am33xx-pwmss";
+ reg = <0x48300000 0x10>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges = <0x48300100 0x48300100 0x80>, /* ECAP */
+ <0x48300180 0x48300180 0x80>, /* EQEP */
+ <0x48300200 0x48300200 0x80>; /* EHRPWM */
+
+ pwm@48300100 {
+ compatible = "ti,am3352-ecap";
+ #pwm-cells = <3>;
+ reg = <0x48300100 0x80>;
+ };
+
+ counter@48300180 {
+ compatible = "ti,am3352-eqep";
+ reg = <0x48300180 0x80>;
+ };
+
+ pwm@48300200 {
+ compatible = "ti,am3352-ehrpwm";
+ #pwm-cells = <3>;
+ reg = <0x48300200 0x80>;
+ };
+ };
--
2.43.0
next reply other threads:[~2026-08-12 9:44 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-12 9:44 Eduard Bostina [this message]
2026-08-12 9:53 ` [PATCH v2] dt-bindings: pwm: Convert TI PWM Subsystem to DT schema sashiko-bot
2026-08-12 19:28 ` Rob Herring (Arm)
2026-08-12 19:35 ` Rob Herring (Arm)
2026-08-12 19:44 ` Rob Herring
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260812094420.1057067-1-egbostina@gmail.com \
--to=egbostina@gmail.com \
--cc=conor+dt@kernel.org \
--cc=daniel.baluta@nxp.com \
--cc=devicetree@vger.kernel.org \
--cc=goledhruva@gmail.com \
--cc=krzk+dt@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pwm@vger.kernel.org \
--cc=m-chawdhry@ti.com \
--cc=robh@kernel.org \
--cc=simona.toaca@nxp.com \
--cc=ukleinek@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.