net: ethoc: implement ethtool get/set settings
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> Reviewed-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
fba9110c47
commit
01cd7d578e
|
@ -890,7 +890,31 @@ out:
|
|||
return NETDEV_TX_OK;
|
||||
}
|
||||
|
||||
static int ethoc_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
{
|
||||
struct ethoc *priv = netdev_priv(dev);
|
||||
struct phy_device *phydev = priv->phy;
|
||||
|
||||
if (!phydev)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
return phy_ethtool_gset(phydev, cmd);
|
||||
}
|
||||
|
||||
static int ethoc_set_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
{
|
||||
struct ethoc *priv = netdev_priv(dev);
|
||||
struct phy_device *phydev = priv->phy;
|
||||
|
||||
if (!phydev)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
return phy_ethtool_sset(phydev, cmd);
|
||||
}
|
||||
|
||||
const struct ethtool_ops ethoc_ethtool_ops = {
|
||||
.get_settings = ethoc_get_settings,
|
||||
.set_settings = ethoc_set_settings,
|
||||
.get_link = ethtool_op_get_link,
|
||||
.get_ts_info = ethtool_op_get_ts_info,
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue