You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
ethtool: cosmetic: Use ethtool ethtool_cmd_speed API
This updates the network drivers so that they don't access the ethtool_cmd::speed field directly, but use ethtool_cmd_speed() instead. For most of the drivers, these changes are purely cosmetic and don't fix any problem, such as for those 1GbE/10GbE drivers that indirectly call their own ethtool get_settings()/mii_ethtool_gset(). The changes are meant to enforce code consistency and provide robustness with future larger throughputs, at the expense of a few CPU cycles for each ethtool operation. All drivers compiled with make allyesconfig ion x86_64 have been updated. Tested: make allyesconfig on x86_64 + e1000e/bnx2x work Signed-off-by: David Decotigny <decot@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
25db033881
commit
7073949720
@@ -1493,7 +1493,7 @@ static int nes_netdev_get_settings(struct net_device *netdev, struct ethtool_cmd
|
||||
et_cmd->maxrxpkt = 511;
|
||||
|
||||
if (nesadapter->OneG_Mode) {
|
||||
et_cmd->speed = SPEED_1000;
|
||||
ethtool_cmd_speed_set(et_cmd, SPEED_1000);
|
||||
if (phy_type == NES_PHY_TYPE_PUMA_1G) {
|
||||
et_cmd->supported = SUPPORTED_1000baseT_Full;
|
||||
et_cmd->advertising = ADVERTISED_1000baseT_Full;
|
||||
@@ -1532,7 +1532,7 @@ static int nes_netdev_get_settings(struct net_device *netdev, struct ethtool_cmd
|
||||
et_cmd->advertising = ADVERTISED_10000baseT_Full;
|
||||
et_cmd->phy_address = mac_index;
|
||||
}
|
||||
et_cmd->speed = SPEED_10000;
|
||||
ethtool_cmd_speed_set(et_cmd, SPEED_10000);
|
||||
et_cmd->autoneg = AUTONEG_DISABLE;
|
||||
return 0;
|
||||
}
|
||||
|
||||
+1
-1
@@ -1207,7 +1207,7 @@ el3_netdev_get_ecmd(struct net_device *dev, struct ethtool_cmd *ecmd)
|
||||
ecmd->duplex = DUPLEX_FULL;
|
||||
}
|
||||
|
||||
ecmd->speed = SPEED_10;
|
||||
ethtool_cmd_speed_set(ecmd, SPEED_10);
|
||||
EL3WINDOW(1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -2658,15 +2658,15 @@ static int ace_get_settings(struct net_device *dev, struct ethtool_cmd *ecmd)
|
||||
|
||||
link = readl(®s->GigLnkState);
|
||||
if (link & LNK_1000MB)
|
||||
ecmd->speed = SPEED_1000;
|
||||
ethtool_cmd_speed_set(ecmd, SPEED_1000);
|
||||
else {
|
||||
link = readl(®s->FastLnkState);
|
||||
if (link & LNK_100MB)
|
||||
ecmd->speed = SPEED_100;
|
||||
ethtool_cmd_speed_set(ecmd, SPEED_100);
|
||||
else if (link & LNK_10MB)
|
||||
ecmd->speed = SPEED_10;
|
||||
ethtool_cmd_speed_set(ecmd, SPEED_10);
|
||||
else
|
||||
ecmd->speed = 0;
|
||||
ethtool_cmd_speed_set(ecmd, 0);
|
||||
}
|
||||
if (link & LNK_FULL_DUPLEX)
|
||||
ecmd->duplex = DUPLEX_FULL;
|
||||
|
||||
@@ -591,10 +591,11 @@ static void etherh_get_drvinfo(struct net_device *dev, struct ethtool_drvinfo *i
|
||||
static int etherh_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
{
|
||||
cmd->supported = etherh_priv(dev)->supported;
|
||||
cmd->speed = SPEED_10;
|
||||
ethtool_cmd_speed_set(cmd, SPEED_10);
|
||||
cmd->duplex = DUPLEX_HALF;
|
||||
cmd->port = dev->if_port == IF_PORT_10BASET ? PORT_TP : PORT_BNC;
|
||||
cmd->autoneg = dev->flags & IFF_AUTOMEDIA ? AUTONEG_ENABLE : AUTONEG_DISABLE;
|
||||
cmd->autoneg = (dev->flags & IFF_AUTOMEDIA ?
|
||||
AUTONEG_ENABLE : AUTONEG_DISABLE);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -891,15 +891,16 @@ ks8695_wan_get_settings(struct net_device *ndev, struct ethtool_cmd *cmd)
|
||||
cmd->advertising |= ADVERTISED_Pause;
|
||||
cmd->autoneg = AUTONEG_ENABLE;
|
||||
|
||||
cmd->speed = (ctrl & WMC_WSS) ? SPEED_100 : SPEED_10;
|
||||
ethtool_cmd_speed_set(cmd,
|
||||
(ctrl & WMC_WSS) ? SPEED_100 : SPEED_10);
|
||||
cmd->duplex = (ctrl & WMC_WDS) ?
|
||||
DUPLEX_FULL : DUPLEX_HALF;
|
||||
} else {
|
||||
/* auto-negotiation is disabled */
|
||||
cmd->autoneg = AUTONEG_DISABLE;
|
||||
|
||||
cmd->speed = (ctrl & WMC_WANF100) ?
|
||||
SPEED_100 : SPEED_10;
|
||||
ethtool_cmd_speed_set(cmd, ((ctrl & WMC_WANF100) ?
|
||||
SPEED_100 : SPEED_10));
|
||||
cmd->duplex = (ctrl & WMC_WANFF) ?
|
||||
DUPLEX_FULL : DUPLEX_HALF;
|
||||
}
|
||||
|
||||
@@ -50,13 +50,13 @@ static int atl1c_get_settings(struct net_device *netdev,
|
||||
ecmd->transceiver = XCVR_INTERNAL;
|
||||
|
||||
if (adapter->link_speed != SPEED_0) {
|
||||
ecmd->speed = adapter->link_speed;
|
||||
ethtool_cmd_speed_set(ecmd, adapter->link_speed);
|
||||
if (adapter->link_duplex == FULL_DUPLEX)
|
||||
ecmd->duplex = DUPLEX_FULL;
|
||||
else
|
||||
ecmd->duplex = DUPLEX_HALF;
|
||||
} else {
|
||||
ecmd->speed = -1;
|
||||
ethtool_cmd_speed_set(ecmd, -1);
|
||||
ecmd->duplex = -1;
|
||||
}
|
||||
|
||||
|
||||
@@ -51,13 +51,13 @@ static int atl1e_get_settings(struct net_device *netdev,
|
||||
ecmd->transceiver = XCVR_INTERNAL;
|
||||
|
||||
if (adapter->link_speed != SPEED_0) {
|
||||
ecmd->speed = adapter->link_speed;
|
||||
ethtool_cmd_speed_set(ecmd, adapter->link_speed);
|
||||
if (adapter->link_duplex == FULL_DUPLEX)
|
||||
ecmd->duplex = DUPLEX_FULL;
|
||||
else
|
||||
ecmd->duplex = DUPLEX_HALF;
|
||||
} else {
|
||||
ecmd->speed = -1;
|
||||
ethtool_cmd_speed_set(ecmd, -1);
|
||||
ecmd->duplex = -1;
|
||||
}
|
||||
|
||||
|
||||
@@ -3231,13 +3231,13 @@ static int atl1_get_settings(struct net_device *netdev,
|
||||
if (netif_carrier_ok(adapter->netdev)) {
|
||||
u16 link_speed, link_duplex;
|
||||
atl1_get_speed_and_duplex(hw, &link_speed, &link_duplex);
|
||||
ecmd->speed = link_speed;
|
||||
ethtool_cmd_speed_set(ecmd, link_speed);
|
||||
if (link_duplex == FULL_DUPLEX)
|
||||
ecmd->duplex = DUPLEX_FULL;
|
||||
else
|
||||
ecmd->duplex = DUPLEX_HALF;
|
||||
} else {
|
||||
ecmd->speed = -1;
|
||||
ethtool_cmd_speed_set(ecmd, -1);
|
||||
ecmd->duplex = -1;
|
||||
}
|
||||
if (hw->media_type == MEDIA_TYPE_AUTO_SENSOR ||
|
||||
|
||||
@@ -1769,13 +1769,13 @@ static int atl2_get_settings(struct net_device *netdev,
|
||||
ecmd->transceiver = XCVR_INTERNAL;
|
||||
|
||||
if (adapter->link_speed != SPEED_0) {
|
||||
ecmd->speed = adapter->link_speed;
|
||||
ethtool_cmd_speed_set(ecmd, adapter->link_speed);
|
||||
if (adapter->link_duplex == FULL_DUPLEX)
|
||||
ecmd->duplex = DUPLEX_FULL;
|
||||
else
|
||||
ecmd->duplex = DUPLEX_HALF;
|
||||
} else {
|
||||
ecmd->speed = -1;
|
||||
ethtool_cmd_speed_set(ecmd, -1);
|
||||
ecmd->duplex = -1;
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -1807,8 +1807,8 @@ static int b44_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
if (bp->flags & B44_FLAG_ADV_100FULL)
|
||||
cmd->advertising |= ADVERTISED_100baseT_Full;
|
||||
cmd->advertising |= ADVERTISED_Pause | ADVERTISED_Asym_Pause;
|
||||
cmd->speed = (bp->flags & B44_FLAG_100_BASE_T) ?
|
||||
SPEED_100 : SPEED_10;
|
||||
ethtool_cmd_speed_set(cmd, ((bp->flags & B44_FLAG_100_BASE_T) ?
|
||||
SPEED_100 : SPEED_10));
|
||||
cmd->duplex = (bp->flags & B44_FLAG_FULL_DUPLEX) ?
|
||||
DUPLEX_FULL : DUPLEX_HALF;
|
||||
cmd->port = 0;
|
||||
@@ -1820,7 +1820,7 @@ static int b44_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
if (cmd->autoneg == AUTONEG_ENABLE)
|
||||
cmd->advertising |= ADVERTISED_Autoneg;
|
||||
if (!netif_running(dev)){
|
||||
cmd->speed = 0;
|
||||
ethtool_cmd_speed_set(cmd, 0);
|
||||
cmd->duplex = 0xff;
|
||||
}
|
||||
cmd->maxtxpkt = 0;
|
||||
|
||||
@@ -1346,7 +1346,8 @@ static int bcm_enet_get_settings(struct net_device *dev,
|
||||
return phy_ethtool_gset(priv->phydev, cmd);
|
||||
} else {
|
||||
cmd->autoneg = 0;
|
||||
cmd->speed = (priv->force_speed_100) ? SPEED_100 : SPEED_10;
|
||||
ethtool_cmd_speed_set(cmd, ((priv->force_speed_100)
|
||||
? SPEED_100 : SPEED_10));
|
||||
cmd->duplex = (priv->force_duplex_full) ?
|
||||
DUPLEX_FULL : DUPLEX_HALF;
|
||||
cmd->supported = ADVERTISED_10baseT_Half |
|
||||
|
||||
@@ -381,23 +381,23 @@ static int be_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd)
|
||||
be_link_status_update(adapter, link_up);
|
||||
/* link_speed is in units of 10 Mbps */
|
||||
if (link_speed) {
|
||||
ecmd->speed = link_speed*10;
|
||||
ethtool_cmd_speed_set(ecmd, link_speed*10);
|
||||
} else {
|
||||
switch (mac_speed) {
|
||||
case PHY_LINK_SPEED_10MBPS:
|
||||
ecmd->speed = SPEED_10;
|
||||
ethtool_cmd_speed_set(ecmd, SPEED_10);
|
||||
break;
|
||||
case PHY_LINK_SPEED_100MBPS:
|
||||
ecmd->speed = SPEED_100;
|
||||
ethtool_cmd_speed_set(ecmd, SPEED_100);
|
||||
break;
|
||||
case PHY_LINK_SPEED_1GBPS:
|
||||
ecmd->speed = SPEED_1000;
|
||||
ethtool_cmd_speed_set(ecmd, SPEED_1000);
|
||||
break;
|
||||
case PHY_LINK_SPEED_10GBPS:
|
||||
ecmd->speed = SPEED_10000;
|
||||
ethtool_cmd_speed_set(ecmd, SPEED_10000);
|
||||
break;
|
||||
case PHY_LINK_SPEED_ZERO:
|
||||
ecmd->speed = 0;
|
||||
ethtool_cmd_speed_set(ecmd, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -440,14 +440,14 @@ static int be_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd)
|
||||
}
|
||||
|
||||
/* Save for future use */
|
||||
adapter->link_speed = ecmd->speed;
|
||||
adapter->link_speed = ethtool_cmd_speed(ecmd);
|
||||
adapter->port_type = ecmd->port;
|
||||
adapter->transceiver = ecmd->transceiver;
|
||||
adapter->autoneg = ecmd->autoneg;
|
||||
dma_free_coherent(&adapter->pdev->dev, phy_cmd.size, phy_cmd.va,
|
||||
phy_cmd.dma);
|
||||
} else {
|
||||
ecmd->speed = adapter->link_speed;
|
||||
ethtool_cmd_speed_set(ecmd, adapter->link_speed);
|
||||
ecmd->port = adapter->port_type;
|
||||
ecmd->transceiver = adapter->transceiver;
|
||||
ecmd->autoneg = adapter->autoneg;
|
||||
|
||||
@@ -237,10 +237,10 @@ bnad_get_settings(struct net_device *netdev, struct ethtool_cmd *cmd)
|
||||
cmd->phy_address = 0;
|
||||
|
||||
if (netif_carrier_ok(netdev)) {
|
||||
cmd->speed = SPEED_10000;
|
||||
ethtool_cmd_speed_set(cmd, SPEED_10000);
|
||||
cmd->duplex = DUPLEX_FULL;
|
||||
} else {
|
||||
cmd->speed = -1;
|
||||
ethtool_cmd_speed_set(cmd, -1);
|
||||
cmd->duplex = -1;
|
||||
}
|
||||
cmd->transceiver = XCVR_EXTERNAL;
|
||||
|
||||
+3
-4
@@ -6696,17 +6696,16 @@ bnx2_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
|
||||
if (bp->autoneg & AUTONEG_SPEED) {
|
||||
cmd->autoneg = AUTONEG_ENABLE;
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
cmd->autoneg = AUTONEG_DISABLE;
|
||||
}
|
||||
|
||||
if (netif_carrier_ok(dev)) {
|
||||
cmd->speed = bp->line_speed;
|
||||
ethtool_cmd_speed_set(cmd, bp->line_speed);
|
||||
cmd->duplex = bp->duplex;
|
||||
}
|
||||
else {
|
||||
cmd->speed = -1;
|
||||
ethtool_cmd_speed_set(cmd, -1);
|
||||
cmd->duplex = -1;
|
||||
}
|
||||
spin_unlock_bh(&bp->phy_lock);
|
||||
|
||||
+12
-13
@@ -4606,18 +4606,17 @@ static int cas_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
if (bmcr & BMCR_ANENABLE) {
|
||||
cmd->advertising |= ADVERTISED_Autoneg;
|
||||
cmd->autoneg = AUTONEG_ENABLE;
|
||||
cmd->speed = ((speed == 10) ?
|
||||
SPEED_10 :
|
||||
((speed == 1000) ?
|
||||
SPEED_1000 : SPEED_100));
|
||||
ethtool_cmd_speed_set(cmd, ((speed == 10) ?
|
||||
SPEED_10 :
|
||||
((speed == 1000) ?
|
||||
SPEED_1000 : SPEED_100)));
|
||||
cmd->duplex = full_duplex ? DUPLEX_FULL : DUPLEX_HALF;
|
||||
} else {
|
||||
cmd->autoneg = AUTONEG_DISABLE;
|
||||
cmd->speed =
|
||||
(bmcr & CAS_BMCR_SPEED1000) ?
|
||||
SPEED_1000 :
|
||||
((bmcr & BMCR_SPEED100) ? SPEED_100:
|
||||
SPEED_10);
|
||||
ethtool_cmd_speed_set(cmd, ((bmcr & CAS_BMCR_SPEED1000) ?
|
||||
SPEED_1000 :
|
||||
((bmcr & BMCR_SPEED100) ?
|
||||
SPEED_100 : SPEED_10)));
|
||||
cmd->duplex =
|
||||
(bmcr & BMCR_FULLDPLX) ?
|
||||
DUPLEX_FULL : DUPLEX_HALF;
|
||||
@@ -4634,14 +4633,14 @@ static int cas_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
* settings that we configured.
|
||||
*/
|
||||
if (cp->link_cntl & BMCR_ANENABLE) {
|
||||
cmd->speed = 0;
|
||||
ethtool_cmd_speed_set(cmd, 0);
|
||||
cmd->duplex = 0xff;
|
||||
} else {
|
||||
cmd->speed = SPEED_10;
|
||||
ethtool_cmd_speed_set(cmd, SPEED_10);
|
||||
if (cp->link_cntl & BMCR_SPEED100) {
|
||||
cmd->speed = SPEED_100;
|
||||
ethtool_cmd_speed_set(cmd, SPEED_100);
|
||||
} else if (cp->link_cntl & CAS_BMCR_SPEED1000) {
|
||||
cmd->speed = SPEED_1000;
|
||||
ethtool_cmd_speed_set(cmd, SPEED_1000);
|
||||
}
|
||||
cmd->duplex = (cp->link_cntl & BMCR_FULLDPLX)?
|
||||
DUPLEX_FULL : DUPLEX_HALF;
|
||||
|
||||
@@ -577,10 +577,10 @@ static int get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
cmd->advertising = p->link_config.advertising;
|
||||
|
||||
if (netif_carrier_ok(dev)) {
|
||||
cmd->speed = p->link_config.speed;
|
||||
ethtool_cmd_speed_set(cmd, p->link_config.speed);
|
||||
cmd->duplex = p->link_config.duplex;
|
||||
} else {
|
||||
cmd->speed = -1;
|
||||
ethtool_cmd_speed_set(cmd, -1);
|
||||
cmd->duplex = -1;
|
||||
}
|
||||
|
||||
|
||||
@@ -1759,10 +1759,10 @@ static int get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
cmd->advertising = p->link_config.advertising;
|
||||
|
||||
if (netif_carrier_ok(dev)) {
|
||||
cmd->speed = p->link_config.speed;
|
||||
ethtool_cmd_speed_set(cmd, p->link_config.speed);
|
||||
cmd->duplex = p->link_config.duplex;
|
||||
} else {
|
||||
cmd->speed = -1;
|
||||
ethtool_cmd_speed_set(cmd, -1);
|
||||
cmd->duplex = -1;
|
||||
}
|
||||
|
||||
|
||||
@@ -1436,7 +1436,8 @@ static int get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
cmd->supported = from_fw_linkcaps(p->port_type, p->link_cfg.supported);
|
||||
cmd->advertising = from_fw_linkcaps(p->port_type,
|
||||
p->link_cfg.advertising);
|
||||
cmd->speed = netif_carrier_ok(dev) ? p->link_cfg.speed : 0;
|
||||
ethtool_cmd_speed_set(cmd,
|
||||
netif_carrier_ok(dev) ? p->link_cfg.speed : 0);
|
||||
cmd->duplex = DUPLEX_FULL;
|
||||
cmd->autoneg = p->link_cfg.autoneg;
|
||||
cmd->maxtxpkt = 0;
|
||||
|
||||
@@ -1167,7 +1167,8 @@ static int cxgb4vf_get_settings(struct net_device *dev,
|
||||
|
||||
cmd->supported = pi->link_cfg.supported;
|
||||
cmd->advertising = pi->link_cfg.advertising;
|
||||
cmd->speed = netif_carrier_ok(dev) ? pi->link_cfg.speed : -1;
|
||||
ethtool_cmd_speed_set(cmd,
|
||||
netif_carrier_ok(dev) ? pi->link_cfg.speed : -1);
|
||||
cmd->duplex = DUPLEX_FULL;
|
||||
|
||||
cmd->port = (cmd->supported & SUPPORTED_TP) ? PORT_TP : PORT_FIBRE;
|
||||
|
||||
+2
-2
@@ -1189,10 +1189,10 @@ static int rio_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
cmd->transceiver = XCVR_INTERNAL;
|
||||
}
|
||||
if ( np->link_status ) {
|
||||
cmd->speed = np->speed;
|
||||
ethtool_cmd_speed_set(cmd, np->speed);
|
||||
cmd->duplex = np->full_duplex ? DUPLEX_FULL : DUPLEX_HALF;
|
||||
} else {
|
||||
cmd->speed = -1;
|
||||
ethtool_cmd_speed_set(cmd, -1);
|
||||
cmd->duplex = -1;
|
||||
}
|
||||
if ( np->an_enable)
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user