Use the newly introduced .get_rx_ring_count ethtool ops callback instead
of handling ETHTOOL_GRXRINGS directly in .get_rxnfc().

Signed-off-by: Breno Leitao <[email protected]>
---
 drivers/net/ethernet/meta/fbnic/fbnic_ethtool.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ethernet/meta/fbnic/fbnic_ethtool.c 
b/drivers/net/ethernet/meta/fbnic/fbnic_ethtool.c
index 61b8005a0db5f..11745a2d8a443 100644
--- a/drivers/net/ethernet/meta/fbnic/fbnic_ethtool.c
+++ b/drivers/net/ethernet/meta/fbnic/fbnic_ethtool.c
@@ -825,6 +825,13 @@ static int fbnic_get_cls_rule(struct fbnic_net *fbn, 
struct ethtool_rxnfc *cmd)
        return 0;
 }
 
+static u32 fbnic_get_rx_ring_count(struct net_device *netdev)
+{
+       struct fbnic_net *fbn = netdev_priv(netdev);
+
+       return fbn->num_rx_queues;
+}
+
 static int fbnic_get_rxnfc(struct net_device *netdev,
                           struct ethtool_rxnfc *cmd, u32 *rule_locs)
 {
@@ -833,10 +840,6 @@ static int fbnic_get_rxnfc(struct net_device *netdev,
        u32 special = 0;
 
        switch (cmd->cmd) {
-       case ETHTOOL_GRXRINGS:
-               cmd->data = fbn->num_rx_queues;
-               ret = 0;
-               break;
        case ETHTOOL_GRXCLSRULE:
                ret = fbnic_get_cls_rule(fbn, cmd);
                break;
@@ -1895,6 +1898,7 @@ static const struct ethtool_ops fbnic_ethtool_ops = {
        .get_sset_count                 = fbnic_get_sset_count,
        .get_rxnfc                      = fbnic_get_rxnfc,
        .set_rxnfc                      = fbnic_set_rxnfc,
+       .get_rx_ring_count              = fbnic_get_rx_ring_count,
        .get_rxfh_key_size              = fbnic_get_rxfh_key_size,
        .get_rxfh_indir_size            = fbnic_get_rxfh_indir_size,
        .get_rxfh                       = fbnic_get_rxfh,

-- 
2.47.3


Reply via email to