On Wed, Jun 19, 2019 at 3:47 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]>
>
> ---
>
> Changes from v2:
> - New patch
> ---
> 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
>
> diff --git a/Documentation/devicetree/bindings/net/mdio.txt
> b/Documentation/devicetree/bindings/net/mdio.txt
> index e3e1603f256c..cf8a0105488e 100644
> --- a/Documentation/devicetree/bindings/net/mdio.txt
> +++ b/Documentation/devicetree/bindings/net/mdio.txt
> @@ -1,37 +1 @@
> -Common MDIO bus properties.
> -
> -These are generic properties that can apply to any MDIO bus.
> -
> -Optional properties:
> -- reset-gpios: One GPIO that control the RESET lines of all PHYs on that MDIO
> - bus.
> -- reset-delay-us: RESET pulse width in microseconds.
> -
> -A list of child nodes, one per device on the bus is expected. These
> -should follow the generic phy.txt, or a device specific binding document.
> -
> -The 'reset-delay-us' indicates the RESET signal pulse width in microseconds
> and
> -applies to all PHY devices. It must therefore be appropriately determined
> based
> -on all PHY requirements (maximum value of all per-PHY RESET pulse widths).
> -
> -Example :
> -This example shows these optional properties, plus other properties
> -required for the TI Davinci MDIO driver.
> -
> - davinci_mdio: ethernet@5c030000 {
> - compatible = "ti,davinci_mdio";
> - reg = <0x5c030000 0x1000>;
> - #address-cells = <1>;
> - #size-cells = <0>;
> -
> - reset-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>;
> - reset-delay-us = <2>;
> -
> - ethphy0: ethernet-phy@1 {
> - reg = <1>;
> - };
> -
> - ethphy1: ethernet-phy@3 {
> - reg = <3>;
> - };
> - };
> +This file has moved to mdio.yaml.
> diff --git a/Documentation/devicetree/bindings/net/mdio.yaml
> b/Documentation/devicetree/bindings/net/mdio.yaml
> new file mode 100644
> index 000000000000..8f4f9d0a2882
> --- /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: ethernet@5c030000 {
Shouldn't this be mdio@... ?
> + compatible = "ti,davinci_mdio";
> + reg = <0x5c030000 0x1000>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + reset-gpios = <&gpio2 5 1>;
> + reset-delay-us = <2>;
> +
> + ethphy0: ethernet-phy@1 {
Would be good to have some unit-address checks. Could be a follow-up though.
> + reg = <1>;
> + };
> +
> + ethphy1: ethernet-phy@3 {
> + reg = <3>;
> + };
> + };
> --
> git-series 0.9.1