From: Sebastian Hesselbarth <sebastian.hesselba...@gmail.com>
Date: Mon, 10 Mar 2014 10:49:53 +0000

> void phy_ethtool_get_wol(struct phy_device *phydev, struct
> ethtool_wolinfo *wol)
> {
>       memset(wol, 0, sizeof(*wol));
> 
>       if (phydev && phydev->drv->get_wol)
>               phydev->drv->get_wol(phydev, wol);
> }
> 
> That would also simplify above drivers down to e.g:
> 
> static void cpsw_get_wol(struct net_device *ndev, struct
> ethtool_wolinfo *wol)
> {
>       struct cpsw_priv *priv = netdev_priv(ndev);
>       int slave_no = cpsw_slave_index(priv);
>       phy_ethtool_get_wol(priv->slaves[slave_no].phy, wol);
> }
> 
> instead of:
> 
> static void cpsw_get_wol(struct net_device *ndev, struct
> ethtool_wolinfo *wol)
> {
>       struct cpsw_priv *priv = netdev_priv(ndev);
>       int slave_no = cpsw_slave_index(priv);
> 
>       wol->supported = 0;
>       wol->wolopts = 0;
> 
>       if (priv->slaves[slave_no].phy)
>               phy_ethtool_get_wol(priv->slaves[slave_no].phy, wol);
> }

Agreed, since phy_ethtool_get_wol() is the common routine used by the drivers,
we should make it clear the structure.
--
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/

Reply via email to