dt-bindings: usb: Convert multiple "usb-ohci" bindings to DT schema
authorRob Herring <robh@kernel.org>
Tue, 24 Jan 2023 03:05:16 +0000 (21:05 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 25 Jan 2023 14:45:06 +0000 (15:45 +0100)
"usb-ohci" is another "generic" OHCI controller compatible string used by
several platforms. Add it to the generic-ohci.yaml schema and remove all
the old binding docs.

Marvell pxa-usb.txt has "usb-ohci" in the example, but actual users don't,
so drop it.

Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20230110-dt-usb-v3-2-5af0541fcf8c@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Documentation/devicetree/bindings/powerpc/nintendo/wii.txt
Documentation/devicetree/bindings/usb/generic-ohci.yaml
Documentation/devicetree/bindings/usb/ohci-nxp.txt [deleted file]
Documentation/devicetree/bindings/usb/pxa-usb.txt
Documentation/devicetree/bindings/usb/spear-usb.txt [deleted file]

index c4d78f28d23c7672f4063908884abfc89f9e2687..3ff6ebbb499817d758b1cbf830dd0cd90dbb31f3 100644 (file)
@@ -97,16 +97,6 @@ Nintendo Wii device tree
    - reg : should contain the EXI registers location and length
    - interrupts : should contain the EXI interrupt
 
-1.g) The Open Host Controller Interface (OHCI) nodes
-
-  Represent the USB 1.x Open Host Controller Interfaces.
-
-  Required properties:
-
-   - compatible : should be "nintendo,hollywood-usb-ohci","usb-ohci"
-   - reg : should contain the OHCI registers location and length
-   - interrupts : should contain the OHCI interrupt
-
 1.h) The Enhanced Host Controller Interface (EHCI) node
 
   Represents the USB 2.0 Enhanced Host Controller Interface.
index 4fcbd0add49d19df3ffb873b37e73760e1b43eea..8492d809ba4085f8a3753d02a683bca536146a18 100644 (file)
@@ -6,9 +6,6 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
 
 title: USB OHCI Controller
 
-allOf:
-  - $ref: "usb-hcd.yaml"
-
 maintainers:
   - Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 
@@ -50,6 +47,13 @@ properties:
               - snps,hsdk-v1.0-ohci
           - const: generic-ohci
       - const: generic-ohci
+      - items:
+          - enum:
+              - cavium,octeon-6335-ohci
+              - nintendo,hollywood-usb-ohci
+              - nxp,ohci-nxp
+              - st,spear600-ohci
+          - const: usb-ohci
 
   reg:
     maxItems: 1
@@ -119,11 +123,29 @@ properties:
       - host
       - otg
 
+  transceiver:
+    $ref: /schemas/types.yaml#/definitions/phandle
+    description:
+      The associated ISP1301 device. Necessary for the UDC controller for
+      connecting to the USB physical layer.
+
 required:
   - compatible
   - reg
   - interrupts
 
+allOf:
+  - $ref: usb-hcd.yaml
+  - if:
+      not:
+        properties:
+          compatible:
+            contains:
+              const: nxp,ohci-nxp
+    then:
+      properties:
+        transceiver: false
+
 additionalProperties: false
 
 examples:
diff --git a/Documentation/devicetree/bindings/usb/ohci-nxp.txt b/Documentation/devicetree/bindings/usb/ohci-nxp.txt
deleted file mode 100644 (file)
index 71e28c1..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-* OHCI controller, NXP ohci-nxp variant
-
-Required properties:
-- compatible: must be "nxp,ohci-nxp"
-- reg: physical base address of the controller and length of memory mapped
-  region.
-- interrupts: The OHCI interrupt
-- transceiver: phandle of the associated ISP1301 device - this is necessary for
-               the UDC controller for connecting to the USB physical layer
-
-Example (LPC32xx):
-
-       isp1301: usb-transceiver@2c {
-               compatible = "nxp,isp1301";
-               reg = <0x2c>;
-       };
-
-       ohci@31020000 {
-               compatible = "nxp,ohci-nxp";
-               reg = <0x31020000 0x300>;
-               interrupt-parent = <&mic>;
-               interrupts = <0x3b 0>;
-               transceiver = <&isp1301>;
-       };
index 9c331799b87c73477d6cd8046fd9b4a5b4dbbd79..53fdae4fa6f6b2e4c9204d3cff3f17c37ba7afe7 100644 (file)
@@ -22,7 +22,7 @@ Optional properties:
 Example:
 
        usb0: ohci@4c000000 {
-               compatible = "marvell,pxa-ohci", "usb-ohci";
+               compatible = "marvell,pxa-ohci";
                reg = <0x4c000000 0x100000>;
                interrupts = <18>;
                marvell,enable-port1;
diff --git a/Documentation/devicetree/bindings/usb/spear-usb.txt b/Documentation/devicetree/bindings/usb/spear-usb.txt
deleted file mode 100644 (file)
index 1dc91cc..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-ST SPEAr SoC USB controllers:
------------------------------
-
-EHCI:
------
-
-Required properties:
-- compatible: "st,spear600-ehci"
-- interrupts: Should contain the EHCI interrupt
-
-Example:
-
-       ehci@e1800000 {
-               compatible = "st,spear600-ehci", "usb-ehci";
-               reg = <0xe1800000 0x1000>;
-               interrupt-parent = <&vic1>;
-               interrupts = <27>;
-       };
-
-
-OHCI:
------
-
-Required properties:
-- compatible: "st,spear600-ohci"
-- interrupts: Should contain the OHCI interrupt
-
-Example:
-
-       ohci@e1900000 {
-               compatible = "st,spear600-ohci", "usb-ohci";
-               reg = <0xe1800000 0x1000>;
-               interrupt-parent = <&vic1>;
-               interrupts = <26>;
-       };