diff options
author | Casey Leedom <leedom@chelsio.com> | 2010-06-25 08:09:38 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-06-29 02:58:54 -0400 |
commit | 1704d74894912b8ecc3e95cecd7bde336a0b1bf2 (patch) | |
tree | 4081867356b4afa7825eefd5f014342803e5166a /drivers/net/cxgb4 | |
parent | a71e8329170ece5f684aa363dfa69828cbfd5184 (diff) |
cxgb4vf: small changes to message processing structures/macros
Split cpl_tx_pkt_lso into core message structure and encapsulated message,
make RSPD_LEN macro match other response descriptor macros.
Signed-off-by: Casey Leedom
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/cxgb4')
-rw-r--r-- | drivers/net/cxgb4/sge.c | 4 | ||||
-rw-r--r-- | drivers/net/cxgb4/t4_hw.h | 4 | ||||
-rw-r--r-- | drivers/net/cxgb4/t4_msg.h | 14 |
3 files changed, 17 insertions, 5 deletions
diff --git a/drivers/net/cxgb4/sge.c b/drivers/net/cxgb4/sge.c index d1f8f225e45a..4388f72d586a 100644 --- a/drivers/net/cxgb4/sge.c +++ b/drivers/net/cxgb4/sge.c | |||
@@ -931,7 +931,7 @@ out_free: dev_kfree_skb(skb); | |||
931 | 931 | ||
932 | ssi = skb_shinfo(skb); | 932 | ssi = skb_shinfo(skb); |
933 | if (ssi->gso_size) { | 933 | if (ssi->gso_size) { |
934 | struct cpl_tx_pkt_lso *lso = (void *)wr; | 934 | struct cpl_tx_pkt_lso_core *lso = (void *)(wr + 1); |
935 | bool v6 = (ssi->gso_type & SKB_GSO_TCPV6) != 0; | 935 | bool v6 = (ssi->gso_type & SKB_GSO_TCPV6) != 0; |
936 | int l3hdr_len = skb_network_header_len(skb); | 936 | int l3hdr_len = skb_network_header_len(skb); |
937 | int eth_xtra_len = skb_network_offset(skb) - ETH_HLEN; | 937 | int eth_xtra_len = skb_network_offset(skb) - ETH_HLEN; |
@@ -1718,7 +1718,7 @@ static int process_responses(struct sge_rspq *q, int budget) | |||
1718 | free_rx_bufs(q->adap, &rxq->fl, 1); | 1718 | free_rx_bufs(q->adap, &rxq->fl, 1); |
1719 | q->offset = 0; | 1719 | q->offset = 0; |
1720 | } | 1720 | } |
1721 | len &= RSPD_LEN; | 1721 | len = RSPD_LEN(len); |
1722 | } | 1722 | } |
1723 | si.tot_len = len; | 1723 | si.tot_len = len; |
1724 | 1724 | ||
diff --git a/drivers/net/cxgb4/t4_hw.h b/drivers/net/cxgb4/t4_hw.h index f886677b93ec..98c02bedc02d 100644 --- a/drivers/net/cxgb4/t4_hw.h +++ b/drivers/net/cxgb4/t4_hw.h | |||
@@ -88,11 +88,13 @@ struct rsp_ctrl { | |||
88 | }; | 88 | }; |
89 | 89 | ||
90 | #define RSPD_NEWBUF 0x80000000U | 90 | #define RSPD_NEWBUF 0x80000000U |
91 | #define RSPD_LEN 0x7fffffffU | 91 | #define RSPD_LEN(x) (((x) >> 0) & 0x7fffffffU) |
92 | #define RSPD_QID(x) RSPD_LEN(x) | ||
92 | 93 | ||
93 | #define RSPD_GEN(x) ((x) >> 7) | 94 | #define RSPD_GEN(x) ((x) >> 7) |
94 | #define RSPD_TYPE(x) (((x) >> 4) & 3) | 95 | #define RSPD_TYPE(x) (((x) >> 4) & 3) |
95 | 96 | ||
96 | #define QINTR_CNT_EN 0x1 | 97 | #define QINTR_CNT_EN 0x1 |
97 | #define QINTR_TIMER_IDX(x) ((x) << 1) | 98 | #define QINTR_TIMER_IDX(x) ((x) << 1) |
99 | #define QINTR_TIMER_IDX_GET(x) (((x) << 1) & 0x7) | ||
98 | #endif /* __T4_HW_H */ | 100 | #endif /* __T4_HW_H */ |
diff --git a/drivers/net/cxgb4/t4_msg.h b/drivers/net/cxgb4/t4_msg.h index 7a981b81afaf..623932b39b5d 100644 --- a/drivers/net/cxgb4/t4_msg.h +++ b/drivers/net/cxgb4/t4_msg.h | |||
@@ -443,8 +443,7 @@ struct cpl_tx_pkt { | |||
443 | 443 | ||
444 | #define cpl_tx_pkt_xt cpl_tx_pkt | 444 | #define cpl_tx_pkt_xt cpl_tx_pkt |
445 | 445 | ||
446 | struct cpl_tx_pkt_lso { | 446 | struct cpl_tx_pkt_lso_core { |
447 | WR_HDR; | ||
448 | __be32 lso_ctrl; | 447 | __be32 lso_ctrl; |
449 | #define LSO_TCPHDR_LEN(x) ((x) << 0) | 448 | #define LSO_TCPHDR_LEN(x) ((x) << 0) |
450 | #define LSO_IPHDR_LEN(x) ((x) << 4) | 449 | #define LSO_IPHDR_LEN(x) ((x) << 4) |
@@ -460,6 +459,12 @@ struct cpl_tx_pkt_lso { | |||
460 | /* encapsulated CPL (TX_PKT, TX_PKT_XT or TX_DATA) follows here */ | 459 | /* encapsulated CPL (TX_PKT, TX_PKT_XT or TX_DATA) follows here */ |
461 | }; | 460 | }; |
462 | 461 | ||
462 | struct cpl_tx_pkt_lso { | ||
463 | WR_HDR; | ||
464 | struct cpl_tx_pkt_lso_core c; | ||
465 | /* encapsulated CPL (TX_PKT, TX_PKT_XT or TX_DATA) follows here */ | ||
466 | }; | ||
467 | |||
463 | struct cpl_iscsi_hdr { | 468 | struct cpl_iscsi_hdr { |
464 | union opcode_tid ot; | 469 | union opcode_tid ot; |
465 | __be16 pdu_len_ddp; | 470 | __be16 pdu_len_ddp; |
@@ -623,6 +628,11 @@ struct cpl_fw6_msg { | |||
623 | __be64 data[4]; | 628 | __be64 data[4]; |
624 | }; | 629 | }; |
625 | 630 | ||
631 | /* cpl_fw6_msg.type values */ | ||
632 | enum { | ||
633 | FW6_TYPE_CMD_RPL = 0, | ||
634 | }; | ||
635 | |||
626 | enum { | 636 | enum { |
627 | ULP_TX_MEM_READ = 2, | 637 | ULP_TX_MEM_READ = 2, |
628 | ULP_TX_MEM_WRITE = 3, | 638 | ULP_TX_MEM_WRITE = 3, |