pasemi_mac: ethtool set settings support
[pandora-kernel.git] / drivers / net / pasemi_mac_ethtool.c
index 28a8622..fefa79e 100644 (file)
@@ -77,6 +77,19 @@ pasemi_mac_ethtool_get_settings(struct net_device *netdev,
        return phy_ethtool_gset(phydev, cmd);
 }
 
+static int
+pasemi_mac_ethtool_set_settings(struct net_device *netdev,
+                              struct ethtool_cmd *cmd)
+{
+       struct pasemi_mac *mac = netdev_priv(netdev);
+       struct phy_device *phydev = mac->phydev;
+
+       if (!phydev)
+               return -EOPNOTSUPP;
+
+       return phy_ethtool_sset(phydev, cmd);
+}
+
 static void
 pasemi_mac_ethtool_get_drvinfo(struct net_device *netdev,
                               struct ethtool_drvinfo *drvinfo)
@@ -150,6 +163,7 @@ static void pasemi_mac_get_strings(struct net_device *netdev, u32 stringset,
 
 const struct ethtool_ops pasemi_mac_ethtool_ops = {
        .get_settings           = pasemi_mac_ethtool_get_settings,
+       .set_settings           = pasemi_mac_ethtool_set_settings,
        .get_drvinfo            = pasemi_mac_ethtool_get_drvinfo,
        .get_msglevel           = pasemi_mac_ethtool_get_msglevel,
        .set_msglevel           = pasemi_mac_ethtool_set_msglevel,