diff options
author | Amit Kumar Salecha <amit.salecha@qlogic.com> | 2010-10-07 23:46:07 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-10-08 13:59:09 -0700 |
commit | a2152d096e0cd8593e883f72e875195ea0e89bb7 (patch) | |
tree | 218bfa4fcf6accd3b62c2972ecd7127de07b3de6 | |
parent | b8c17620458b82fd868f4813e1ff18368a832b7c (diff) |
qlcnic: remove private LRO flag
LRO was not getting enable after interface down/up.
Signed-off-by: Amit Kumar Salecha <amit.salecha@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/qlcnic/qlcnic_ethtool.c | 4 | ||||
-rw-r--r-- | drivers/net/qlcnic/qlcnic_hw.c | 5 | ||||
-rw-r--r-- | drivers/net/qlcnic/qlcnic_main.c | 2 |
3 files changed, 2 insertions, 9 deletions
diff --git a/drivers/net/qlcnic/qlcnic_ethtool.c b/drivers/net/qlcnic/qlcnic_ethtool.c index 018130193b5..e07adb1dec4 100644 --- a/drivers/net/qlcnic/qlcnic_ethtool.c +++ b/drivers/net/qlcnic/qlcnic_ethtool.c @@ -865,7 +865,7 @@ static int qlcnic_set_rx_csum(struct net_device *dev, u32 data) return 0; } - if (adapter->flags & QLCNIC_LRO_ENABLED) { + if (dev->features & NETIF_F_LRO) { if (qlcnic_config_hw_lro(adapter, QLCNIC_LRO_DISABLED)) return -EIO; @@ -1062,7 +1062,7 @@ static int qlcnic_set_flags(struct net_device *netdev, u32 data) return -EINVAL; } - if ((data & ETH_FLAG_LRO) && (adapter->flags & QLCNIC_LRO_ENABLED)) + if ((data & ETH_FLAG_LRO) && (netdev->features & NETIF_F_LRO)) return 0; if (data & ETH_FLAG_LRO) { diff --git a/drivers/net/qlcnic/qlcnic_hw.c b/drivers/net/qlcnic/qlcnic_hw.c index 9d3e16dbd04..7f1f9b4ca0f 100644 --- a/drivers/net/qlcnic/qlcnic_hw.c +++ b/drivers/net/qlcnic/qlcnic_hw.c @@ -582,9 +582,6 @@ int qlcnic_config_hw_lro(struct qlcnic_adapter *adapter, int enable) u64 word; int rv; - if ((adapter->flags & QLCNIC_LRO_ENABLED) == enable) - return 0; - memset(&req, 0, sizeof(struct qlcnic_nic_req)); req.qhdr = cpu_to_le64(QLCNIC_HOST_REQUEST << 23); @@ -599,8 +596,6 @@ int qlcnic_config_hw_lro(struct qlcnic_adapter *adapter, int enable) dev_err(&adapter->netdev->dev, "Could not send configure hw lro request\n"); - adapter->flags ^= QLCNIC_LRO_ENABLED; - return rv; } diff --git a/drivers/net/qlcnic/qlcnic_main.c b/drivers/net/qlcnic/qlcnic_main.c index 9b0acfb23e4..e3c1b80e00b 100644 --- a/drivers/net/qlcnic/qlcnic_main.c +++ b/drivers/net/qlcnic/qlcnic_main.c @@ -657,8 +657,6 @@ qlcnic_check_options(struct qlcnic_adapter *adapter) dev_info(&pdev->dev, "firmware v%d.%d.%d\n", fw_major, fw_minor, fw_build); - adapter->flags &= ~QLCNIC_LRO_ENABLED; - if (adapter->ahw.port_type == QLCNIC_XGBE) { adapter->num_rxd = DEFAULT_RCV_DESCRIPTORS_10G; adapter->num_jumbo_rxd = MAX_JUMBO_RCV_DESCRIPTORS_10G; |