On Sun, Apr 14, 2024 at 03:59:37PM +0200, Niklas Söderlund wrote: > Add initial support for Renesas Ethernet-TSN End-station device of R-Car > V4H. The Ethernet End-station can connect to an Ethernet network using a > 10 Mbps, 100 Mbps, or 1 Gbps full-duplex link via MII/GMII/RMII/RGMII. > Depending on the connected PHY. > > Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@xxxxxxxxxxxx> ... > +static int rtsn_mii_register(struct rtsn_private *priv) > +{ > + struct platform_device *pdev = priv->pdev; > + struct device *dev = &pdev->dev; > + struct device_node *mdio_node; > + struct mii_bus *mii; > + int ret; > + > + mii = mdiobus_alloc(); > + if (!mii) > + return -ENOMEM; > + > + mdio_node = of_get_child_by_name(dev->of_node, "mdio"); > + if (!mdio_node) { > + ret = -ENODEV; > + goto out_free_bus; > + }; nit: the ';' is not needed on the line above. Flagged by Coccinelle. > + > + mii->name = "rtsn_mii"; > + sprintf(mii->id, "%s-%x", pdev->name, pdev->id); > + mii->priv = priv; > + mii->read = rtsn_mii_read; > + mii->write = rtsn_mii_write; > + mii->read_c45 = rtsn_mii_read_c45; > + mii->write_c45 = rtsn_mii_write_c45; > + mii->parent = dev; > + > + ret = of_mdiobus_register(mii, mdio_node); > + of_node_put(mdio_node); > + if (ret) > + goto out_free_bus; > + > + priv->mii = mii; > + > + return 0; > + > +out_free_bus: > + mdiobus_free(mii); > + return ret; > +}