On 10/03/2015 09:25 PM, Florian Fainelli wrote: > Le 03/10/2015 07:26, Neil Armstrong a écrit : >> When unbinding dsa, complete the dsa_switch_destroy to unregister the >> fixed link phy then cleanly unregister and destroy the net devices. >> >> Signed-off-by: Neil Armstrong <narmstr...@baylibre.com> >> --- > > [snip] > >> + port_dn = cd->port_dn[port]; >> + if (of_phy_is_fixed_link(port_dn)) { >> + phydev = of_phy_find_device(port_dn); >> + if (phydev) { >> + int addr = phydev->addr; >> + phy_device_free(phydev); >> + of_node_put(port_dn); >> + fixed_phy_del(addr); > > fixed_phy_del() removes the fixed PHY from the platform fixed MDIO bus > list of PHYs, so we should be okay even with switch drivers which > register a link_update callback via fixed_phy_set_link_update(), but I > have not checked that. The sequence of call looks (phy_device_free then > fixed_phy_del) looks sane though. Actually I copied the exact sequence from the fixed link module, eventually this should be done in this module with a proper fixed_link_remove function.
> > Eventually this logic might be better moved into net/dsa/slave.c such > that it is easy to see how it balances dsa_slave_phy_setup(). > > Reviewed-by: Florian Fainelli <f.faine...@gmail.com> > Thanks for the review, Neil -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/