]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
ixgbe: add basic support for setting and getting nfc controls
authorAlexander Duyck <alexander.h.duyck@intel.com>
Wed, 11 May 2011 07:18:41 +0000 (07:18 +0000)
committerJoe Jin <joe.jin@oracle.com>
Fri, 3 Feb 2012 01:15:49 +0000 (09:15 +0800)
This change adds basic support for the obtaining of RSS ring counts.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Ross Brattain <ross.b.brattain@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
(cherry picked from commit 91cd94bfe4f00fccf692e32dfa86a9fad0d61280)

Signed-off-by: Joe Jin <joe.jin@oracle.com>
drivers/net/ixgbe/ixgbe_ethtool.c

index c2dd1c46433f4312808384bfa81c0b0ef226265d..04461573e48841a839492d6a1caed4cf4536ee57 100644 (file)
@@ -2340,6 +2340,24 @@ static int ixgbe_set_flags(struct net_device *netdev, u32 data)
        return 0;
 }
 
+static int ixgbe_get_rxnfc(struct net_device *dev, struct ethtool_rxnfc *cmd,
+                          void *rule_locs)
+{
+       struct ixgbe_adapter *adapter = netdev_priv(dev);
+       int ret = -EOPNOTSUPP;
+
+       switch (cmd->cmd) {
+       case ETHTOOL_GRXRINGS:
+               cmd->data = adapter->num_rx_queues;
+               ret = 0;
+               break;
+       default:
+               break;
+       }
+
+       return ret;
+}
+
 static const struct ethtool_ops ixgbe_ethtool_ops = {
        .get_settings           = ixgbe_get_settings,
        .set_settings           = ixgbe_set_settings,
@@ -2375,6 +2393,7 @@ static const struct ethtool_ops ixgbe_ethtool_ops = {
        .set_coalesce           = ixgbe_set_coalesce,
        .get_flags              = ethtool_op_get_flags,
        .set_flags              = ixgbe_set_flags,
+       .get_rxnfc              = ixgbe_get_rxnfc,
 };
 
 void ixgbe_set_ethtool_ops(struct net_device *netdev)