Re: [PATCH 2/4] dt-bindings: usb: Convert multiple "usb-ohci" bindings to DT schema

From: Rob Herring
Date: Tue Jan 10 2023 - 18:23:46 EST


On Tue, Jan 10, 2023 at 5:18 PM Rob Herring <robh@xxxxxxxxxx> wrote:
>
> "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@xxxxxxxxxx>
> ---
> .../devicetree/bindings/powerpc/nintendo/wii.txt | 10 -------
> .../devicetree/bindings/usb/generic-ohci.yaml | 31 ++++++++++++++++---
> Documentation/devicetree/bindings/usb/ohci-nxp.txt | 24 ---------------
> .../devicetree/bindings/usb/ohci-omap3.txt | 15 ----------
> Documentation/devicetree/bindings/usb/pxa-usb.txt | 2 +-
> .../devicetree/bindings/usb/spear-usb.txt | 35 ----------------------
> 6 files changed, 28 insertions(+), 89 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/powerpc/nintendo/wii.txt b/Documentation/devicetree/bindings/powerpc/nintendo/wii.txt
> index c4d78f28d23c..3ff6ebbb4998 100644
> --- a/Documentation/devicetree/bindings/powerpc/nintendo/wii.txt
> +++ b/Documentation/devicetree/bindings/powerpc/nintendo/wii.txt
> @@ -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.
> diff --git a/Documentation/devicetree/bindings/usb/generic-ohci.yaml b/Documentation/devicetree/bindings/usb/generic-ohci.yaml
> index 4fcbd0add49d..b898303381f8 100644
> --- a/Documentation/devicetree/bindings/usb/generic-ohci.yaml
> +++ b/Documentation/devicetree/bindings/usb/generic-ohci.yaml
> @@ -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@xxxxxxxxxxxxxxxxxxx>
>
> @@ -49,7 +46,16 @@ properties:
> - ingenic,jz4740-ohci
> - snps,hsdk-v1.0-ohci
> - const: generic-ohci
> - - const: generic-ohci
> + - enum:
> + - generic-ohci
> + - ti,ohci-omap3
> + - items:
> + - enum:
> + - cavium,octeon-6335-ohci
> + - nintendo,hollywood-usb-ohci
> + - nxp,ohci-nxp
> + - st,spear600-ohci
> + - const: usb-ohci
>
> reg:
> maxItems: 1
> @@ -119,11 +125,28 @@ 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:

Sigh. Need a 'properties' in here...

> + 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
> index 71e28c1017ed..000000000000
> --- a/Documentation/devicetree/bindings/usb/ohci-nxp.txt
> +++ /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>;
> - };
> diff --git a/Documentation/devicetree/bindings/usb/ohci-omap3.txt b/Documentation/devicetree/bindings/usb/ohci-omap3.txt
> deleted file mode 100644
> index ce8c47cff6d0..000000000000
> --- a/Documentation/devicetree/bindings/usb/ohci-omap3.txt
> +++ /dev/null
> @@ -1,15 +0,0 @@
> -OMAP HS USB OHCI controller (OMAP3 and later)
> -
> -Required properties:
> -
> -- compatible: should be "ti,ohci-omap3"
> -- reg: should contain one register range i.e. start and length
> -- interrupts: description of the interrupt line
> -
> -Example for OMAP4:
> -
> -usbhsohci: ohci@4a064800 {
> - compatible = "ti,ohci-omap3";
> - reg = <0x4a064800 0x400>;
> - interrupts = <0 76 0x4>;
> -};
> diff --git a/Documentation/devicetree/bindings/usb/pxa-usb.txt b/Documentation/devicetree/bindings/usb/pxa-usb.txt
> index 9c331799b87c..53fdae4fa6f6 100644
> --- a/Documentation/devicetree/bindings/usb/pxa-usb.txt
> +++ b/Documentation/devicetree/bindings/usb/pxa-usb.txt
> @@ -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
> index 1dc91cc459c0..000000000000
> --- a/Documentation/devicetree/bindings/usb/spear-usb.txt
> +++ /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>;
> - };
>
> --
> 2.39.0
>