public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] dt-bindings: usb: atmel: Convert Atmel USB controller bindings to YAML
@ 2026-02-01 11:34 Charan Pedumuru
  2026-02-01 11:34 ` [PATCH 1/4] dt-bindings: usb: atmel,at91rm9200-ohci: convert to DT schema Charan Pedumuru
                   ` (3 more replies)
  0 siblings, 4 replies; 10+ messages in thread
From: Charan Pedumuru @ 2026-02-01 11:34 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Claudiu Beznea, Herve Codina, Nicolas Ferre,
	Alexandre Belloni
  Cc: linux-usb, devicetree, linux-arm-kernel, linux-kernel,
	Charan Pedumuru

This patch series converts the legacy text-based Device Tree bindings for
Atmel/Microchip USB controllers to DT schema (YAML) format.

Signed-off-by: Charan Pedumuru <charan.pedumuru@gmail.com>
---
Charan Pedumuru (4):
      dt-bindings: usb: atmel,at91rm9200-ohci: convert to DT schema
      dt-bindings: usb: atmel,at91sam9g45-ehci: convert to DT schema
      dt-bindings: usb: atmel,at91rm9200-udc: convert to DT schema
      dt-bindings: usb: atmel,at91sam9rl-udc: convert to DT schema

 .../bindings/usb/atmel,at91rm9200-ohci.yaml        |  85 ++++++++++++++
 .../bindings/usb/atmel,at91rm9200-udc.yaml         |  77 +++++++++++++
 .../bindings/usb/atmel,at91sam9g45-ehci.yaml       |  71 ++++++++++++
 .../bindings/usb/atmel,at91sam9rl-udc.yaml         |  81 +++++++++++++
 .../devicetree/bindings/usb/atmel-usb.txt          | 125 ---------------------
 5 files changed, 314 insertions(+), 125 deletions(-)
---
base-commit: 3f24e4edcd1b8981c6b448ea2680726dedd87279
change-id: 20260129-atmel-usb-37f89a141e48

Best regards,
-- 
Charan Pedumuru <charan.pedumuru@gmail.com>


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

* [PATCH 1/4] dt-bindings: usb: atmel,at91rm9200-ohci: convert to DT schema
  2026-02-01 11:34 [PATCH 0/4] dt-bindings: usb: atmel: Convert Atmel USB controller bindings to YAML Charan Pedumuru
@ 2026-02-01 11:34 ` Charan Pedumuru
  2026-02-04 13:15   ` Charan Pedumuru
  2026-02-01 11:34 ` [PATCH 2/4] dt-bindings: usb: atmel,at91sam9g45-ehci: " Charan Pedumuru
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 10+ messages in thread
From: Charan Pedumuru @ 2026-02-01 11:34 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Claudiu Beznea, Herve Codina, Nicolas Ferre,
	Alexandre Belloni
  Cc: linux-usb, devicetree, linux-arm-kernel, linux-kernel,
	Charan Pedumuru

Convert Atmel AT91RM9200 / AT91SAM9 style OHCI USB Host
Controller binding to DT schema.
Changes during conversion:
- Include "usb-ohci" as a fallback compatible to allow at91 OHCI
  driver matching.

Signed-off-by: Charan Pedumuru <charan.pedumuru@gmail.com>
---
 .../bindings/usb/atmel,at91rm9200-ohci.yaml        | 85 ++++++++++++++++++++++
 1 file changed, 85 insertions(+)

diff --git a/Documentation/devicetree/bindings/usb/atmel,at91rm9200-ohci.yaml b/Documentation/devicetree/bindings/usb/atmel,at91rm9200-ohci.yaml
new file mode 100644
index 000000000000..f04de6d553d2
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/atmel,at91rm9200-ohci.yaml
@@ -0,0 +1,85 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/usb/atmel,at91rm9200-ohci.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Atmel AT91RM9200 / AT91SAM9 style OHCI USB Host Controller
+
+maintainers:
+  - Nicolas Ferre <nicolas.ferre@microchip.com>
+  - Alexandre Belloni <alexandre.belloni@bootlin.com>
+
+description:
+  The Atmel AT91RM9200 / AT91SAM9 OHCI USB Host Controller implements a
+  USB 1.1 Open Host Controller Interface (OHCI) compliant host interface.
+  It provides low-speed and full-speed USB host functionality and is
+  integrated into Atmel AT91RM9200 and AT91SAM9 family SoCs.
+
+allOf:
+  - $ref: /schemas/usb/usb.yaml#
+
+properties:
+  compatible:
+    oneOf:
+      - items:
+          - const: atmel,at91rm9200-ohci
+          - const: usb-ohci
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  clocks:
+    minItems: 3
+    maxItems: 3
+
+  clock-names:
+    items:
+      - const: ohci_clk
+      - const: hclk
+      - const: uhpck
+
+  num-ports:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    description: Number of downstream ports supported by this OHCI controller
+    minimum: 1
+    maximum: 15
+
+  atmel,vbus-gpio:
+    description: GPIO used to control or sense the USB VBUS power.
+    minItems: 1
+    maxItems: 3
+
+  atmel,oc-gpio:
+    description: GPIO used to signal USB overcurrent condition.
+    minItems: 1
+    maxItems: 3
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - clocks
+  - clock-names
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/at91.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/gpio/gpio.h>
+    usb@500000 {
+        compatible = "atmel,at91rm9200-ohci", "usb-ohci";
+        reg = <0x500000 0x100000>;
+        interrupts = <20 IRQ_TYPE_LEVEL_HIGH>;
+        clocks = <&uhphs_clk>, <&uhphs_clk>, <&uhpck>;
+        clock-names = "ohci_clk", "hclk", "uhpck";
+        atmel,vbus-gpio = <&pioA 18 GPIO_ACTIVE_HIGH>;
+        atmel,oc-gpio   = <&pioB 10 GPIO_ACTIVE_LOW>;
+        num-ports = <2>;
+    };
+...

-- 
2.52.0


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

* [PATCH 2/4] dt-bindings: usb: atmel,at91sam9g45-ehci: convert to DT schema
  2026-02-01 11:34 [PATCH 0/4] dt-bindings: usb: atmel: Convert Atmel USB controller bindings to YAML Charan Pedumuru
  2026-02-01 11:34 ` [PATCH 1/4] dt-bindings: usb: atmel,at91rm9200-ohci: convert to DT schema Charan Pedumuru
@ 2026-02-01 11:34 ` Charan Pedumuru
  2026-02-01 12:37   ` Rob Herring (Arm)
  2026-02-01 11:34 ` [PATCH 3/4] dt-bindings: usb: atmel,at91rm9200-udc: " Charan Pedumuru
  2026-02-01 11:34 ` [PATCH 4/4] dt-bindings: usb: atmel,at91sam9rl-udc: " Charan Pedumuru
  3 siblings, 1 reply; 10+ messages in thread
From: Charan Pedumuru @ 2026-02-01 11:34 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Claudiu Beznea, Herve Codina, Nicolas Ferre,
	Alexandre Belloni
  Cc: linux-usb, devicetree, linux-arm-kernel, linux-kernel,
	Charan Pedumuru

Convert Atmel AT91SAM9G45 EHCI USB Host Controller
binding to DT schema.
Changes during conversion:
- Include "usb-ehci" as a fallback compatible to allow atmel EHCI
  driver matching.

Signed-off-by: Charan Pedumuru <charan.pedumuru@gmail.com>
---
 .../bindings/usb/atmel,at91sam9g45-ehci.yaml       | 71 ++++++++++++++++++++++
 1 file changed, 71 insertions(+)

diff --git a/Documentation/devicetree/bindings/usb/atmel,at91sam9g45-ehci.yaml b/Documentation/devicetree/bindings/usb/atmel,at91sam9g45-ehci.yaml
new file mode 100644
index 000000000000..d7b8d110656c
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/atmel,at91sam9g45-ehci.yaml
@@ -0,0 +1,71 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/usb/atmel,at91sam9g45-ehci.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Atmel AT91SAM9G45 EHCI USB Host Controller
+
+maintainers:
+  - Nicolas Ferre <nicolas.ferre@microchip.com>
+  - Alexandre Belloni <alexandre.belloni@bootlin.com>
+
+description:
+  The Atmel AT91SAM9G45 EHCI controller is a high-speed USB 2.0 host
+  controller compliant with the EHCI specification. It provides USB host
+  functionality when operating in host mode and requires a peripheral clock
+  and a UTMI clock for operation. The controller may support multiple USB
+  ports, with the PHY interface type selectable via the phy_type property.
+
+allOf:
+  - $ref: /schemas/usb/usb.yaml#
+
+properties:
+  compatible:
+    oneOf:
+      - items:
+          - const: atmel,at91sam9g45-ehci
+          - const: usb-ehci
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  clocks:
+    minItems: 2
+    maxItems: 2
+
+  clock-names:
+    items:
+      - const: ehci_clk
+      - const: usb_clk
+
+  phy_type:
+    enum:
+      - utmi
+      - hsic
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - clocks
+  - clock-names
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/at91.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+    usb@500000 {
+        compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
+        reg = <0x00500000 0x100000>;
+        interrupts = <41 IRQ_TYPE_LEVEL_HIGH 2>;
+        clocks = <&pmc PMC_TYPE_CORE PMC_UTMI>, <&pmc PMC_TYPE_PERIPHERAL 41>;
+        clock-names = "usb_clk", "ehci_clk";
+        phy_type = "hsic";
+    };
+...

-- 
2.52.0


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

* [PATCH 3/4] dt-bindings: usb: atmel,at91rm9200-udc: convert to DT schema
  2026-02-01 11:34 [PATCH 0/4] dt-bindings: usb: atmel: Convert Atmel USB controller bindings to YAML Charan Pedumuru
  2026-02-01 11:34 ` [PATCH 1/4] dt-bindings: usb: atmel,at91rm9200-ohci: convert to DT schema Charan Pedumuru
  2026-02-01 11:34 ` [PATCH 2/4] dt-bindings: usb: atmel,at91sam9g45-ehci: " Charan Pedumuru
@ 2026-02-01 11:34 ` Charan Pedumuru
  2026-02-01 11:34 ` [PATCH 4/4] dt-bindings: usb: atmel,at91sam9rl-udc: " Charan Pedumuru
  3 siblings, 0 replies; 10+ messages in thread
From: Charan Pedumuru @ 2026-02-01 11:34 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Claudiu Beznea, Herve Codina, Nicolas Ferre,
	Alexandre Belloni
  Cc: linux-usb, devicetree, linux-arm-kernel, linux-kernel,
	Charan Pedumuru

Convert Atmel AT91 USB Device Controller (UDC) binding to DT schema.
Changes during conversion:
- Include "atmel,pullup-gpio" and "atmel,matrix" in the properties since
  they are required by existing in-tree DTS definitions.

Signed-off-by: Charan Pedumuru <charan.pedumuru@gmail.com>
---
 .../bindings/usb/atmel,at91rm9200-udc.yaml         | 77 ++++++++++++++++++++++
 1 file changed, 77 insertions(+)

diff --git a/Documentation/devicetree/bindings/usb/atmel,at91rm9200-udc.yaml b/Documentation/devicetree/bindings/usb/atmel,at91rm9200-udc.yaml
new file mode 100644
index 000000000000..3af267c863e0
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/atmel,at91rm9200-udc.yaml
@@ -0,0 +1,77 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/usb/atmel,at91rm9200-udc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Atmel AT91 USB Device Controller (UDC)
+
+maintainers:
+  - Nicolas Ferre <nicolas.ferre@microchip.com>
+  - Alexandre Belloni <alexandre.belloni@bootlin.com>
+
+description:
+  The Atmel AT91 USB Device Controller provides USB gadget (device-mode)
+  functionality on AT91 SoCs. It requires a peripheral clock and an AHB
+  clock for operation and may optionally control VBUS power through a GPIO.
+
+properties:
+  compatible:
+    enum:
+      - atmel,at91rm9200-udc
+      - atmel,at91sam9260-udc
+      - atmel,at91sam9261-udc
+      - atmel,at91sam9263-udc
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  clocks:
+    minItems: 2
+    maxItems: 2
+
+  clock-names:
+    items:
+      - const: pclk
+      - const: hclk
+
+  atmel,vbus-gpio:
+    description: GPIO used to enable or control VBUS power for the USB bus.
+    maxItems: 1
+
+  atmel,matrix:
+    $ref: /schemas/types.yaml#/definitions/phandle
+    description: Phandle to the Atmel bus matrix controller.
+
+  atmel,pullup-gpio:
+    description:
+      GPIO controlling the USB D+ pull-up resistor used to signal device
+      connection to the host.
+    maxItems: 1
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - clocks
+  - clock-names
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/clock/at91.h>
+    #include <dt-bindings/gpio/gpio.h>
+    gadget@fffa4000 {
+        compatible = "atmel,at91rm9200-udc";
+        reg = <0xfffa4000 0x4000>;
+        interrupts = <10 4>;
+        clocks = <&udc_clk>, <&udpck>;
+        clock-names = "pclk", "hclk";
+        atmel,vbus-gpio = <&pioC 5 GPIO_ACTIVE_HIGH>;
+    };
+...

-- 
2.52.0


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

* [PATCH 4/4] dt-bindings: usb: atmel,at91sam9rl-udc: convert to DT schema
  2026-02-01 11:34 [PATCH 0/4] dt-bindings: usb: atmel: Convert Atmel USB controller bindings to YAML Charan Pedumuru
                   ` (2 preceding siblings ...)
  2026-02-01 11:34 ` [PATCH 3/4] dt-bindings: usb: atmel,at91rm9200-udc: " Charan Pedumuru
@ 2026-02-01 11:34 ` Charan Pedumuru
  3 siblings, 0 replies; 10+ messages in thread
From: Charan Pedumuru @ 2026-02-01 11:34 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Claudiu Beznea, Herve Codina, Nicolas Ferre,
	Alexandre Belloni
  Cc: linux-usb, devicetree, linux-arm-kernel, linux-kernel,
	Charan Pedumuru

Convert Atmel High-Speed USB Device Controller (USBA) binding to DT schema.
Changes during conversion:
- Include "#address-cells" and "#size-cells" in the properties since they
  are required by existing in-tree DTS definitions.

Signed-off-by: Charan Pedumuru <charan.pedumuru@gmail.com>
---
 .../bindings/usb/atmel,at91sam9rl-udc.yaml         |  81 +++++++++++++
 .../devicetree/bindings/usb/atmel-usb.txt          | 125 ---------------------
 2 files changed, 81 insertions(+), 125 deletions(-)

diff --git a/Documentation/devicetree/bindings/usb/atmel,at91sam9rl-udc.yaml b/Documentation/devicetree/bindings/usb/atmel,at91sam9rl-udc.yaml
new file mode 100644
index 000000000000..6f5710cecaee
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/atmel,at91sam9rl-udc.yaml
@@ -0,0 +1,81 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/usb/atmel,at91sam9rl-udc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Atmel High-Speed USB Device Controller (USBA)
+
+maintainers:
+  - Nicolas Ferre <nicolas.ferre@microchip.com>
+  - Alexandre Belloni <alexandre.belloni@bootlin.com>
+
+description:
+  The Atmel High-Speed USB Device Controller (USBA) provides USB 2.0
+  high-speed gadget functionality on several Atmel and Microchip SoCs.
+  The controller requires a peripheral clock and a host clock for operation
+  and may optionally use a GPIO to detect VBUS presence.
+
+properties:
+  compatible:
+    oneOf:
+      - enum:
+          - atmel,at91sam9rl-udc
+          - atmel,at91sam9g45-udc
+          - atmel,sama5d3-udc
+      - items:
+          - const: microchip,lan9662-udc
+          - const: atmel,sama5d3-udc
+      - const: microchip,sam9x60-udc
+
+  reg:
+    maxItems: 2
+
+  interrupts:
+    maxItems: 1
+
+  "#address-cells":
+    const: 1
+
+  "#size-cells":
+    const: 0
+
+  clocks:
+    minItems: 2
+    maxItems: 2
+
+  clock-names:
+    minItems: 2
+    maxItems: 2
+    items:
+      enum: [pclk, hclk]
+
+  atmel,vbus-gpio:
+    description: GPIO used to detect the presence of VBUS, indicating that
+      the USB cable is connected.
+    maxItems: 1
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - clocks
+  - clock-names
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/clock/at91.h>
+    #include <dt-bindings/gpio/gpio.h>
+    gadget@fff78000 {
+        compatible = "atmel,at91sam9g45-udc";
+        reg = <0x00600000 0x80000
+               0xfff78000 0x400>;
+        interrupts = <27 IRQ_TYPE_LEVEL_HIGH 0>;
+        clocks = <&pmc PMC_TYPE_PERIPHERAL 27>, <&pmc PMC_TYPE_CORE PMC_UTMI>;
+        clock-names = "pclk", "hclk";
+        atmel,vbus-gpio = <&pioC 15 GPIO_ACTIVE_HIGH>;
+    };
+...
diff --git a/Documentation/devicetree/bindings/usb/atmel-usb.txt b/Documentation/devicetree/bindings/usb/atmel-usb.txt
deleted file mode 100644
index 12183ef47ee4..000000000000
--- a/Documentation/devicetree/bindings/usb/atmel-usb.txt
+++ /dev/null
@@ -1,125 +0,0 @@
-Atmel SOC USB controllers
-
-OHCI
-
-Required properties:
- - compatible: Should be "atmel,at91rm9200-ohci" for USB controllers
-   used in host mode.
- - reg: Address and length of the register set for the device
- - interrupts: Should contain ohci interrupt
- - clocks: Should reference the peripheral, host and system clocks
- - clock-names: Should contain three strings
-		"ohci_clk" for the peripheral clock
-		"hclk" for the host clock
-		"uhpck" for the system clock
- - num-ports: Number of ports.
- - atmel,vbus-gpio: If present, specifies a gpio that needs to be
-   activated for the bus to be powered.
- - atmel,oc-gpio: If present, specifies a gpio that needs to be
-   activated for the overcurrent detection.
-
-usb0: ohci@500000 {
-	compatible = "atmel,at91rm9200-ohci", "usb-ohci";
-	reg = <0x00500000 0x100000>;
-	clocks = <&uhphs_clk>, <&uhphs_clk>, <&uhpck>;
-	clock-names = "ohci_clk", "hclk", "uhpck";
-	interrupts = <20 4>;
-	num-ports = <2>;
-};
-
-EHCI
-
-Required properties:
- - compatible: Should be "atmel,at91sam9g45-ehci" for USB controllers
-   used in host mode.
- - reg: Address and length of the register set for the device
- - interrupts: Should contain ehci interrupt
- - clocks: Should reference the peripheral and the UTMI clocks
- - clock-names: Should contain two strings
-		"ehci_clk" for the peripheral clock
-		"usb_clk" for the UTMI clock
-
-Optional properties:
- - phy_type : For multi port host USB controllers, should be one of
-   "utmi", or "hsic".
-
-usb1: ehci@800000 {
-	compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
-	reg = <0x00800000 0x100000>;
-	interrupts = <22 4>;
-	clocks = <&utmi>, <&uhphs_clk>;
-	clock-names = "usb_clk", "ehci_clk";
-};
-
-AT91 USB device controller
-
-Required properties:
- - compatible: Should be one of the following
-	       "atmel,at91rm9200-udc"
-	       "atmel,at91sam9260-udc"
-	       "atmel,at91sam9261-udc"
-	       "atmel,at91sam9263-udc"
- - reg: Address and length of the register set for the device
- - interrupts: Should contain macb interrupt
- - clocks: Should reference the peripheral and the AHB clocks
- - clock-names: Should contain two strings
-		"pclk" for the peripheral clock
-		"hclk" for the AHB clock
-
-Optional properties:
- - atmel,vbus-gpio: If present, specifies a gpio that needs to be
-   activated for the bus to be powered.
-
-usb1: gadget@fffa4000 {
-	compatible = "atmel,at91rm9200-udc";
-	reg = <0xfffa4000 0x4000>;
-	interrupts = <10 4>;
-	clocks = <&udc_clk>, <&udpck>;
-	clock-names = "pclk", "hclk";
-	atmel,vbus-gpio = <&pioC 5 0>;
-};
-
-Atmel High-Speed USB device controller
-
-Required properties:
- - compatible: Should be one of the following
-	       "atmel,at91sam9rl-udc"
-	       "atmel,at91sam9g45-udc"
-	       "atmel,sama5d3-udc"
-	       "microchip,sam9x60-udc"
-	       "microchip,lan9662-udc"
-	       For "microchip,lan9662-udc" the fallback "atmel,sama5d3-udc"
-	       is required.
- - reg: Address and length of the register set for the device
- - interrupts: Should contain usba interrupt
- - clocks: Should reference the peripheral and host clocks
- - clock-names: Should contain two strings
-		"pclk" for the peripheral clock
-		"hclk" for the host clock
-
-Deprecated property:
- - ep childnode: To specify the number of endpoints and their properties.
-
-Optional properties:
- - atmel,vbus-gpio: If present, specifies a gpio that allows to detect whether
-   vbus is present (USB is connected).
-
-Deprecated child node properties:
- - name: Name of the endpoint.
- - reg: Num of the endpoint.
- - atmel,fifo-size: Size of the fifo.
- - atmel,nb-banks: Number of banks.
- - atmel,can-dma: Boolean to specify if the endpoint support DMA.
- - atmel,can-isoc: Boolean to specify if the endpoint support ISOC.
-
-usb2: gadget@fff78000 {
-	#address-cells = <1>;
-	#size-cells = <0>;
-	compatible = "atmel,at91sam9rl-udc";
-	reg = <0x00600000 0x80000
-	       0xfff78000 0x400>;
-	interrupts = <27 4 0>;
-	clocks = <&utmi>, <&udphs_clk>;
-	clock-names = "hclk", "pclk";
-	atmel,vbus-gpio = <&pioB 19 0>;
-};

-- 
2.52.0


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

* Re: [PATCH 2/4] dt-bindings: usb: atmel,at91sam9g45-ehci: convert to DT schema
  2026-02-01 11:34 ` [PATCH 2/4] dt-bindings: usb: atmel,at91sam9g45-ehci: " Charan Pedumuru
@ 2026-02-01 12:37   ` Rob Herring (Arm)
  2026-02-02 11:02     ` Charan Pedumuru
  0 siblings, 1 reply; 10+ messages in thread
From: Rob Herring (Arm) @ 2026-02-01 12:37 UTC (permalink / raw)
  To: Charan Pedumuru
  Cc: devicetree, Greg Kroah-Hartman, linux-kernel, Alexandre Belloni,
	Claudiu Beznea, Krzysztof Kozlowski, Nicolas Ferre,
	linux-arm-kernel, Herve Codina, linux-usb, Conor Dooley


On Sun, 01 Feb 2026 11:34:21 +0000, Charan Pedumuru wrote:
> Convert Atmel AT91SAM9G45 EHCI USB Host Controller
> binding to DT schema.
> Changes during conversion:
> - Include "usb-ehci" as a fallback compatible to allow atmel EHCI
>   driver matching.
> 
> Signed-off-by: Charan Pedumuru <charan.pedumuru@gmail.com>
> ---
>  .../bindings/usb/atmel,at91sam9g45-ehci.yaml       | 71 ++++++++++++++++++++++
>  1 file changed, 71 insertions(+)
> 

My bot found errors running 'make dt_binding_check' on your patch:

yamllint warnings/errors:

dtschema/dtc warnings/errors:
Warning: Duplicate compatible "usb-ehci" found in schemas matching "$id":
	http://devicetree.org/schemas/usb/atmel,at91sam9g45-ehci.yaml
	http://devicetree.org/schemas/usb/generic-ehci.yaml#
Warning: Duplicate compatible "atmel,at91sam9g45-ehci" found in schemas matching "$id":
	http://devicetree.org/schemas/usb/atmel,at91sam9g45-ehci.yaml
	http://devicetree.org/schemas/usb/generic-ehci.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/atmel,at91sam9g45-ehci.example.dtb: usb@500000 (atmel,at91sam9g45-ehci): Unevaluated properties are not allowed ('clock-names' was unexpected)
	from schema $id: http://devicetree.org/schemas/usb/generic-ehci.yaml

doc reference errors (make refcheckdocs):

See https://patchwork.kernel.org/project/devicetree/patch/20260201-atmel-usb-v1-2-d1a3e93003f1@gmail.com

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.


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

* Re: [PATCH 2/4] dt-bindings: usb: atmel,at91sam9g45-ehci: convert to DT schema
  2026-02-01 12:37   ` Rob Herring (Arm)
@ 2026-02-02 11:02     ` Charan Pedumuru
  2026-02-03 18:08       ` Rob Herring
  0 siblings, 1 reply; 10+ messages in thread
From: Charan Pedumuru @ 2026-02-02 11:02 UTC (permalink / raw)
  To: Rob Herring (Arm)
  Cc: devicetree, Greg Kroah-Hartman, linux-kernel, Alexandre Belloni,
	Claudiu Beznea, Krzysztof Kozlowski, Nicolas Ferre,
	linux-arm-kernel, Herve Codina, linux-usb, Conor Dooley



On 01-02-2026 18:07, Rob Herring (Arm) wrote:
> 
> On Sun, 01 Feb 2026 11:34:21 +0000, Charan Pedumuru wrote:
>> Convert Atmel AT91SAM9G45 EHCI USB Host Controller
>> binding to DT schema.
>> Changes during conversion:
>> - Include "usb-ehci" as a fallback compatible to allow atmel EHCI
>>   driver matching.
>>
>> Signed-off-by: Charan Pedumuru <charan.pedumuru@gmail.com>
>> ---
>>  .../bindings/usb/atmel,at91sam9g45-ehci.yaml       | 71 ++++++++++++++++++++++
>>  1 file changed, 71 insertions(+)
>>
> 
> My bot found errors running 'make dt_binding_check' on your patch:
> 
> yamllint warnings/errors:
> 
> dtschema/dtc warnings/errors:
> Warning: Duplicate compatible "usb-ehci" found in schemas matching "$id":
> 	http://devicetree.org/schemas/usb/atmel,at91sam9g45-ehci.yaml
> 	http://devicetree.org/schemas/usb/generic-ehci.yaml#
> Warning: Duplicate compatible "atmel,at91sam9g45-ehci" found in schemas matching "$id":
> 	http://devicetree.org/schemas/usb/atmel,at91sam9g45-ehci.yaml
> 	http://devicetree.org/schemas/usb/generic-ehci.yaml#
> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/atmel,at91sam9g45-ehci.example.dtb: usb@500000 (atmel,at91sam9g45-ehci): Unevaluated properties are not allowed ('clock-names' was unexpected)
> 	from schema $id: http://devicetree.org/schemas/usb/generic-ehci.yaml

Hi Rob,
Isn't it pointing to the other schema ID which was not defined by me? Can I have your suggestion on changing the compatible name to other name to resolve this error? I ran dt_check in my machine on the latest version and I don't see any error there.

> 
> doc reference errors (make refcheckdocs):
> 
> See https://patchwork.kernel.org/project/devicetree/patch/20260201-atmel-usb-v1-2-d1a3e93003f1@gmail.com
> 
> The base for the series is generally the latest rc1. A different dependency
> should be noted in *this* patch.
> 
> If you already ran 'make dt_binding_check' and didn't see the above
> error(s), then make sure 'yamllint' is installed and dt-schema is up to
> date:
> 
> pip3 install dtschema --upgrade
> 
> Please check and re-submit after running the above command yourself. Note
> that DT_SCHEMA_FILES can be set to your schema file to speed up checking
> your schema. However, it must be unset to test all examples with your schema.
> 

-- 
Best Regards,
Charan.


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

* Re: [PATCH 2/4] dt-bindings: usb: atmel,at91sam9g45-ehci: convert to DT schema
  2026-02-02 11:02     ` Charan Pedumuru
@ 2026-02-03 18:08       ` Rob Herring
  2026-02-04 13:09         ` Charan Pedumuru
  0 siblings, 1 reply; 10+ messages in thread
From: Rob Herring @ 2026-02-03 18:08 UTC (permalink / raw)
  To: Charan Pedumuru
  Cc: devicetree, Greg Kroah-Hartman, linux-kernel, Alexandre Belloni,
	Claudiu Beznea, Krzysztof Kozlowski, Nicolas Ferre,
	linux-arm-kernel, Herve Codina, linux-usb, Conor Dooley

On Mon, Feb 02, 2026 at 04:32:54PM +0530, Charan Pedumuru wrote:
> 
> 
> On 01-02-2026 18:07, Rob Herring (Arm) wrote:
> > 
> > On Sun, 01 Feb 2026 11:34:21 +0000, Charan Pedumuru wrote:
> >> Convert Atmel AT91SAM9G45 EHCI USB Host Controller
> >> binding to DT schema.
> >> Changes during conversion:
> >> - Include "usb-ehci" as a fallback compatible to allow atmel EHCI
> >>   driver matching.
> >>
> >> Signed-off-by: Charan Pedumuru <charan.pedumuru@gmail.com>
> >> ---
> >>  .../bindings/usb/atmel,at91sam9g45-ehci.yaml       | 71 ++++++++++++++++++++++
> >>  1 file changed, 71 insertions(+)
> >>
> > 
> > My bot found errors running 'make dt_binding_check' on your patch:
> > 
> > yamllint warnings/errors:
> > 
> > dtschema/dtc warnings/errors:
> > Warning: Duplicate compatible "usb-ehci" found in schemas matching "$id":
> > 	http://devicetree.org/schemas/usb/atmel,at91sam9g45-ehci.yaml
> > 	http://devicetree.org/schemas/usb/generic-ehci.yaml#
> > Warning: Duplicate compatible "atmel,at91sam9g45-ehci" found in schemas matching "$id":
> > 	http://devicetree.org/schemas/usb/atmel,at91sam9g45-ehci.yaml
> > 	http://devicetree.org/schemas/usb/generic-ehci.yaml#
> > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/atmel,at91sam9g45-ehci.example.dtb: usb@500000 (atmel,at91sam9g45-ehci): Unevaluated properties are not allowed ('clock-names' was unexpected)
> > 	from schema $id: http://devicetree.org/schemas/usb/generic-ehci.yaml
> 
> Hi Rob,
> Isn't it pointing to the other schema ID which was not defined by me? 

You can't have the same compatible defined in 2 places.

> Can I have your suggestion on changing the compatible name to other 
> name to resolve this error? 

Why are you converting this? It's already covered by generic-ehci.yaml. 
Though I seem to recall there were some warnings for Atmel.

> I ran dt_check in my machine on the 
> latest version and I don't see any error there.

Please read the last paragraph below for why.

> 
> > 
> > doc reference errors (make refcheckdocs):
> > 
> > See https://patchwork.kernel.org/project/devicetree/patch/20260201-atmel-usb-v1-2-d1a3e93003f1@gmail.com
> > 
> > The base for the series is generally the latest rc1. A different dependency
> > should be noted in *this* patch.
> > 
> > If you already ran 'make dt_binding_check' and didn't see the above
> > error(s), then make sure 'yamllint' is installed and dt-schema is up to
> > date:
> > 
> > pip3 install dtschema --upgrade
> > 
> > Please check and re-submit after running the above command yourself. Note
> > that DT_SCHEMA_FILES can be set to your schema file to speed up checking
> > your schema. However, it must be unset to test all examples with your schema.

^^^^^^^

Rob

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

* Re: [PATCH 2/4] dt-bindings: usb: atmel,at91sam9g45-ehci: convert to DT schema
  2026-02-03 18:08       ` Rob Herring
@ 2026-02-04 13:09         ` Charan Pedumuru
  0 siblings, 0 replies; 10+ messages in thread
From: Charan Pedumuru @ 2026-02-04 13:09 UTC (permalink / raw)
  To: Rob Herring
  Cc: devicetree, Greg Kroah-Hartman, linux-kernel, Alexandre Belloni,
	Claudiu Beznea, Krzysztof Kozlowski, Nicolas Ferre,
	linux-arm-kernel, Herve Codina, linux-usb, Conor Dooley



On 03-02-2026 23:38, Rob Herring wrote:
> On Mon, Feb 02, 2026 at 04:32:54PM +0530, Charan Pedumuru wrote:
>>
>>
>> On 01-02-2026 18:07, Rob Herring (Arm) wrote:
>>>
>>> On Sun, 01 Feb 2026 11:34:21 +0000, Charan Pedumuru wrote:
>>>> Convert Atmel AT91SAM9G45 EHCI USB Host Controller
>>>> binding to DT schema.
>>>> Changes during conversion:
>>>> - Include "usb-ehci" as a fallback compatible to allow atmel EHCI
>>>>   driver matching.
>>>>
>>>> Signed-off-by: Charan Pedumuru <charan.pedumuru@gmail.com>
>>>> ---
>>>>  .../bindings/usb/atmel,at91sam9g45-ehci.yaml       | 71 ++++++++++++++++++++++
>>>>  1 file changed, 71 insertions(+)
>>>>
>>>
>>> My bot found errors running 'make dt_binding_check' on your patch:
>>>
>>> yamllint warnings/errors:
>>>
>>> dtschema/dtc warnings/errors:
>>> Warning: Duplicate compatible "usb-ehci" found in schemas matching "$id":
>>> 	http://devicetree.org/schemas/usb/atmel,at91sam9g45-ehci.yaml
>>> 	http://devicetree.org/schemas/usb/generic-ehci.yaml#
>>> Warning: Duplicate compatible "atmel,at91sam9g45-ehci" found in schemas matching "$id":
>>> 	http://devicetree.org/schemas/usb/atmel,at91sam9g45-ehci.yaml
>>> 	http://devicetree.org/schemas/usb/generic-ehci.yaml#
>>> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/usb/atmel,at91sam9g45-ehci.example.dtb: usb@500000 (atmel,at91sam9g45-ehci): Unevaluated properties are not allowed ('clock-names' was unexpected)
>>> 	from schema $id: http://devicetree.org/schemas/usb/generic-ehci.yaml
>>
>> Hi Rob,
>> Isn't it pointing to the other schema ID which was not defined by me? 
> 
> You can't have the same compatible defined in 2 places.

Okay.

> 
>> Can I have your suggestion on changing the compatible name to other 
>> name to resolve this error? 
> 
> Why are you converting this? It's already covered by generic-ehci.yaml. 
> Though I seem to recall there were some warnings for Atmel.

Yes, in that case I will drop this patch in the next revision.

> 
>> I ran dt_check in my machine on the 
>> latest version and I don't see any error there.
> 
> Please read the last paragraph below for why.

Okay, I understood now.

> 
>>
>>>
>>> doc reference errors (make refcheckdocs):
>>>
>>> See https://patchwork.kernel.org/project/devicetree/patch/20260201-atmel-usb-v1-2-d1a3e93003f1@gmail.com
>>>
>>> The base for the series is generally the latest rc1. A different dependency
>>> should be noted in *this* patch.
>>>
>>> If you already ran 'make dt_binding_check' and didn't see the above
>>> error(s), then make sure 'yamllint' is installed and dt-schema is up to
>>> date:
>>>
>>> pip3 install dtschema --upgrade
>>>
>>> Please check and re-submit after running the above command yourself. Note
>>> that DT_SCHEMA_FILES can be set to your schema file to speed up checking
>>> your schema. However, it must be unset to test all examples with your schema.
> 
> ^^^^^^^
> 
> Rob

-- 
Best Regards,
Charan.


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

* Re: [PATCH 1/4] dt-bindings: usb: atmel,at91rm9200-ohci: convert to DT schema
  2026-02-01 11:34 ` [PATCH 1/4] dt-bindings: usb: atmel,at91rm9200-ohci: convert to DT schema Charan Pedumuru
@ 2026-02-04 13:15   ` Charan Pedumuru
  0 siblings, 0 replies; 10+ messages in thread
From: Charan Pedumuru @ 2026-02-04 13:15 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Claudiu Beznea, Herve Codina, Nicolas Ferre,
	Alexandre Belloni
  Cc: linux-usb, devicetree, linux-arm-kernel, linux-kernel



On 01-02-2026 17:04, Charan Pedumuru wrote:
> Convert Atmel AT91RM9200 / AT91SAM9 style OHCI USB Host
> Controller binding to DT schema.
> Changes during conversion:
> - Include "usb-ohci" as a fallback compatible to allow at91 OHCI
>   driver matching.
> 
> Signed-off-by: Charan Pedumuru <charan.pedumuru@gmail.com>
> ---
>  .../bindings/usb/atmel,at91rm9200-ohci.yaml        | 85 ++++++++++++++++++++++
>  1 file changed, 85 insertions(+)

Hi Rob,

For this patch, can I modify the existing generic-ohci.yaml file to include the compatible "atmel,at91rm9200-ohci" to it and define missing properties, as the fall back compatible "usb-ohci" is already defined for other vendors there, can I drop this patch and make changes for generic-ohci.yaml file and include it in the patch series for the next revision?

> 
> diff --git a/Documentation/devicetree/bindings/usb/atmel,at91rm9200-ohci.yaml b/Documentation/devicetree/bindings/usb/atmel,at91rm9200-ohci.yaml
> new file mode 100644
> index 000000000000..f04de6d553d2
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/usb/atmel,at91rm9200-ohci.yaml
> @@ -0,0 +1,85 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/usb/atmel,at91rm9200-ohci.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Atmel AT91RM9200 / AT91SAM9 style OHCI USB Host Controller
> +
> +maintainers:
> +  - Nicolas Ferre <nicolas.ferre@microchip.com>
> +  - Alexandre Belloni <alexandre.belloni@bootlin.com>
> +
> +description:
> +  The Atmel AT91RM9200 / AT91SAM9 OHCI USB Host Controller implements a
> +  USB 1.1 Open Host Controller Interface (OHCI) compliant host interface.
> +  It provides low-speed and full-speed USB host functionality and is
> +  integrated into Atmel AT91RM9200 and AT91SAM9 family SoCs.
> +
> +allOf:
> +  - $ref: /schemas/usb/usb.yaml#
> +
> +properties:
> +  compatible:
> +    oneOf:
> +      - items:
> +          - const: atmel,at91rm9200-ohci
> +          - const: usb-ohci
> +
> +  reg:
> +    maxItems: 1
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  clocks:
> +    minItems: 3
> +    maxItems: 3
> +
> +  clock-names:
> +    items:
> +      - const: ohci_clk
> +      - const: hclk
> +      - const: uhpck
> +
> +  num-ports:
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +    description: Number of downstream ports supported by this OHCI controller
> +    minimum: 1
> +    maximum: 15
> +
> +  atmel,vbus-gpio:
> +    description: GPIO used to control or sense the USB VBUS power.
> +    minItems: 1
> +    maxItems: 3
> +
> +  atmel,oc-gpio:
> +    description: GPIO used to signal USB overcurrent condition.
> +    minItems: 1
> +    maxItems: 3
> +
> +required:
> +  - compatible
> +  - reg
> +  - interrupts
> +  - clocks
> +  - clock-names
> +
> +unevaluatedProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/clock/at91.h>
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +    #include <dt-bindings/gpio/gpio.h>
> +    usb@500000 {
> +        compatible = "atmel,at91rm9200-ohci", "usb-ohci";
> +        reg = <0x500000 0x100000>;
> +        interrupts = <20 IRQ_TYPE_LEVEL_HIGH>;
> +        clocks = <&uhphs_clk>, <&uhphs_clk>, <&uhpck>;
> +        clock-names = "ohci_clk", "hclk", "uhpck";
> +        atmel,vbus-gpio = <&pioA 18 GPIO_ACTIVE_HIGH>;
> +        atmel,oc-gpio   = <&pioB 10 GPIO_ACTIVE_LOW>;
> +        num-ports = <2>;
> +    };
> +...
> 

-- 
Best Regards,
Charan.


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

end of thread, other threads:[~2026-02-04 13:15 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-01 11:34 [PATCH 0/4] dt-bindings: usb: atmel: Convert Atmel USB controller bindings to YAML Charan Pedumuru
2026-02-01 11:34 ` [PATCH 1/4] dt-bindings: usb: atmel,at91rm9200-ohci: convert to DT schema Charan Pedumuru
2026-02-04 13:15   ` Charan Pedumuru
2026-02-01 11:34 ` [PATCH 2/4] dt-bindings: usb: atmel,at91sam9g45-ehci: " Charan Pedumuru
2026-02-01 12:37   ` Rob Herring (Arm)
2026-02-02 11:02     ` Charan Pedumuru
2026-02-03 18:08       ` Rob Herring
2026-02-04 13:09         ` Charan Pedumuru
2026-02-01 11:34 ` [PATCH 3/4] dt-bindings: usb: atmel,at91rm9200-udc: " Charan Pedumuru
2026-02-01 11:34 ` [PATCH 4/4] dt-bindings: usb: atmel,at91sam9rl-udc: " Charan Pedumuru

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