]> Gentwo Git Trees - linux/.git/commitdiff
net: gianfar: convert to use .get_rx_ring_count
authorBreno Leitao <leitao@debian.org>
Fri, 28 Nov 2025 13:11:45 +0000 (05:11 -0800)
committerJakub Kicinski <kuba@kernel.org>
Mon, 1 Dec 2025 19:54:45 +0000 (11:54 -0800)
Convert the gianfar driver to use the new .get_rx_ring_count
ethtool operation instead of implementing .get_rxnfc for handling
ETHTOOL_GRXRINGS command. This simplifies the code by removing the
ETHTOOL_GRXRINGS case from the switch statement and replacing it with
a direct return of the queue count.

The driver still maintains .get_rxnfc for other commands including
ETHTOOL_GRXCLSRLCNT, ETHTOOL_GRXCLSRULE, and ETHTOOL_GRXCLSRLALL.

Signed-off-by: Breno Leitao <leitao@debian.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20251128-gxring_freescale-v1-1-22a978abf29e@debian.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/freescale/gianfar_ethtool.c

index 5fd1f7327680309f8f092d041a88f16a52ab9be5..6fa752d3b60d5fe71ca96ba6a03d8dc4684da699 100644 (file)
@@ -1431,6 +1431,13 @@ static int gfar_set_nfc(struct net_device *dev, struct ethtool_rxnfc *cmd)
        return ret;
 }
 
+static u32 gfar_get_rx_ring_count(struct net_device *dev)
+{
+       struct gfar_private *priv = netdev_priv(dev);
+
+       return priv->num_rx_queues;
+}
+
 static int gfar_get_nfc(struct net_device *dev, struct ethtool_rxnfc *cmd,
                        u32 *rule_locs)
 {
@@ -1438,9 +1445,6 @@ static int gfar_get_nfc(struct net_device *dev, struct ethtool_rxnfc *cmd,
        int ret = 0;
 
        switch (cmd->cmd) {
-       case ETHTOOL_GRXRINGS:
-               cmd->data = priv->num_rx_queues;
-               break;
        case ETHTOOL_GRXCLSRLCNT:
                cmd->rule_cnt = priv->rx_list.count;
                break;
@@ -1519,6 +1523,7 @@ const struct ethtool_ops gfar_ethtool_ops = {
 #endif
        .set_rxnfc = gfar_set_nfc,
        .get_rxnfc = gfar_get_nfc,
+       .get_rx_ring_count = gfar_get_rx_ring_count,
        .set_rxfh_fields = gfar_set_rxfh_fields,
        .get_ts_info = gfar_get_ts_info,
        .get_link_ksettings = phy_ethtool_get_link_ksettings,