RE: [PATCH v4 1/3] dt-bindings: net: add reset property for aspeed, ast2600-mdio binding

From: Dylan Hung
Date: Tue Apr 12 2022 - 22:59:48 EST


> -----Original Message-----
> From: Joel Stanley [mailto:joel@xxxxxxxxx]
> Sent: 2022年4月13日 10:34 AM
> To: Dylan Hung <dylan_hung@xxxxxxxxxxxxxx>
> Cc: Rob Herring <robh+dt@xxxxxxxxxx>; Andrew Jeffery <andrew@xxxxxxxx>;
> Andrew Lunn <andrew@xxxxxxx>; hkallweit1@xxxxxxxxx; Russell King
> <linux@xxxxxxxxxxxxxxx>; David S . Miller <davem@xxxxxxxxxxxxx>; Jakub
> Kicinski <kuba@xxxxxxxxxx>; pabeni@xxxxxxxxxx; Philipp Zabel
> <p.zabel@xxxxxxxxxxxxxx>; devicetree <devicetree@xxxxxxxxxxxxxxx>; Linux
> ARM <linux-arm-kernel@xxxxxxxxxxxxxxxxxxx>; linux-aspeed
> <linux-aspeed@xxxxxxxxxxxxxxxx>; Linux Kernel Mailing List
> <linux-kernel@xxxxxxxxxxxxxxx>; Networking <netdev@xxxxxxxxxxxxxxx>;
> Krzysztof Kozlowski <krzk+dt@xxxxxxxxxx>; BMC-SW
> <BMC-SW@xxxxxxxxxxxxxx>; Krzysztof Kozlowski <krzk@xxxxxxxxxx>
> Subject: Re: [PATCH v4 1/3] dt-bindings: net: add reset property for aspeed,
> ast2600-mdio binding
>
> On Tue, 12 Apr 2022 at 06:55, Dylan Hung <dylan_hung@xxxxxxxxxxxxxx>
> wrote:
> >
> > The AST2600 MDIO bus controller has a reset control bit and must be
> > deasserted before manipulating the MDIO controller. By default, the
> > hardware asserts the reset so the driver only need to deassert it.
> >
> > Regarding to the old DT blobs which don't have reset property in them,
> > the reset deassertion is usually done by the bootloader so the reset
> > property is optional to work with them.
> >
> > Signed-off-by: Dylan Hung <dylan_hung@xxxxxxxxxxxxxx>
> > Reviewed-by: Krzysztof Kozlowski <krzk@xxxxxxxxxx>
> > ---
> > .../devicetree/bindings/net/aspeed,ast2600-mdio.yaml | 5 +++++
> > 1 file changed, 5 insertions(+)
> >
> > diff --git
> > a/Documentation/devicetree/bindings/net/aspeed,ast2600-mdio.yaml
> > b/Documentation/devicetree/bindings/net/aspeed,ast2600-mdio.yaml
> > index 1c88820cbcdf..1174c14898e1 100644
> > --- a/Documentation/devicetree/bindings/net/aspeed,ast2600-mdio.yaml
> > +++ b/Documentation/devicetree/bindings/net/aspeed,ast2600-mdio.yaml
> > @@ -20,10 +20,14 @@ allOf:
> > properties:
> > compatible:
> > const: aspeed,ast2600-mdio
> > +
> > reg:
> > maxItems: 1
> > description: The register range of the MDIO controller instance
> >
> > + resets:
> > + maxItems: 1
> > +
> > required:
> > - compatible
> > - reg
> > @@ -39,6 +43,7 @@ examples:
> > reg = <0x1e650000 0x8>;
> > #address-cells = <1>;
> > #size-cells = <0>;
> > + resets = <&syscon ASPEED_RESET_MII>;
>
> You will need to include the definition for ASPEED_RESET_MII at the start of
> the example:
>
> #include <dt-bindings/clock/ast2600-clock.h>
>
> You can test the bindings example by doing this:
>
> pip install dtschema
>
> make dt_binding_check
> DT_SCHEMA_FILES=Documentation/devicetree/bindings/net/aspeed,ast2600-
> mdio.yaml
>

Thank you for your comment, I have reproduced this error and fixed it on my side.
The change will be included in V5.

> Cheers,
>
> Joel
>
> >
> > ethphy0: ethernet-phy@0 {
> > compatible = "ethernet-phy-ieee802.3-c22";
> > --
> > 2.25.1
> >