diff options
author | Amit Kumar Salecha <amit.salecha@qlogic.com> | 2010-10-08 01:46:07 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-10-08 22:59:09 +0200 |
commit | a2152d096e0cd8593e883f72e875195ea0e89bb7 (patch) | |
tree | 218bfa4fcf6accd3b62c2972ecd7127de07b3de6 /drivers/net/qlcnic | |
parent | qlcnic: support quiescent mode (diff) | |
download | linux-a2152d096e0cd8593e883f72e875195ea0e89bb7.tar.xz linux-a2152d096e0cd8593e883f72e875195ea0e89bb7.zip |
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>
Diffstat (limited to 'drivers/net/qlcnic')
-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 018130193b5b..e07adb1dec4f 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 9d3e16dbd043..7f1f9b4ca0ff 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 9b0acfb23e4c..e3c1b80e00b1 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; |