> +static int mt7530_isolate_ephy(struct dsa_switch *ds,
> +                            struct device_node *ephy_node)
> +{
> +     struct phy_device *phydev = of_phy_find_device(ephy_node);
> +     int ret;
> +
> +     if (!phydev)
> +             return 0;
> +
> +     ret = phy_modify(phydev, MII_BMCR, 0, (BMCR_ISOLATE | BMCR_PDOWN));

genphy_suspend() does what you want.

> +     if (ret)
> +             dev_err(ds->dev, "Failed to put phy %s in isolation mode!\n",
> +                     ephy_node->full_name);
> +     else
> +             dev_info(ds->dev, "Phy %s in isolation mode!\n",
> +                      ephy_node->full_name);

No need to clog up the system with yet more kernel messages.

   Andrew

Reply via email to