diff options
author | Amit Kumar Salecha <amit.salecha@qlogic.com> | 2010-08-31 13:17:53 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-09-01 13:41:58 -0400 |
commit | d807b3f728518d218fb2fe54c1227bc6d6f93efd (patch) | |
tree | 551b6b0d4e8bffc04b5ff5728d474ba75953dc8f /drivers/net/qlcnic | |
parent | 03c5d770c24cd673d105fbf1a9706ae838272091 (diff) |
qlcnic: add cksum flag
o New CKSUM flag added by fw to notify cksum is verified.
o Update version to 5.0.9
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.h | 7 | ||||
-rw-r--r-- | drivers/net/qlcnic/qlcnic_init.c | 3 |
2 files changed, 6 insertions, 4 deletions
diff --git a/drivers/net/qlcnic/qlcnic.h b/drivers/net/qlcnic/qlcnic.h index 9d211529fa16..cc8385a6727e 100644 --- a/drivers/net/qlcnic/qlcnic.h +++ b/drivers/net/qlcnic/qlcnic.h | |||
@@ -51,8 +51,8 @@ | |||
51 | 51 | ||
52 | #define _QLCNIC_LINUX_MAJOR 5 | 52 | #define _QLCNIC_LINUX_MAJOR 5 |
53 | #define _QLCNIC_LINUX_MINOR 0 | 53 | #define _QLCNIC_LINUX_MINOR 0 |
54 | #define _QLCNIC_LINUX_SUBVERSION 8 | 54 | #define _QLCNIC_LINUX_SUBVERSION 9 |
55 | #define QLCNIC_LINUX_VERSIONID "5.0.8" | 55 | #define QLCNIC_LINUX_VERSIONID "5.0.9" |
56 | #define QLCNIC_DRV_IDC_VER 0x01 | 56 | #define QLCNIC_DRV_IDC_VER 0x01 |
57 | #define QLCNIC_DRIVER_VERSION ((_QLCNIC_LINUX_MAJOR << 16) |\ | 57 | #define QLCNIC_DRIVER_VERSION ((_QLCNIC_LINUX_MAJOR << 16) |\ |
58 | (_QLCNIC_LINUX_MINOR << 8) | (_QLCNIC_LINUX_SUBVERSION)) | 58 | (_QLCNIC_LINUX_MINOR << 8) | (_QLCNIC_LINUX_SUBVERSION)) |
@@ -224,7 +224,8 @@ struct rcv_desc { | |||
224 | #define QLCNIC_LRO_DESC 0x12 | 224 | #define QLCNIC_LRO_DESC 0x12 |
225 | 225 | ||
226 | /* for status field in status_desc */ | 226 | /* for status field in status_desc */ |
227 | #define STATUS_CKSUM_OK (2) | 227 | #define STATUS_CKSUM_LOOP 0 |
228 | #define STATUS_CKSUM_OK 2 | ||
228 | 229 | ||
229 | /* owner bits of status_desc */ | 230 | /* owner bits of status_desc */ |
230 | #define STATUS_OWNER_HOST (0x1ULL << 56) | 231 | #define STATUS_OWNER_HOST (0x1ULL << 56) |
diff --git a/drivers/net/qlcnic/qlcnic_init.c b/drivers/net/qlcnic/qlcnic_init.c index 8e0e7a3bbf9e..8e47d7aea562 100644 --- a/drivers/net/qlcnic/qlcnic_init.c +++ b/drivers/net/qlcnic/qlcnic_init.c | |||
@@ -1364,7 +1364,8 @@ static struct sk_buff *qlcnic_process_rxbuf(struct qlcnic_adapter *adapter, | |||
1364 | 1364 | ||
1365 | skb = buffer->skb; | 1365 | skb = buffer->skb; |
1366 | 1366 | ||
1367 | if (likely(adapter->rx_csum && cksum == STATUS_CKSUM_OK)) { | 1367 | if (likely(adapter->rx_csum && (cksum == STATUS_CKSUM_OK || |
1368 | cksum == STATUS_CKSUM_LOOP))) { | ||
1368 | adapter->stats.csummed++; | 1369 | adapter->stats.csummed++; |
1369 | skb->ip_summed = CHECKSUM_UNNECESSARY; | 1370 | skb->ip_summed = CHECKSUM_UNNECESSARY; |
1370 | } else { | 1371 | } else { |