[PATCH v2 3/6] net: eth-phy: manage subnode mdio0

Ramon Fried rfried.dev at gmail.com
Thu Apr 29 22:12:19 CEST 2021


On Mon, Apr 26, 2021 at 6:47 PM Patrick Delaunay
<patrick.delaunay at foss.st.com> wrote:
>
> Bind any subnode with name beginning by mdio, mdio0 for example,
> and not only the "mdio" as namei of subnode.
>
> Signed-off-by: Patrick Delaunay <patrick.delaunay at foss.st.com>
> ---
>
> Changes in v2:
> - update eth-phy driver to support STM32 binding with a mdio0 subnode (NEW)
>
>  drivers/net/eth-phy-uclass.c | 10 ++++++++--
>  1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/eth-phy-uclass.c b/drivers/net/eth-phy-uclass.c
> index 962084a7c9..f04f1c8f09 100644
> --- a/drivers/net/eth-phy-uclass.c
> +++ b/drivers/net/eth-phy-uclass.c
> @@ -27,12 +27,18 @@ int eth_phy_binds_nodes(struct udevice *eth_dev)
>         const char *node_name;
>         int ret;
>
> -       mdio_node = dev_read_subnode(eth_dev, "mdio");
> +       /* search a subnode named "mdio.*" */
> +       dev_for_each_subnode(mdio_node, eth_dev) {
> +               node_name = ofnode_get_name(mdio_node);
> +               if (!strncmp(node_name, "mdio", 4))
> +                       break;
> +       }
>         if (!ofnode_valid(mdio_node)) {
> -               dev_dbg(eth_dev, "%s: %s mdio subnode not found!", __func__,
> +               dev_dbg(eth_dev, "%s: %s mdio subnode not found!\n", __func__,
>                         eth_dev->name);
>                 return -ENXIO;
>         }
> +       dev_dbg(eth_dev, "%s: %s subnode found!\n", __func__, node_name);
>
>         ofnode_for_each_subnode(phy_node, mdio_node) {
>                 node_name = ofnode_get_name(phy_node);
> --
> 2.17.1
>
Reviewed-by: Ramon Fried <rfried.dev at gmail.com>


More information about the U-Boot mailing list