[PATCH 35/54] dt-bindings: usb: dwc3: Fix usb-phy check
Maxime Ripard
maxime at cerno.tech
Thu Jul 29 05:29:38 PDT 2021
Hi Rob,
On Fri, Jul 23, 2021 at 04:15:30PM -0600, Rob Herring wrote:
> On Wed, Jul 21, 2021 at 04:04:05PM +0200, Maxime Ripard wrote:
> > The original binding was allowing any combination of usb2-phy and
> > usb3-phy in the phys and phy-names properties.
> >
> > However, the current binding enforces that those properties must be a
> > list of usb2-phy and usb3-phy, with exactly one element, effectively
> > making usb2-phy the only value being valid.
>
> Huh? If 'maxItems' is not specified, then it's the length of 'items'
> list.
Even if minItems is set?
This doesn't really change anything to my issue though.
"""
- phy-names: from the *Generic PHY* bindings; supported names are "usb2-phy"
or "usb3-phy".
"""
The YAML binding has
phy-names:
minItems: 1
items:
- const: usb2-phy
- const: usb3-phy
which means that only usb2-phy is accepted (and possibly usb2-phy,
usb3-phy) but only usb3-phy isn't anymore, while it was valid according
to the original binding and used in multiple DT across multiple vendors
(arch/arm64/boot/dts/hisilicon/hi3660.dtsi,
arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi)
> > Let's rework the properties description to allow either one or two
> > element picked with values either usb2-phy or usb3-phy. The rest of the
> > tooling makes sure that we don't get any duplicate value, so this should
> > be what we want.
>
> Is it really valid to have only a USB3 PHY and what you want here? That
> would mean the USB3 phy also handles USB2, right?
IIRC that's how it works for the H6 at least yes.
Maxime
More information about the linux-arm-kernel
mailing list