drivers: net: xgene: fix: RSS for non-TCP/UDP
This patch fixes RSS feature, for non-TCP/UDP packets. Signed-off-by: Khuong Dinh <kdinh@apm.com> Signed-off-by: Iyappan Subramanian <isubramanian@apm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
350b4e33b8
Коммит
a809701fed
|
@ -485,11 +485,11 @@ static int xgene_enet_cle_init(struct xgene_enet_pdata *pdata)
|
|||
},
|
||||
{
|
||||
.valid = 0,
|
||||
.next_packet_pointer = 260,
|
||||
.next_packet_pointer = 26,
|
||||
.jump_bw = JMP_FW,
|
||||
.jump_rel = JMP_ABS,
|
||||
.operation = EQT,
|
||||
.next_node = LAST_NODE,
|
||||
.next_node = RSS_IPV4_OTHERS_NODE,
|
||||
.next_branch = 0,
|
||||
.data = 0x0,
|
||||
.mask = 0xffff
|
||||
|
@ -666,6 +666,92 @@ static int xgene_enet_cle_init(struct xgene_enet_pdata *pdata)
|
|||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
/* RSS_IPV4_OTHERS_NODE */
|
||||
.node_type = EWDN,
|
||||
.last_node = 0,
|
||||
.hdr_len_store = 1,
|
||||
.hdr_extn = NO_BYTE,
|
||||
.byte_store = NO_BYTE,
|
||||
.search_byte_store = BOTH_BYTES,
|
||||
.result_pointer = DB_RES_DROP,
|
||||
.num_branches = 6,
|
||||
.branch = {
|
||||
{
|
||||
/* SRC IPV4 B01 */
|
||||
.valid = 0,
|
||||
.next_packet_pointer = 28,
|
||||
.jump_bw = JMP_FW,
|
||||
.jump_rel = JMP_ABS,
|
||||
.operation = EQT,
|
||||
.next_node = RSS_IPV4_OTHERS_NODE,
|
||||
.next_branch = 1,
|
||||
.data = 0x0,
|
||||
.mask = 0xffff
|
||||
},
|
||||
{
|
||||
/* SRC IPV4 B23 */
|
||||
.valid = 0,
|
||||
.next_packet_pointer = 30,
|
||||
.jump_bw = JMP_FW,
|
||||
.jump_rel = JMP_ABS,
|
||||
.operation = EQT,
|
||||
.next_node = RSS_IPV4_OTHERS_NODE,
|
||||
.next_branch = 2,
|
||||
.data = 0x0,
|
||||
.mask = 0xffff
|
||||
},
|
||||
{
|
||||
/* DST IPV4 B01 */
|
||||
.valid = 0,
|
||||
.next_packet_pointer = 32,
|
||||
.jump_bw = JMP_FW,
|
||||
.jump_rel = JMP_ABS,
|
||||
.operation = EQT,
|
||||
.next_node = RSS_IPV4_OTHERS_NODE,
|
||||
.next_branch = 3,
|
||||
.data = 0x0,
|
||||
.mask = 0xffff
|
||||
},
|
||||
{
|
||||
/* DST IPV4 B23 */
|
||||
.valid = 0,
|
||||
.next_packet_pointer = 34,
|
||||
.jump_bw = JMP_FW,
|
||||
.jump_rel = JMP_ABS,
|
||||
.operation = EQT,
|
||||
.next_node = RSS_IPV4_OTHERS_NODE,
|
||||
.next_branch = 4,
|
||||
.data = 0x0,
|
||||
.mask = 0xffff
|
||||
},
|
||||
{
|
||||
/* TCP SRC Port */
|
||||
.valid = 0,
|
||||
.next_packet_pointer = 36,
|
||||
.jump_bw = JMP_FW,
|
||||
.jump_rel = JMP_ABS,
|
||||
.operation = EQT,
|
||||
.next_node = RSS_IPV4_OTHERS_NODE,
|
||||
.next_branch = 5,
|
||||
.data = 0x0,
|
||||
.mask = 0xffff
|
||||
},
|
||||
{
|
||||
/* TCP DST Port */
|
||||
.valid = 0,
|
||||
.next_packet_pointer = 260,
|
||||
.jump_bw = JMP_FW,
|
||||
.jump_rel = JMP_ABS,
|
||||
.operation = EQT,
|
||||
.next_node = LAST_NODE,
|
||||
.next_branch = 0,
|
||||
.data = 0x0,
|
||||
.mask = 0xffff
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
/* LAST NODE */
|
||||
.node_type = EWDN,
|
||||
|
|
|
@ -106,6 +106,7 @@ enum xgene_cle_ptree_nodes {
|
|||
PKT_PROT_NODE,
|
||||
RSS_IPV4_TCP_NODE,
|
||||
RSS_IPV4_UDP_NODE,
|
||||
RSS_IPV4_OTHERS_NODE,
|
||||
LAST_NODE,
|
||||
MAX_NODES
|
||||
};
|
||||
|
|
Загрузка…
Ссылка в новой задаче