[PATCH] dt-bindings: usb: Add Socionext Uniphier DWC3 controller

Rob Herring robh at kernel.org
Tue Dec 16 08:38:54 PST 2025


On Mon, Dec 15, 2025 at 7:22 PM Kunihiko Hayashi
<hayashi.kunihiko at socionext.com> wrote:
>
> Hi Rob,
>
> On 2025/12/16 6:25, Rob Herring (Arm) wrote:
> > The Socionext Uniphier DWC3 controller binding is already in use, but
> > undocumented. It's a straight-forward binding similar to other DWC3
> > bindings.
>
> After being pointed out by Krzysztof at OSSJapan, I've checked the bindings
> and was preparing some additions or fixes to resolve the warning.
>
> It's almost the same as my proposal, however, I add a little.
>
> >
> > Signed-off-by: Rob Herring (Arm) <robh at kernel.org>
> > ---
> >   .../bindings/usb/socionext,uniphier-dwc3.yaml | 89 +++++++++++++++++++
> >   1 file changed, 89 insertions(+)
> >   create mode 100644
> > Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
> >
> > diff --git
> > a/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
> > b/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
> > new file mode 100644
> > index 000000000000..892ae3458c1b
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/usb/socionext,uniphier-dwc3.yaml
> > @@ -0,0 +1,89 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/usb/socionext,uniphier-dwc3.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Socionext Uniphier SuperSpeed DWC3 USB SoC controller
> > +
> > +maintainers:
> > +  - Kunihiko Hayashi <hayashi.kunihiko at socionext.com>
> > +  - Masami Hiramatsu <mhiramat at kernel.org>
> > +
> > +select:
> > +  properties:
> > +    compatible:
> > +      contains:
> > +        const: socionext,uniphier-dwc3
> > +  required:
> > +    - compatible
> > +
> > +properties:
> > +  compatible:
> > +    items:
> > +      - const: socionext,uniphier-dwc3
> > +      - const: snps,dwc3
> > +
> > +  reg:
> > +    maxItems: 1
> > +
> > +  interrupts:
> > +    minItems: 1
> > +    items:
> > +      - description: Host or single combined interrupt
> > +      - description: Peripheral interrupt
> > +
> > +  interrupt-names:
> > +    minItems: 1
> > +    items:
> > +      - enum:
> > +          - dwc_usb3
> > +          - host
> > +      - const: peripheral
> There's no problem, but how about the following description
> following snps,dwc3.yaml?
>
>    interrupt-names:
>      oneOf:
>        - const: dwc_usb3
>        - items:
>            enum: [host, peripheral]

That allows for 'peripheral, host' or just 'peripheral'. Mine would
seemingly allow 'dwc_usb3, host', but snps,dwc3.yaml will prevent
that.

>
> > +
> > +  clocks:
> > +    maxItems: 3
> > +
> > +  clock-names:
> > +    items:
> > +      - const: ref
> > +      - const: bus_early
> > +      - const: suspend
> > +
> > +  phys:
> > +    description: 1 to 4 HighSpeed PHYs followed by 1 or 2 SuperSpeed PHYs
> > +    minItems: 2
> > +    maxItems: 6
>
> Since Pro4 only has one PHY, so:
>      minItems: 1

Ah, I only checked arm64. Will fix.

If there's other arm32 warnings, I'm not looking at those. So fixes
appreciated there.

Rob



More information about the linux-arm-kernel mailing list