From: Ioana Ciornei <ioana.cior...@nxp.com> Date: Tue, 28 May 2019 20:38:06 +0300
> Following two separate discussion threads in: > https://www.spinics.net/lists/netdev/msg569087.html > and: > https://www.spinics.net/lists/netdev/msg570450.html > > Previous RFC patch set: https://www.spinics.net/lists/netdev/msg571995.html > > PHYLINK was reworked in order to accept multiple operation types, > PHYLINK_NETDEV and PHYLINK_DEV, passed through a phylink_config > structure alongside the corresponding struct device. > > One of the main concerns expressed in the RFC was that using notifiers > to signal the corresponding phylink_mac_ops would break PHYLINK's API > unity and that it would become harder to grep for its users. > Using the current approach, we maintain a common API for all users. > Also, printing useful information in PHYLINK, when decoupled from a > net_device, is achieved using dev_err&co on the struct device received > (in DSA's case is the device corresponding to the dsa_switch). > > PHYLIB (which PHYLINK uses) was reworked to the extent that it does not > crash when connecting to a PHY and the net_device pointer is NULL. > > Lastly, DSA has been reworked in its way that it handles PHYs for ports > that lack a net_device (CPU and DSA ports). For these, it was > previously using PHYLIB and is now using the PHYLINK_DEV operation type. > Previously, a driver that wanted to support PHY operations on CPU/DSA > ports has to implement .adjust_link(). This patch set not only gives > drivers the options to use PHYLINK uniformly but also urges them to > convert to it. For compatibility, the old code is kept but it will be > removed once all drivers switch over. ... Series applied, thank you.