[Linux-stm32] [PATCH 2/8] dt-bindings: net: Add a YAML schemas for the generic PHY options
Maxime Ripard
maxime.ripard at bootlin.com
Thu May 23 20:01:52 UTC 2019
Hi Andrew,
(Sorry for not CC'ing you on this)
On Thu, May 23, 2019 at 04:37:44PM +0200, Andrew Lunn wrote:
> On Thu, May 23, 2019 at 11:56:45AM +0200, Maxime Ripard wrote:
> > The networking PHYs have a number of available device tree properties that
> > can be used in their device tree node. Add a YAML schemas for those.
> >
> > Signed-off-by: Maxime Ripard <maxime.ripard at bootlin.com>
> > ---
> > Documentation/devicetree/bindings/net/ethernet-phy.yaml | 148 +++++++++-
> > Documentation/devicetree/bindings/net/phy.txt | 80 +-----
> > 2 files changed, 149 insertions(+), 79 deletions(-)
> > create mode 100644 Documentation/devicetree/bindings/net/ethernet-phy.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/net/ethernet-phy.yaml b/Documentation/devicetree/bindings/net/ethernet-phy.yaml
> > new file mode 100644
> > index 000000000000..eb79ee6db977
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/net/ethernet-phy.yaml
> > @@ -0,0 +1,148 @@
> > +# SPDX-License-Identifier: GPL-2.0
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/net/ethernet-phy.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Ethernet PHY Generic Binding
> > +
> > +maintainers:
> > + - David S. Miller <davem at davemloft.net>
> > +
> > +properties:
> > + $nodename:
> > + pattern: "^ethernet-phy(@[a-f0-9])?$"
> > +
> > + compatible:
> > + oneOf:
>
> I don't know the language. It is valid to have both
> ethernet-phy-ieee802.3-c45 and
> ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$". Does this oneOf prevent
> multiple compatible strings?
I haven't tested it, I will make sure it works
> Also, the general case is no compatible at all.
This is covered already. The description here just mentions the values
available if the property is set.
The required keyword a bit later lists the required property. In this
case, compatible is omitted so we just list the available values for
the compatible property.
> > + - const: ethernet-phy-ieee802.3-c22
> > + description: PHYs that implement IEEE802.3 clause 22
> > + - const: ethernet-phy-ieee802.3-c45
> > + description: PHYs that implement IEEE802.3 clause 45
> > + - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$"
> > + description:
> > + The first group of digits is the 16 bit Phy Identifier 1
> > + register, this is the chip vendor OUI bits 3:18. The
> > + second group of digits is the Phy Identifier 2 register,
> > + this is the chip vendor OUI bits 19:24, followed by 10
> > + bits of a vendor specific ID.
>
> Could we try to retain:
>
> > - If the PHY reports an incorrect ID (or none at all) then the
> > - "compatible" list may contain an entry with the correct PHY ID in the
> ...
>
> Using it is generally wrong, and that is not clear in the new text.
Ok, I'll add it back.
> > +
> > + reg:
> > + maxItems: 1
> > + minimum: 0
> > + maximum: 31
> > + description:
> > + The ID number for the PHY.
> > +
> > + interrupts:
> > + maxItems: 1
> > +
> > + max-speed:
> > + enum:
> > + - 10
> > + - 100
> > + - 1000
>
> This is outdated in the text description. Any valid speed is
> supported, currently 10 - 200000, as listed in phy_setting settings().
Ack, I'll update it
Thanks!
Maxime
--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
More information about the Linux-stm32
mailing list