Re: [RFC PATCH 2/3] net: sparx5: Add Sparx5 switchdev driver

From: Andrew Lunn
Date: Sat Nov 28 2020 - 16:57:34 EST


> +static int sparx5_port_open(struct net_device *ndev)
> +{
> + struct sparx5_port *port = netdev_priv(ndev);
> + int err = 0;
> +
> + sparx5_port_enable(port, true);
> + if (port->conf.phy_mode != PHY_INTERFACE_MODE_NA) {
> + err = phylink_of_phy_connect(port->phylink, port->of_node, 0);
> + if (err) {
> + netdev_err(ndev, "Could not attach to PHY\n");
> + return err;
> + }
> + }

This looks a bit odd. PHY_INTERFACE_MODE_NA means don't touch,
something else has already configured the MAC-PHY mode in the PHY.
You should not not connect the PHY because of this.

> +void sparx5_destroy_netdev(struct sparx5 *sparx5, struct sparx5_port *port)
> +{
> + if (port->phylink) {
> + /* Disconnect the phy */
> + if (rtnl_trylock()) {

Why do you use rtnl_trylock()?

Andrew