From: Charan Pedumuru <charan.pedumuru@gmail.com>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Peter Griffin <peter.griffin@linaro.org>
Cc: linux-usb@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
Charan Pedumuru <charan.pedumuru@gmail.com>
Subject: [PATCH] dt-bindings: usb: st,st-ehci-300x: convert to DT schema
Date: Sat, 07 Mar 2026 07:31:42 +0000 [thread overview]
Message-ID: <20260307-st-ehci-v1-1-3801a99ae913@gmail.com> (raw)
Convert STMicroelectronics USB EHCI Controller binding to DT schema.
Signed-off-by: Charan Pedumuru <charan.pedumuru@gmail.com>
---
Documentation/devicetree/bindings/usb/ehci-st.txt | 38 ---------
.../devicetree/bindings/usb/st,st-ehci-300x.yaml | 95 ++++++++++++++++++++++
2 files changed, 95 insertions(+), 38 deletions(-)
diff --git a/Documentation/devicetree/bindings/usb/ehci-st.txt b/Documentation/devicetree/bindings/usb/ehci-st.txt
deleted file mode 100644
index d6f2bdee20fc..000000000000
--- a/Documentation/devicetree/bindings/usb/ehci-st.txt
+++ /dev/null
@@ -1,38 +0,0 @@
-ST USB EHCI controller
-
-Required properties:
- - compatible : must be "st,st-ehci-300x"
- - reg : physical base addresses of the controller and length of memory mapped
- region
- - interrupts : one EHCI interrupt should be described here
- - pinctrl-names : a pinctrl state named "default" must be defined
- - pinctrl-0 : phandle referencing pin configuration of the USB controller
-See: Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
- - clocks : phandle list of usb clocks
- - clock-names : should be "ic" for interconnect clock and "clk48"
-See: Documentation/devicetree/bindings/clock/clock-bindings.txt
-
- - phys : phandle for the PHY device
- - phy-names : should be "usb"
- - resets : phandle + reset specifier pairs to the powerdown and softreset lines
- of the USB IP
- - reset-names : should be "power" and "softreset"
-See: Documentation/devicetree/bindings/reset/st,stih407-powerdown.yaml
-See: Documentation/devicetree/bindings/reset/reset.txt
-
-Example:
-
- ehci1: usb@fe203e00 {
- compatible = "st,st-ehci-300x";
- reg = <0xfe203e00 0x100>;
- interrupts = <GIC_SPI 148 IRQ_TYPE_NONE>;
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_usb1>;
- clocks = <&clk_s_a1_ls 0>;
- phys = <&usb2_phy>;
- phy-names = "usb";
-
- resets = <&powerdown STIH416_USB1_POWERDOWN>,
- <&softreset STIH416_USB1_SOFTRESET>;
- reset-names = "power", "softreset";
- };
diff --git a/Documentation/devicetree/bindings/usb/st,st-ehci-300x.yaml b/Documentation/devicetree/bindings/usb/st,st-ehci-300x.yaml
new file mode 100644
index 000000000000..0cd625cd003b
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/st,st-ehci-300x.yaml
@@ -0,0 +1,95 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/usb/st,st-ehci-300x.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: STMicroelectronics USB EHCI Controller (ST EHCI 300x)
+
+maintainers:
+ - Peter Griffin <peter.griffin@linaro.org>
+
+description:
+ The STMicroelectronics EHCI 300x controller is a USB 2.0 Enhanced Host
+ Controller Interface used in several ST SoCs. It provides high-speed USB
+ host functionality and interfaces with an external USB PHY. The controller
+ requires clock, reset, interrupt, and pin control configuration along with
+ PHY connection information to operate correctly.
+
+allOf:
+ - $ref: usb-hcd.yaml#
+
+properties:
+ compatible:
+ const: st,st-ehci-300x
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ pinctrl-names:
+ const: default
+
+ pinctrl-0:
+ maxItems: 1
+
+ clocks:
+ maxItems: 2
+
+ clock-names:
+ items:
+ - const: ic
+ - const: clk48
+
+ phys:
+ maxItems: 1
+
+ phy-names:
+ const: usb
+
+ resets:
+ maxItems: 2
+
+ reset-names:
+ items:
+ - const: power
+ - const: softreset
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - pinctrl-names
+ - pinctrl-0
+ - clocks
+ - clock-names
+ - phys
+ - phy-names
+ - resets
+ - reset-names
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+ #include <dt-bindings/clock/stih410-clks.h>
+ #include <dt-bindings/reset/stih407-resets.h>
+ usb@fe203e00 {
+ compatible = "st,st-ehci-300x";
+ reg = <0xfe203e00 0x100>;
+ interrupts = <GIC_SPI 148 IRQ_TYPE_NONE>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_usb1>;
+ clocks = <&clk_s_c0_flexgen CLK_TX_ICN_DISP_0>,
+ <&clk_s_c0_flexgen CLK_RX_ICN_DISP_0>;
+ clock-names = "ic", "clk48";
+ phys = <&usb2_phy>;
+ phy-names = "usb";
+ resets = <&powerdown STIH407_USB2_PORT0_POWERDOWN>,
+ <&softreset STIH407_USB2_PORT0_SOFTRESET>;
+ reset-names = "power", "softreset";
+ };
+...
---
base-commit: 3f9cd19e764b782706dbaacc69e502099cb014ba
change-id: 20260305-st-ehci-fa341495799b
Best regards,
--
Charan Pedumuru <charan.pedumuru@gmail.com>
next reply other threads:[~2026-03-07 7:31 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-07 7:31 Charan Pedumuru [this message]
2026-03-12 15:24 ` 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=20260307-st-ehci-v1-1-3801a99ae913@gmail.com \
--to=charan.pedumuru@gmail.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=krzk+dt@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=peter.griffin@linaro.org \
--cc=robh@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®