net: 3com: typhoon: fix typhoon_get_link_ksettings

When moving from typhoon_get_settings to typhoon_getlink_ksettings
in the commit f7a5537cd2 ("net: 3com: typhoon: use new api
ethtool_{get|set}_link_ksettings"), we use a local variable supported
but we forgot to update the struct ethtool_link_ksettings with
this value.

We also initialize advertising to zero, because otherwise it may
be uninitialized if no case of the switch (tp->xcvr_select) is used.

Signed-off-by: Philippe Reynes <tremyfr@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Philippe Reynes 2016-11-06 15:02:32 +01:00 committed by David S. Miller
parent 90fdd04e2c
commit b12ab9b119
1 changed files with 6 additions and 1 deletions

View File

@ -1000,7 +1000,7 @@ typhoon_get_link_ksettings(struct net_device *dev,
struct ethtool_link_ksettings *cmd)
{
struct typhoon *tp = netdev_priv(dev);
u32 supported, advertising;
u32 supported, advertising = 0;
supported = SUPPORTED_100baseT_Half | SUPPORTED_100baseT_Full |
SUPPORTED_Autoneg;
@ -1049,6 +1049,11 @@ typhoon_get_link_ksettings(struct net_device *dev,
else
cmd->base.autoneg = AUTONEG_DISABLE;
ethtool_convert_legacy_u32_to_link_mode(cmd->link_modes.supported,
supported);
ethtool_convert_legacy_u32_to_link_mode(cmd->link_modes.advertising,
advertising);
return 0;
}