On Thu, Jun 27, 2019 at 9:57 AM Maxime Ripard <[email protected]> wrote:
>
> Hi Rob,
>
> On Thu, Jun 27, 2019 at 09:48:06AM -0600, Rob Herring wrote:
> > On Thu, Jun 27, 2019 at 9:32 AM Maxime Ripard <[email protected]>
> > wrote:
> > >
> > > The MDIO buses have a number of available device tree properties that can
> > > be used in their device tree node. Add a YAML schemas for those.
> > >
> > > Suggested-by: Andrew Lunn <[email protected]>
> > > Signed-off-by: Maxime Ripard <[email protected]>
> > > ---
> > > Documentation/devicetree/bindings/net/mdio.txt | 38 +-------------
> > > Documentation/devicetree/bindings/net/mdio.yaml | 51 ++++++++++++++++++-
> > > 2 files changed, 52 insertions(+), 37 deletions(-)
> > > create mode 100644 Documentation/devicetree/bindings/net/mdio.yaml
> >
> > Reviewed-by: Rob Herring <[email protected]>
> >
> > However, some comments for a follow-up...
> >
> > > diff --git a/Documentation/devicetree/bindings/net/mdio.yaml
> > > b/Documentation/devicetree/bindings/net/mdio.yaml
> > > new file mode 100644
> > > index 000000000000..b8fa8251c4bc
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/net/mdio.yaml
> > > @@ -0,0 +1,51 @@
> > > +# SPDX-License-Identifier: GPL-2.0
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/net/mdio.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: MDIO Bus Generic Binding
> > > +
> > > +maintainers:
> > > + - Andrew Lunn <[email protected]>
> > > + - Florian Fainelli <[email protected]>
> > > + - Heiner Kallweit <[email protected]>
> > > +
> > > +description:
> > > + These are generic properties that can apply to any MDIO bus. Any
> > > + MDIO bus must have a list of child nodes, one per device on the
> > > + bus. These should follow the generic ethernet-phy.yaml document, or
> > > + a device specific binding document.
> > > +
> > > +properties:
> > > + reset-gpios:
> > > + maxItems: 1
> > > + description:
> > > + The phandle and specifier for the GPIO that controls the RESET
> > > + lines of all PHYs on that MDIO bus.
> > > +
> > > + reset-delay-us:
> > > + description:
> > > + RESET pulse width in microseconds. It applies to all PHY devices
> > > + and must therefore be appropriately determined based on all PHY
> > > + requirements (maximum value of all per-PHY RESET pulse widths).
> > > +
> > > +examples:
> > > + - |
> > > + davinci_mdio: mdio@5c030000 {
> >
> > Can we enforce nodename to be mdio? That may not work for muxes.
> > You'll probably have to implement it and see.
>
> Ok, I'll send a follow-up patch for this.
>
> > > + compatible = "ti,davinci_mdio";
> > > + reg = <0x5c030000 0x1000>;
> > > + #address-cells = <1>;
> > > + #size-cells = <0>;
> >
> > These 2 should have a schema.
>
> Indeed, I'll do it for that too.
>
> > > +
> > > + reset-gpios = <&gpio2 5 1>;
> > > + reset-delay-us = <2>;
> > > +
> > > + ethphy0: ethernet-phy@1 {
> > > + reg = <1>;
> >
> > Need a child node schema to validate the unit-address and reg property.
>
> This should be already covered by the ethernet-phy.yaml schemas
> earlier in this series.
Partially, yes.
> Were you expecting something else?
That would not prevent having a child node such as 'foo {};' or
'foo@bad {};'. It would also not check valid nodes named something
other than 'ethernet-phy'.
Rob