diff options
| author | Philippe Reynes <tremyfr@gmail.com> | 2016-11-28 17:52:19 -0500 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2016-11-30 10:29:02 -0500 |
| commit | 377fa64f19ff45d49dc95d4f9d9a0a95fea7f768 (patch) | |
| tree | 276900a3b08bbd47daaf37fe77cb5de3ee2bfb88 /drivers/net/ethernet/brocade | |
| parent | 85de8576a0b14aecc99136cfbf90e367fa2142cb (diff) | |
net: brocade: bna: 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.
Signed-off-by: Philippe Reynes <tremyfr@gmail.com>
Acked-by: Rasesh Mody <Rasesh.Mody@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/brocade')
| -rw-r--r-- | drivers/net/ethernet/brocade/bna/bnad_ethtool.c | 54 |
1 files changed, 30 insertions, 24 deletions
diff --git a/drivers/net/ethernet/brocade/bna/bnad_ethtool.c b/drivers/net/ethernet/brocade/bna/bnad_ethtool.c index 31f61a744d66..286593922139 100644 --- a/drivers/net/ethernet/brocade/bna/bnad_ethtool.c +++ b/drivers/net/ethernet/brocade/bna/bnad_ethtool.c | |||
| @@ -240,40 +240,46 @@ static const char *bnad_net_stats_strings[] = { | |||
| 240 | #define BNAD_ETHTOOL_STATS_NUM ARRAY_SIZE(bnad_net_stats_strings) | 240 | #define BNAD_ETHTOOL_STATS_NUM ARRAY_SIZE(bnad_net_stats_strings) |
| 241 | 241 | ||
| 242 | static int | 242 | static int |
| 243 | bnad_get_settings(struct net_device *netdev, struct ethtool_cmd *cmd) | 243 | bnad_get_link_ksettings(struct net_device *netdev, |
| 244 | struct ethtool_link_ksettings *cmd) | ||
| 244 | { | 245 | { |
| 245 | cmd->supported = SUPPORTED_10000baseT_Full; | 246 | u32 supported, advertising; |
| 246 | cmd->advertising = ADVERTISED_10000baseT_Full; | 247 | |
| 247 | cmd->autoneg = AUTONEG_DISABLE; | 248 | supported = SUPPORTED_10000baseT_Full; |
| 248 | cmd->supported |= SUPPORTED_FIBRE; | 249 | advertising = ADVERTISED_10000baseT_Full; |
| 249 | cmd->advertising |= ADVERTISED_FIBRE; | 250 | cmd->base.autoneg = AUTONEG_DISABLE; |
| 250 | cmd->port = PORT_FIBRE; | 251 | supported |= SUPPORTED_FIBRE; |
| 251 | cmd->phy_address = 0; | 252 | advertising |= ADVERTISED_FIBRE; |
| 253 | cmd->base.port = PORT_FIBRE; | ||
| 254 | cmd->base.phy_address = 0; | ||
| 252 | 255 | ||
| 253 | if (netif_carrier_ok(netdev)) { | 256 | if (netif_carrier_ok(netdev)) { |
| 254 | ethtool_cmd_speed_set(cmd, SPEED_10000); | 257 | cmd->base.speed = SPEED_10000; |
| 255 | cmd->duplex = DUPLEX_FULL; | 258 | cmd->base.duplex = DUPLEX_FULL; |
| 256 | } else { | 259 | } else { |
| 257 | ethtool_cmd_speed_set(cmd, SPEED_UNKNOWN); | 260 | cmd->base.speed = SPEED_UNKNOWN; |
| 258 | cmd->duplex = DUPLEX_UNKNOWN; | 261 | cmd->base.duplex = DUPLEX_UNKNOWN; |
| 259 | } | 262 | } |
| 260 | cmd->transceiver = XCVR_EXTERNAL; | 263 | |
| 261 | cmd->maxtxpkt = 0; | 264 | ethtool_convert_legacy_u32_to_link_mode(cmd->link_modes.supported, |
| 262 | cmd->maxrxpkt = 0; | 265 | supported); |
| 266 | ethtool_convert_legacy_u32_to_link_mode(cmd->link_modes.advertising, | ||
| 267 | advertising); | ||
| 263 | 268 | ||
| 264 | return 0; | 269 | return 0; |
| 265 | } | 270 | } |
| 266 | 271 | ||
| 267 | static int | 272 | static int |
| 268 | bnad_set_settings(struct net_device *netdev, struct ethtool_cmd *cmd) | 273 | bnad_set_link_ksettings(struct net_device *netdev, |
| 274 | const struct ethtool_link_ksettings *cmd) | ||
| 269 | { | 275 | { |
| 270 | /* 10G full duplex setting supported only */ | 276 | /* 10G full duplex setting supported only */ |
| 271 | if (cmd->autoneg == AUTONEG_ENABLE) | 277 | if (cmd->base.autoneg == AUTONEG_ENABLE) |
| 272 | return -EOPNOTSUPP; else { | 278 | return -EOPNOTSUPP; |
| 273 | if ((ethtool_cmd_speed(cmd) == SPEED_10000) | 279 | |
| 274 | && (cmd->duplex == DUPLEX_FULL)) | 280 | if ((cmd->base.speed == SPEED_10000) && |
| 275 | return 0; | 281 | (cmd->base.duplex == DUPLEX_FULL)) |
| 276 | } | 282 | return 0; |
| 277 | 283 | ||
| 278 | return -EOPNOTSUPP; | 284 | return -EOPNOTSUPP; |
| 279 | } | 285 | } |
| @@ -1118,8 +1124,6 @@ out: | |||
| 1118 | } | 1124 | } |
| 1119 | 1125 | ||
| 1120 | static const struct ethtool_ops bnad_ethtool_ops = { | 1126 | static const struct ethtool_ops bnad_ethtool_ops = { |
| 1121 | .get_settings = bnad_get_settings, | ||
| 1122 | .set_settings = bnad_set_settings, | ||
| 1123 | .get_drvinfo = bnad_get_drvinfo, | 1127 | .get_drvinfo = bnad_get_drvinfo, |
| 1124 | .get_wol = bnad_get_wol, | 1128 | .get_wol = bnad_get_wol, |
| 1125 | .get_link = ethtool_op_get_link, | 1129 | .get_link = ethtool_op_get_link, |
| @@ -1137,6 +1141,8 @@ static const struct ethtool_ops bnad_ethtool_ops = { | |||
| 1137 | .set_eeprom = bnad_set_eeprom, | 1141 | .set_eeprom = bnad_set_eeprom, |
| 1138 | .flash_device = bnad_flash_device, | 1142 | .flash_device = bnad_flash_device, |
| 1139 | .get_ts_info = ethtool_op_get_ts_info, | 1143 | .get_ts_info = ethtool_op_get_ts_info, |
| 1144 | .get_link_ksettings = bnad_get_link_ksettings, | ||
| 1145 | .set_link_ksettings = bnad_set_link_ksettings, | ||
| 1140 | }; | 1146 | }; |
| 1141 | 1147 | ||
| 1142 | void | 1148 | void |
