[PATCH v7 2/2] usb: dt-bindings: ti,twl6030-usb: convert to DT schema
From: Jihed Chaibi <hidden>
Date: 2025-08-24 11:24:42
Also in:
linux-usb, lkml
Subsystem:
open firmware and flattened device tree bindings, the rest, usb subsystem · Maintainers:
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Linus Torvalds, Greg Kroah-Hartman
Convert the legacy TXT binding for the TWL6030 USB module
to the modern YAML DT schema format. This adds formal validation
and improves documentation using a conditional schema.
The legacy twlxxxx-usb.txt file is no longer needed and is removed.
Signed-off-by: Jihed Chaibi <redacted>
---
Changes in v7:
- At this point the obsolete .txt binding file only contains
twl6030 related information, therefore it is deleted.
Changes in v6:
- Reworked 'interrupts' property to use a list of items with
descriptions per reviewer feedback.
Changes in v5:
- Split combined twlxxxx-usb binding into a dedicated file for
twl6030-usb per maintainer feedback.
- Used more accurate header for interrupt macros.
- Improved formatting in the examples.
- This patch also removes the old .txt file.
Changes in v4:
- This patch is split from larger series per maintainer feedback.
- v3 link:
https://lore.kernel.org/all/20250816021523.167049-1-jihed.chaibi.dev@gmail.com/ (local)
- Removed i2c node as it wasn't required by the old binding file.
- Updated node names to 'usb' and 'usb-phy' in the examples to follow
generic naming conventions per the Device Tree specification.
- Replaced raw interrupt values with standard defines for clarity.
- Improved formatting in the examples for clarity and consistency.
Changes in v3:
- No changes.
Changes in v2:
- Added '#phy-cells' property to support PHY framework integration.
---
.../bindings/usb/ti,twl6030-usb.yaml | 48 +++++++++++++++++++
.../devicetree/bindings/usb/twlxxxx-usb.txt | 21 --------
2 files changed, 48 insertions(+), 21 deletions(-)
create mode 100644 Documentation/devicetree/bindings/usb/ti,twl6030-usb.yaml
delete mode 100644 Documentation/devicetree/bindings/usb/twlxxxx-usb.txt
diff --git a/Documentation/devicetree/bindings/usb/ti,twl6030-usb.yaml b/Documentation/devicetree/bindings/usb/ti,twl6030-usb.yaml
new file mode 100644
index 000000000000..33b6da50660a
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/ti,twl6030-usb.yaml@@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/usb/ti,twl6030-usb.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Texas Instruments TWL6030 USB Comparator + +maintainers: + - Peter Ujfalusi <peter.ujfalusi@gmail.com> + +description: + Bindings for the USB comparator module found within the TWL6030 + family of companion chips. + +properties: + compatible: + const: ti,twl6030-usb + + interrupts: + items: + - description: OTG for ID events in host mode + - description: USB device mode for VBUS events + + usb-supply: + description: + Phandle to the VUSB regulator. For TWL6030, this should be the 'vusb' + regulator. For TWL6032 subclass, it should be the 'ldousb' regulator. + +required: + - compatible + - interrupts + - usb-supply + +additionalProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + + usb { + compatible = "ti,twl6030-usb"; + + interrupts = <4 IRQ_TYPE_LEVEL_HIGH>, <10 IRQ_TYPE_LEVEL_HIGH>; + interrupt-parent = <&gic>; + + usb-supply = <®_vusb>; + };
diff --git a/Documentation/devicetree/bindings/usb/twlxxxx-usb.txt b/Documentation/devicetree/bindings/usb/twlxxxx-usb.txt
deleted file mode 100644
index 7194c9504b28..000000000000
--- a/Documentation/devicetree/bindings/usb/twlxxxx-usb.txt
+++ /dev/null@@ -1,21 +0,0 @@ -USB COMPARATOR OF TWL CHIPS - -TWL6030 USB COMPARATOR - - compatible : Should be "ti,twl6030-usb" - - interrupts : Two interrupt numbers to the cpu should be specified. First - interrupt number is the otg interrupt number that raises ID interrupts when - the controller has to act as host and the second interrupt number is the - usb interrupt number that raises VBUS interrupts when the controller has to - act as device - - usb-supply : phandle to the regulator device tree node. It should be vusb - if it is twl6030 or ldousb if it is twl6032 subclass. - -twl6030-usb { - compatible = "ti,twl6030-usb"; - interrupts = < 4 10 >; -}; - -Board specific device node entry -&twl6030-usb { - usb-supply = <&vusb>; -};
--
2.47.2