mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-02-10 09:55:29 +07:00
Merge branch 'ethtool-consolidate-irq-coalescing-part-5'
Jakub Kicinski says: ==================== ethtool: consolidate irq coalescing - part 5 Convert more drivers following the groundwork laid in a recent patch set [1] and continued in [2], [3], [4]. The aim of the effort is to consolidate irq coalescing parameter validation in the core. This set converts further 15 drivers in drivers/net/ethernet. One more conversion sets to come. [1] https://lore.kernel.org/netdev/20200305051542.991898-1-kuba@kernel.org/ [2] https://lore.kernel.org/netdev/20200306010602.1620354-1-kuba@kernel.org/ [3] https://lore.kernel.org/netdev/20200310021512.1861626-1-kuba@kernel.org/ [4] https://lore.kernel.org/netdev/20200311223302.2171564-1-kuba@kernel.org/ ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
commit
b8323deb63
@ -2839,6 +2839,9 @@ jme_set_eeprom(struct net_device *netdev,
|
||||
}
|
||||
|
||||
static const struct ethtool_ops jme_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
|
||||
ETHTOOL_COALESCE_MAX_FRAMES |
|
||||
ETHTOOL_COALESCE_USE_ADAPTIVE_RX,
|
||||
.get_drvinfo = jme_get_drvinfo,
|
||||
.get_regs_len = jme_get_regs_len,
|
||||
.get_regs = jme_get_regs,
|
||||
|
@ -1737,6 +1737,7 @@ static int mv643xx_eth_get_sset_count(struct net_device *dev, int sset)
|
||||
}
|
||||
|
||||
static const struct ethtool_ops mv643xx_eth_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS,
|
||||
.get_drvinfo = mv643xx_eth_get_drvinfo,
|
||||
.nway_reset = phy_ethtool_nway_reset,
|
||||
.get_link = ethtool_op_get_link,
|
||||
|
@ -4838,6 +4838,8 @@ static const struct net_device_ops mvneta_netdev_ops = {
|
||||
};
|
||||
|
||||
static const struct ethtool_ops mvneta_eth_tool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_RX_USECS |
|
||||
ETHTOOL_COALESCE_MAX_FRAMES,
|
||||
.nway_reset = mvneta_ethtool_nway_reset,
|
||||
.get_link = ethtool_op_get_link,
|
||||
.set_coalesce = mvneta_ethtool_set_coalesce,
|
||||
|
@ -4384,6 +4384,8 @@ static const struct net_device_ops mvpp2_netdev_ops = {
|
||||
};
|
||||
|
||||
static const struct ethtool_ops mvpp2_eth_tool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
|
||||
ETHTOOL_COALESCE_MAX_FRAMES,
|
||||
.nway_reset = mvpp2_ethtool_nway_reset,
|
||||
.get_link = ethtool_op_get_link,
|
||||
.set_coalesce = mvpp2_ethtool_set_coalesce,
|
||||
|
@ -368,17 +368,6 @@ static int otx2_set_coalesce(struct net_device *netdev,
|
||||
struct otx2_hw *hw = &pfvf->hw;
|
||||
int qidx;
|
||||
|
||||
if (ec->use_adaptive_rx_coalesce || ec->use_adaptive_tx_coalesce ||
|
||||
ec->rx_coalesce_usecs_irq || ec->rx_max_coalesced_frames_irq ||
|
||||
ec->tx_coalesce_usecs_irq || ec->tx_max_coalesced_frames_irq ||
|
||||
ec->stats_block_coalesce_usecs || ec->pkt_rate_low ||
|
||||
ec->rx_coalesce_usecs_low || ec->rx_max_coalesced_frames_low ||
|
||||
ec->tx_coalesce_usecs_low || ec->tx_max_coalesced_frames_low ||
|
||||
ec->pkt_rate_high || ec->rx_coalesce_usecs_high ||
|
||||
ec->rx_max_coalesced_frames_high || ec->tx_coalesce_usecs_high ||
|
||||
ec->tx_max_coalesced_frames_high || ec->rate_sample_interval)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
if (!ec->rx_max_coalesced_frames || !ec->tx_max_coalesced_frames)
|
||||
return 0;
|
||||
|
||||
@ -674,6 +663,8 @@ static u32 otx2_get_link(struct net_device *netdev)
|
||||
}
|
||||
|
||||
static const struct ethtool_ops otx2_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
|
||||
ETHTOOL_COALESCE_MAX_FRAMES,
|
||||
.get_link = otx2_get_link,
|
||||
.get_drvinfo = otx2_get_drvinfo,
|
||||
.get_strings = otx2_get_strings,
|
||||
|
@ -876,6 +876,7 @@ static int skge_set_eeprom(struct net_device *dev, struct ethtool_eeprom *eeprom
|
||||
}
|
||||
|
||||
static const struct ethtool_ops skge_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS,
|
||||
.get_drvinfo = skge_get_drvinfo,
|
||||
.get_regs_len = skge_get_regs_len,
|
||||
.get_regs = skge_get_regs,
|
||||
|
@ -4400,6 +4400,10 @@ static int sky2_set_features(struct net_device *dev, netdev_features_t features)
|
||||
}
|
||||
|
||||
static const struct ethtool_ops sky2_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
|
||||
ETHTOOL_COALESCE_MAX_FRAMES |
|
||||
ETHTOOL_COALESCE_RX_USECS_IRQ |
|
||||
ETHTOOL_COALESCE_RX_MAX_FRAMES_IRQ,
|
||||
.get_drvinfo = sky2_get_drvinfo,
|
||||
.get_wol = sky2_get_wol,
|
||||
.set_wol = sky2_set_wol,
|
||||
|
@ -1920,6 +1920,7 @@ myri10ge_phys_id(struct net_device *netdev, enum ethtool_phys_id_state state)
|
||||
}
|
||||
|
||||
static const struct ethtool_ops myri10ge_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_RX_USECS,
|
||||
.get_drvinfo = myri10ge_get_drvinfo,
|
||||
.get_coalesce = myri10ge_get_coalesce,
|
||||
.set_coalesce = myri10ge_set_coalesce,
|
||||
|
@ -1019,27 +1019,6 @@ static int nixge_ethtools_set_coalesce(struct net_device *ndev,
|
||||
return -EBUSY;
|
||||
}
|
||||
|
||||
if (ecoalesce->rx_coalesce_usecs ||
|
||||
ecoalesce->rx_coalesce_usecs_irq ||
|
||||
ecoalesce->rx_max_coalesced_frames_irq ||
|
||||
ecoalesce->tx_coalesce_usecs ||
|
||||
ecoalesce->tx_coalesce_usecs_irq ||
|
||||
ecoalesce->tx_max_coalesced_frames_irq ||
|
||||
ecoalesce->stats_block_coalesce_usecs ||
|
||||
ecoalesce->use_adaptive_rx_coalesce ||
|
||||
ecoalesce->use_adaptive_tx_coalesce ||
|
||||
ecoalesce->pkt_rate_low ||
|
||||
ecoalesce->rx_coalesce_usecs_low ||
|
||||
ecoalesce->rx_max_coalesced_frames_low ||
|
||||
ecoalesce->tx_coalesce_usecs_low ||
|
||||
ecoalesce->tx_max_coalesced_frames_low ||
|
||||
ecoalesce->pkt_rate_high ||
|
||||
ecoalesce->rx_coalesce_usecs_high ||
|
||||
ecoalesce->rx_max_coalesced_frames_high ||
|
||||
ecoalesce->tx_coalesce_usecs_high ||
|
||||
ecoalesce->tx_max_coalesced_frames_high ||
|
||||
ecoalesce->rate_sample_interval)
|
||||
return -EOPNOTSUPP;
|
||||
if (ecoalesce->rx_max_coalesced_frames)
|
||||
priv->coalesce_count_rx = ecoalesce->rx_max_coalesced_frames;
|
||||
if (ecoalesce->tx_max_coalesced_frames)
|
||||
@ -1083,6 +1062,7 @@ static int nixge_ethtools_set_phys_id(struct net_device *ndev,
|
||||
}
|
||||
|
||||
static const struct ethtool_ops nixge_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_MAX_FRAMES,
|
||||
.get_drvinfo = nixge_ethtools_get_drvinfo,
|
||||
.get_coalesce = nixge_ethtools_get_coalesce,
|
||||
.set_coalesce = nixge_ethtools_set_coalesce,
|
||||
|
@ -748,24 +748,7 @@ static int netxen_set_intr_coalesce(struct net_device *netdev,
|
||||
if (ethcoal->rx_coalesce_usecs > 0xffff ||
|
||||
ethcoal->rx_max_coalesced_frames > 0xffff ||
|
||||
ethcoal->tx_coalesce_usecs > 0xffff ||
|
||||
ethcoal->tx_max_coalesced_frames > 0xffff ||
|
||||
ethcoal->rx_coalesce_usecs_irq ||
|
||||
ethcoal->rx_max_coalesced_frames_irq ||
|
||||
ethcoal->tx_coalesce_usecs_irq ||
|
||||
ethcoal->tx_max_coalesced_frames_irq ||
|
||||
ethcoal->stats_block_coalesce_usecs ||
|
||||
ethcoal->use_adaptive_rx_coalesce ||
|
||||
ethcoal->use_adaptive_tx_coalesce ||
|
||||
ethcoal->pkt_rate_low ||
|
||||
ethcoal->rx_coalesce_usecs_low ||
|
||||
ethcoal->rx_max_coalesced_frames_low ||
|
||||
ethcoal->tx_coalesce_usecs_low ||
|
||||
ethcoal->tx_max_coalesced_frames_low ||
|
||||
ethcoal->pkt_rate_high ||
|
||||
ethcoal->rx_coalesce_usecs_high ||
|
||||
ethcoal->rx_max_coalesced_frames_high ||
|
||||
ethcoal->tx_coalesce_usecs_high ||
|
||||
ethcoal->tx_max_coalesced_frames_high)
|
||||
ethcoal->tx_max_coalesced_frames > 0xffff)
|
||||
return -EINVAL;
|
||||
|
||||
if (!ethcoal->rx_coalesce_usecs ||
|
||||
@ -923,6 +906,8 @@ netxen_get_dump_data(struct net_device *netdev, struct ethtool_dump *dump,
|
||||
}
|
||||
|
||||
const struct ethtool_ops netxen_nic_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
|
||||
ETHTOOL_COALESCE_MAX_FRAMES,
|
||||
.get_drvinfo = netxen_nic_get_drvinfo,
|
||||
.get_regs_len = netxen_nic_get_regs_len,
|
||||
.get_regs = netxen_nic_get_regs,
|
||||
|
@ -2087,6 +2087,7 @@ static int qede_get_dump_data(struct net_device *dev,
|
||||
}
|
||||
|
||||
static const struct ethtool_ops qede_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS,
|
||||
.get_link_ksettings = qede_get_link_ksettings,
|
||||
.set_link_ksettings = qede_set_link_ksettings,
|
||||
.get_drvinfo = qede_get_drvinfo,
|
||||
@ -2133,6 +2134,7 @@ static const struct ethtool_ops qede_ethtool_ops = {
|
||||
};
|
||||
|
||||
static const struct ethtool_ops qede_vf_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS,
|
||||
.get_link_ksettings = qede_get_link_ksettings,
|
||||
.get_drvinfo = qede_get_drvinfo,
|
||||
.get_msglevel = qede_get_msglevel,
|
||||
|
@ -1542,24 +1542,7 @@ static int qlcnic_set_intr_coalesce(struct net_device *netdev,
|
||||
if (ethcoal->rx_coalesce_usecs > 0xffff ||
|
||||
ethcoal->rx_max_coalesced_frames > 0xffff ||
|
||||
ethcoal->tx_coalesce_usecs > 0xffff ||
|
||||
ethcoal->tx_max_coalesced_frames > 0xffff ||
|
||||
ethcoal->rx_coalesce_usecs_irq ||
|
||||
ethcoal->rx_max_coalesced_frames_irq ||
|
||||
ethcoal->tx_coalesce_usecs_irq ||
|
||||
ethcoal->tx_max_coalesced_frames_irq ||
|
||||
ethcoal->stats_block_coalesce_usecs ||
|
||||
ethcoal->use_adaptive_rx_coalesce ||
|
||||
ethcoal->use_adaptive_tx_coalesce ||
|
||||
ethcoal->pkt_rate_low ||
|
||||
ethcoal->rx_coalesce_usecs_low ||
|
||||
ethcoal->rx_max_coalesced_frames_low ||
|
||||
ethcoal->tx_coalesce_usecs_low ||
|
||||
ethcoal->tx_max_coalesced_frames_low ||
|
||||
ethcoal->pkt_rate_high ||
|
||||
ethcoal->rx_coalesce_usecs_high ||
|
||||
ethcoal->rx_max_coalesced_frames_high ||
|
||||
ethcoal->tx_coalesce_usecs_high ||
|
||||
ethcoal->tx_max_coalesced_frames_high)
|
||||
ethcoal->tx_max_coalesced_frames > 0xffff)
|
||||
return -EINVAL;
|
||||
|
||||
err = qlcnic_config_intr_coalesce(adapter, ethcoal);
|
||||
@ -1834,6 +1817,8 @@ qlcnic_set_dump(struct net_device *netdev, struct ethtool_dump *val)
|
||||
}
|
||||
|
||||
const struct ethtool_ops qlcnic_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
|
||||
ETHTOOL_COALESCE_MAX_FRAMES,
|
||||
.get_drvinfo = qlcnic_get_drvinfo,
|
||||
.get_regs_len = qlcnic_get_regs_len,
|
||||
.get_regs = qlcnic_get_regs,
|
||||
@ -1865,6 +1850,8 @@ const struct ethtool_ops qlcnic_ethtool_ops = {
|
||||
};
|
||||
|
||||
const struct ethtool_ops qlcnic_sriov_vf_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
|
||||
ETHTOOL_COALESCE_MAX_FRAMES,
|
||||
.get_drvinfo = qlcnic_get_drvinfo,
|
||||
.get_regs_len = qlcnic_get_regs_len,
|
||||
.get_regs = qlcnic_get_regs,
|
||||
|
@ -2006,6 +2006,8 @@ static int rtl8169_set_eee(struct net_device *dev, struct ethtool_eee *data)
|
||||
}
|
||||
|
||||
static const struct ethtool_ops rtl8169_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
|
||||
ETHTOOL_COALESCE_MAX_FRAMES,
|
||||
.get_drvinfo = rtl8169_get_drvinfo,
|
||||
.get_regs_len = rtl8169_get_regs_len,
|
||||
.get_link = ethtool_op_get_link,
|
||||
|
@ -476,6 +476,7 @@ static int sxgbe_get_regs_len(struct net_device *dev)
|
||||
}
|
||||
|
||||
static const struct ethtool_ops sxgbe_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_RX_USECS,
|
||||
.get_drvinfo = sxgbe_getdrvinfo,
|
||||
.get_msglevel = sxgbe_getmsglevel,
|
||||
.set_msglevel = sxgbe_setmsglevel,
|
||||
|
@ -3648,6 +3648,8 @@ static void velocity_get_ethtool_stats(struct net_device *dev,
|
||||
}
|
||||
|
||||
static const struct ethtool_ops velocity_ethtool_ops = {
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
|
||||
ETHTOOL_COALESCE_MAX_FRAMES,
|
||||
.get_drvinfo = velocity_get_drvinfo,
|
||||
.get_wol = velocity_ethtool_get_wol,
|
||||
.set_wol = velocity_ethtool_set_wol,
|
||||
|
Loading…
Reference in New Issue
Block a user