Commit 60d33964 authored by Jakub Kicinski's avatar Jakub Kicinski Committed by David S. Miller

hisilicon: let core reject the unsupported coalescing parameters

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver correctly rejects all unsupported parameters.
No functional changes.

v3: adjust commit message for new error code and member name
Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 987b191c
...@@ -811,20 +811,6 @@ static int hip04_set_coalesce(struct net_device *netdev, ...@@ -811,20 +811,6 @@ static int hip04_set_coalesce(struct net_device *netdev,
{ {
struct hip04_priv *priv = netdev_priv(netdev); struct hip04_priv *priv = netdev_priv(netdev);
/* Check not supported parameters */
if ((ec->rx_max_coalesced_frames) || (ec->rx_coalesce_usecs_irq) ||
(ec->rx_max_coalesced_frames_irq) || (ec->tx_coalesce_usecs_irq) ||
(ec->use_adaptive_rx_coalesce) || (ec->use_adaptive_tx_coalesce) ||
(ec->pkt_rate_low) || (ec->rx_coalesce_usecs_low) ||
(ec->rx_max_coalesced_frames_low) || (ec->tx_coalesce_usecs_high) ||
(ec->tx_max_coalesced_frames_low) || (ec->pkt_rate_high) ||
(ec->tx_coalesce_usecs_low) || (ec->rx_coalesce_usecs_high) ||
(ec->rx_max_coalesced_frames_high) || (ec->rx_coalesce_usecs) ||
(ec->tx_max_coalesced_frames_irq) ||
(ec->stats_block_coalesce_usecs) ||
(ec->tx_max_coalesced_frames_high) || (ec->rate_sample_interval))
return -EOPNOTSUPP;
if ((ec->tx_coalesce_usecs > HIP04_MAX_TX_COALESCE_USECS || if ((ec->tx_coalesce_usecs > HIP04_MAX_TX_COALESCE_USECS ||
ec->tx_coalesce_usecs < HIP04_MIN_TX_COALESCE_USECS) || ec->tx_coalesce_usecs < HIP04_MIN_TX_COALESCE_USECS) ||
(ec->tx_max_coalesced_frames > HIP04_MAX_TX_COALESCE_FRAMES || (ec->tx_max_coalesced_frames > HIP04_MAX_TX_COALESCE_FRAMES ||
...@@ -845,6 +831,8 @@ static void hip04_get_drvinfo(struct net_device *netdev, ...@@ -845,6 +831,8 @@ static void hip04_get_drvinfo(struct net_device *netdev,
} }
static const struct ethtool_ops hip04_ethtool_ops = { static const struct ethtool_ops hip04_ethtool_ops = {
.supported_coalesce_params = ETHTOOL_COALESCE_TX_USECS |
ETHTOOL_COALESCE_TX_MAX_FRAMES,
.get_coalesce = hip04_get_coalesce, .get_coalesce = hip04_get_coalesce,
.set_coalesce = hip04_set_coalesce, .set_coalesce = hip04_set_coalesce,
.get_drvinfo = hip04_get_drvinfo, .get_drvinfo = hip04_get_drvinfo,
......
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