Commit eaf9a32a authored by Philippe Reynes's avatar Philippe Reynes Committed by David S. Miller

net: usb: smsc95xx: use new api ethtool_{get|set}_link_ksettings

The ethtool api {get|set}_settings is deprecated.
We move this driver to new api {get|set}_link_ksettings.

As I don't have the hardware, I'd be very pleased if
someone may test this patch.
Signed-off-by: default avatarPhilippe Reynes <tremyfr@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 8bae3551
...@@ -853,32 +853,32 @@ static void set_mdix_status(struct net_device *net, __u8 mdix_ctrl) ...@@ -853,32 +853,32 @@ static void set_mdix_status(struct net_device *net, __u8 mdix_ctrl)
pdata->mdix_ctrl = mdix_ctrl; pdata->mdix_ctrl = mdix_ctrl;
} }
static int smsc95xx_get_settings(struct net_device *net, static int smsc95xx_get_link_ksettings(struct net_device *net,
struct ethtool_cmd *cmd) struct ethtool_link_ksettings *cmd)
{ {
struct usbnet *dev = netdev_priv(net); struct usbnet *dev = netdev_priv(net);
struct smsc95xx_priv *pdata = (struct smsc95xx_priv *)(dev->data[0]); struct smsc95xx_priv *pdata = (struct smsc95xx_priv *)(dev->data[0]);
int retval; int retval;
retval = usbnet_get_settings(net, cmd); retval = usbnet_get_link_ksettings(net, cmd);
cmd->eth_tp_mdix = pdata->mdix_ctrl; cmd->base.eth_tp_mdix = pdata->mdix_ctrl;
cmd->eth_tp_mdix_ctrl = pdata->mdix_ctrl; cmd->base.eth_tp_mdix_ctrl = pdata->mdix_ctrl;
return retval; return retval;
} }
static int smsc95xx_set_settings(struct net_device *net, static int smsc95xx_set_link_ksettings(struct net_device *net,
struct ethtool_cmd *cmd) const struct ethtool_link_ksettings *cmd)
{ {
struct usbnet *dev = netdev_priv(net); struct usbnet *dev = netdev_priv(net);
struct smsc95xx_priv *pdata = (struct smsc95xx_priv *)(dev->data[0]); struct smsc95xx_priv *pdata = (struct smsc95xx_priv *)(dev->data[0]);
int retval; int retval;
if (pdata->mdix_ctrl != cmd->eth_tp_mdix_ctrl) if (pdata->mdix_ctrl != cmd->base.eth_tp_mdix_ctrl)
set_mdix_status(net, cmd->eth_tp_mdix_ctrl); set_mdix_status(net, cmd->base.eth_tp_mdix_ctrl);
retval = usbnet_set_settings(net, cmd); retval = usbnet_set_link_ksettings(net, cmd);
return retval; return retval;
} }
...@@ -889,8 +889,6 @@ static const struct ethtool_ops smsc95xx_ethtool_ops = { ...@@ -889,8 +889,6 @@ static const struct ethtool_ops smsc95xx_ethtool_ops = {
.get_drvinfo = usbnet_get_drvinfo, .get_drvinfo = usbnet_get_drvinfo,
.get_msglevel = usbnet_get_msglevel, .get_msglevel = usbnet_get_msglevel,
.set_msglevel = usbnet_set_msglevel, .set_msglevel = usbnet_set_msglevel,
.get_settings = smsc95xx_get_settings,
.set_settings = smsc95xx_set_settings,
.get_eeprom_len = smsc95xx_ethtool_get_eeprom_len, .get_eeprom_len = smsc95xx_ethtool_get_eeprom_len,
.get_eeprom = smsc95xx_ethtool_get_eeprom, .get_eeprom = smsc95xx_ethtool_get_eeprom,
.set_eeprom = smsc95xx_ethtool_set_eeprom, .set_eeprom = smsc95xx_ethtool_set_eeprom,
...@@ -898,6 +896,8 @@ static const struct ethtool_ops smsc95xx_ethtool_ops = { ...@@ -898,6 +896,8 @@ static const struct ethtool_ops smsc95xx_ethtool_ops = {
.get_regs = smsc95xx_ethtool_getregs, .get_regs = smsc95xx_ethtool_getregs,
.get_wol = smsc95xx_ethtool_get_wol, .get_wol = smsc95xx_ethtool_get_wol,
.set_wol = smsc95xx_ethtool_set_wol, .set_wol = smsc95xx_ethtool_set_wol,
.get_link_ksettings = smsc95xx_get_link_ksettings,
.set_link_ksettings = smsc95xx_set_link_ksettings,
}; };
static int smsc95xx_ioctl(struct net_device *netdev, struct ifreq *rq, int cmd) static int smsc95xx_ioctl(struct net_device *netdev, struct ifreq *rq, int cmd)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment