fixes and enhancements to Truflow
cover fixes and enhancements to Truflow
This patch set adds enhancements and fixes to Truflow feature.
Enhancements include:
* Scaling numbers on Thor
* Inner IP header support for GRE tunnel flows
* Enable wildcard match for ingress flows
* Add clear on read for flow stats on Thor
* Add nat support for dest IP and port combination
Farah Smith (1):
net/bnxt: add clear on read stats support for Thor
Jay Ding (1):
net/bnxt: get Truflow version
Kishore Padmanabha (6):
net/bnxt: add nat support for dest IP and port combination net/bnxt: support multi root capability flag net/bnxt: fix the out of boundary issue in hash list net/bnxt: add feature capability option for socket direct net/bnxt: enable wildcard match for ingress flows net/bnxt: support inner IP header for GRE tunnel flows
Shahaji Bhosle (1):
net/bnxt: increase scaling numbers on Thor
drivers/net/bnxt/bnxt.h | 27 +- drivers/net/bnxt/bnxt_cpr.c | 2 +- drivers/net/bnxt/bnxt_ethdev.c | 221 +- drivers/net/bnxt/bnxt_hwrm.c | 8 + drivers/net/bnxt/bnxt_reps.c | 3 +- drivers/net/bnxt/hsi_struct_def_dpdk.h | 2979 ++++++++++++++--- drivers/net/bnxt/tf_core/tf_core.c | 30 + drivers/net/bnxt/tf_core/tf_core.h | 75 + drivers/net/bnxt/tf_core/tf_device.h | 50 + drivers/net/bnxt/tf_core/tf_device_p4.c | 65 +- drivers/net/bnxt/tf_core/tf_device_p4.h | 79 + drivers/net/bnxt/tf_core/tf_device_p58.c | 65 +- drivers/net/bnxt/tf_core/tf_device_p58.h | 87 + drivers/net/bnxt/tf_core/tf_msg.c | 59 +- drivers/net/bnxt/tf_core/tf_msg.h | 25 +- drivers/net/bnxt/tf_core/tf_tbl.c | 6 +- drivers/net/bnxt/tf_core/tf_tbl_sram.c | 13 +- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 24 +- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 8 +- drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c | 10 +- .../generic_templates/ulp_template_db_act.c | 376 ++- .../generic_templates/ulp_template_db_enum.h | 26 +- .../generic_templates/ulp_template_db_tbl.c | 23 +- .../ulp_template_db_thor_class.c | 251 +- .../ulp_template_db_wh_plus_act.c | 96 +- drivers/net/bnxt/tf_ulp/ulp_def_rules.c | 6 +- drivers/net/bnxt/tf_ulp/ulp_gen_hash.c | 20 +- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 7 +- drivers/net/bnxt/tf_ulp/ulp_template_struct.h | 2 +- 29 files changed, 3627 insertions(+), 1016 deletions(-)
Signature · 1 line
2.17.1
PATCH 1/9 net/bnxt: add nat support for dest IP and port combination
From: Kishore Padmanabha <[email protected]>
* Added support for nat action for the destination ip and port combination for the thor platform. This is not supported for whitney platform.
* Consolidated the encapsulation and nat entries for scaling flows with nat actions.
--- .../generic_templates/ulp_template_db_act.c | 376 +++++++++++------- .../generic_templates/ulp_template_db_enum.h | 18 +- .../generic_templates/ulp_template_db_tbl.c | 14 +- .../ulp_template_db_thor_class.c | 2 +- .../ulp_template_db_wh_plus_act.c | 96 +++-- 5 files changed, 317 insertions(+), 189 deletions(-)
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_act.c +236 -140
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Mon May 17 15:30:41 2021 */ +/* date: Wed Aug 25 14:37:06 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -47,59 +47,67 @@ uint16_t ulp_act_sig_tbl[BNXT_ULP_ACT_SIG_TBL_MAX_SZ] = { [BNXT_ULP_ACT_HID_04bc] = 30, [BNXT_ULP_ACT_HID_00a9] = 31, [BNXT_ULP_ACT_HID_020f] = 32, - [BNXT_ULP_ACT_HID_04a9] = 33, - [BNXT_ULP_ACT_HID_01fc] = 34, - [BNXT_ULP_ACT_HID_04be] = 35, - [BNXT_ULP_ACT_HID_00ab] = 36, - [BNXT_ULP_ACT_HID_0211] = 37, - [BNXT_ULP_ACT_HID_04ab] = 38, - [BNXT_ULP_ACT_HID_01fe] = 39, - [BNXT_ULP_ACT_HID_0667] = 40, - [BNXT_ULP_ACT_HID_0254] = 41, - [BNXT_ULP_ACT_HID_03ba] = 42, - [BNXT_ULP_ACT_HID_0654] = 43, - [BNXT_ULP_ACT_HID_03a7] = 44, - [BNXT_ULP_ACT_HID_0669] = 45, - [BNXT_ULP_ACT_HID_0256] = 46, - [BNXT_ULP_ACT_HID_03bc] = 47, - [BNXT_ULP_ACT_HID_0656] = 48, - [BNXT_ULP_ACT_HID_03a9] = 49, - [BNXT_ULP_ACT_HID_021b] = 50, - [BNXT_ULP_ACT_HID_021c] = 51, - [BNXT_ULP_ACT_HID_021e] = 52, - [BNXT_ULP_ACT_HID_063f] = 53, - [BNXT_ULP_ACT_HID_0510] = 54, - [BNXT_ULP_ACT_HID_03c6] = 55, - [BNXT_ULP_ACT_HID_0082] = 56, - [BNXT_ULP_ACT_HID_06bb] = 57, - [BNXT_ULP_ACT_HID_021d] = 58, - [BNXT_ULP_ACT_HID_0641] = 59, - [BNXT_ULP_ACT_HID_0512] = 60, - [BNXT_ULP_ACT_HID_03c8] = 61, - [BNXT_ULP_ACT_HID_0084] = 62, - [BNXT_ULP_ACT_HID_06bd] = 63, - [BNXT_ULP_ACT_HID_06d7] = 64, - [BNXT_ULP_ACT_HID_02c4] = 65, - [BNXT_ULP_ACT_HID_042a] = 66, - [BNXT_ULP_ACT_HID_06c4] = 67, - [BNXT_ULP_ACT_HID_0417] = 68, - [BNXT_ULP_ACT_HID_06d9] = 69, - [BNXT_ULP_ACT_HID_02c6] = 70, - [BNXT_ULP_ACT_HID_042c] = 71, - [BNXT_ULP_ACT_HID_06c6] = 72, - [BNXT_ULP_ACT_HID_0419] = 73, - [BNXT_ULP_ACT_HID_0119] = 74, - [BNXT_ULP_ACT_HID_046f] = 75, - [BNXT_ULP_ACT_HID_05d5] = 76, - [BNXT_ULP_ACT_HID_0106] = 77, - [BNXT_ULP_ACT_HID_05c2] = 78, - [BNXT_ULP_ACT_HID_011b] = 79, - [BNXT_ULP_ACT_HID_0471] = 80, - [BNXT_ULP_ACT_HID_05d7] = 81, - [BNXT_ULP_ACT_HID_0108] = 82, - [BNXT_ULP_ACT_HID_05c4] = 83, - [BNXT_ULP_ACT_HID_00a2] = 84, - [BNXT_ULP_ACT_HID_00a4] = 85 + [BNXT_ULP_ACT_HID_0153] = 33, + [BNXT_ULP_ACT_HID_04a9] = 34, + [BNXT_ULP_ACT_HID_01fc] = 35, + [BNXT_ULP_ACT_HID_04be] = 36, + [BNXT_ULP_ACT_HID_00ab] = 37, + [BNXT_ULP_ACT_HID_0211] = 38, + [BNXT_ULP_ACT_HID_0155] = 39, + [BNXT_ULP_ACT_HID_04ab] = 40, + [BNXT_ULP_ACT_HID_01fe] = 41, + [BNXT_ULP_ACT_HID_0667] = 42, + [BNXT_ULP_ACT_HID_0254] = 43, + [BNXT_ULP_ACT_HID_03ba] = 44, + [BNXT_ULP_ACT_HID_02fe] = 45, + [BNXT_ULP_ACT_HID_0654] = 46, + [BNXT_ULP_ACT_HID_03a7] = 47, + [BNXT_ULP_ACT_HID_0669] = 48, + [BNXT_ULP_ACT_HID_0256] = 49, + [BNXT_ULP_ACT_HID_03bc] = 50, + [BNXT_ULP_ACT_HID_0300] = 51, + [BNXT_ULP_ACT_HID_0656] = 52, + [BNXT_ULP_ACT_HID_03a9] = 53, + [BNXT_ULP_ACT_HID_021b] = 54, + [BNXT_ULP_ACT_HID_021c] = 55, + [BNXT_ULP_ACT_HID_021e] = 56, + [BNXT_ULP_ACT_HID_063f] = 57, + [BNXT_ULP_ACT_HID_0510] = 58, + [BNXT_ULP_ACT_HID_03c6] = 59, + [BNXT_ULP_ACT_HID_0082] = 60, + [BNXT_ULP_ACT_HID_06bb] = 61, + [BNXT_ULP_ACT_HID_021d] = 62, + [BNXT_ULP_ACT_HID_0641] = 63, + [BNXT_ULP_ACT_HID_0512] = 64, + [BNXT_ULP_ACT_HID_03c8] = 65, + [BNXT_ULP_ACT_HID_0084] = 66, + [BNXT_ULP_ACT_HID_06bd] = 67, + [BNXT_ULP_ACT_HID_06d7] = 68, + [BNXT_ULP_ACT_HID_02c4] = 69, + [BNXT_ULP_ACT_HID_042a] = 70, + [BNXT_ULP_ACT_HID_036e] = 71, + [BNXT_ULP_ACT_HID_06c4] = 72, + [BNXT_ULP_ACT_HID_0417] = 73, + [BNXT_ULP_ACT_HID_06d9] = 74, + [BNXT_ULP_ACT_HID_02c6] = 75, + [BNXT_ULP_ACT_HID_042c] = 76, + [BNXT_ULP_ACT_HID_0370] = 77, + [BNXT_ULP_ACT_HID_06c6] = 78, + [BNXT_ULP_ACT_HID_0419] = 79, + [BNXT_ULP_ACT_HID_0119] = 80, + [BNXT_ULP_ACT_HID_046f] = 81, + [BNXT_ULP_ACT_HID_05d5] = 82, + [BNXT_ULP_ACT_HID_0519] = 83, + [BNXT_ULP_ACT_HID_0106] = 84, + [BNXT_ULP_ACT_HID_05c2] = 85, + [BNXT_ULP_ACT_HID_011b] = 86, + [BNXT_ULP_ACT_HID_0471] = 87, + [BNXT_ULP_ACT_HID_05d7] = 88, + [BNXT_ULP_ACT_HID_051b] = 89, + [BNXT_ULP_ACT_HID_0108] = 90, + [BNXT_ULP_ACT_HID_05c4] = 91, + [BNXT_ULP_ACT_HID_00a2] = 92, + [BNXT_ULP_ACT_HID_00a4] = 93 };/* Array for the act matcher list */
@@ -429,22 +437,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { .act_tid = 3 }, [33] = { - .act_hid = BNXT_ULP_ACT_HID_04a9, + .act_hid = BNXT_ULP_ACT_HID_0153, .act_pattern_id = 3, .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_SET_IPV4_DST | -BNXT_ULP_ACT_BIT_SET_TP_SRC |BNXT_ULP_ACT_BIT_SET_TP_DST | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, [34] = { - .act_hid = BNXT_ULP_ACT_HID_01fc, + .act_hid = BNXT_ULP_ACT_HID_04a9, .act_pattern_id = 4, .app_sig = 0, .act_sig = { .bits = -BNXT_ULP_ACT_BIT_SET_IPV4_SRC |BNXT_ULP_ACT_BIT_SET_IPV4_DST |BNXT_ULP_ACT_BIT_SET_TP_SRC | BNXT_ULP_ACT_BIT_SET_TP_DST |
@@ -452,40 +458,63 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { .act_tid = 3 }, [35] = { - .act_hid = BNXT_ULP_ACT_HID_04be, + .act_hid = BNXT_ULP_ACT_HID_01fc, .act_pattern_id = 5, .app_sig = 0, .act_sig = { .bits = -BNXT_ULP_ACT_BIT_COUNT |BNXT_ULP_ACT_BIT_SET_IPV4_SRC | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_SRC | +BNXT_ULP_ACT_BIT_SET_TP_DST | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, [36] = { - .act_hid = BNXT_ULP_ACT_HID_00ab, + .act_hid = BNXT_ULP_ACT_HID_04be, .act_pattern_id = 6, .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_COUNT |BNXT_ULP_ACT_BIT_SET_IPV4_SRC | -BNXT_ULP_ACT_BIT_SET_TP_SRC | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, [37] = { - .act_hid = BNXT_ULP_ACT_HID_0211, + .act_hid = BNXT_ULP_ACT_HID_00ab, .act_pattern_id = 7, .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_COUNT | -BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_IPV4_SRC | +BNXT_ULP_ACT_BIT_SET_TP_SRC | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, [38] = { - .act_hid = BNXT_ULP_ACT_HID_04ab, + .act_hid = BNXT_ULP_ACT_HID_0211, .act_pattern_id = 8, .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid =3 + }, + [39] = { + .act_hid = BNXT_ULP_ACT_HID_0155, + .act_pattern_id = 9, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid =3 + }, + [40] = { + .act_hid = BNXT_ULP_ACT_HID_04ab, + .act_pattern_id = 10, + .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_COUNT | BNXT_ULP_ACT_BIT_SET_IPV4_DST |
@@ -494,9 +523,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [39] = { + [41] = { .act_hid = BNXT_ULP_ACT_HID_01fe, - .act_pattern_id = 9, + .act_pattern_id = 11, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -507,9 +536,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [40] = { + [42] = { .act_hid = BNXT_ULP_ACT_HID_0667, - .act_pattern_id = 10, + .act_pattern_id = 12, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -517,9 +546,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [41] = { + [43] = { .act_hid = BNXT_ULP_ACT_HID_0254, - .act_pattern_id = 11, + .act_pattern_id = 13, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -528,9 +557,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [42] = { + [44] = { .act_hid = BNXT_ULP_ACT_HID_03ba, - .act_pattern_id = 12, + .act_pattern_id = 14, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -538,9 +567,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [43] = { + [45] = { + .act_hid = BNXT_ULP_ACT_HID_02fe, + .act_pattern_id = 15, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_DEC_TTL | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid =3 + }, + [46] = { .act_hid = BNXT_ULP_ACT_HID_0654, - .act_pattern_id = 13, + .act_pattern_id = 16, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -550,9 +590,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [44] = { + [47] = { .act_hid = BNXT_ULP_ACT_HID_03a7, - .act_pattern_id = 14, + .act_pattern_id = 17, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -563,9 +603,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [45] = { + [48] = { .act_hid = BNXT_ULP_ACT_HID_0669, - .act_pattern_id = 15, + .act_pattern_id = 18, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -574,9 +614,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [46] = { + [49] = { .act_hid = BNXT_ULP_ACT_HID_0256, - .act_pattern_id = 16, + .act_pattern_id = 19, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -586,9 +626,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [47] = { + [50] = { .act_hid = BNXT_ULP_ACT_HID_03bc, - .act_pattern_id = 17, + .act_pattern_id = 20, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -597,9 +637,21 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [48] = { + [51] = { + .act_hid = BNXT_ULP_ACT_HID_0300, + .act_pattern_id = 21, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_DEC_TTL | +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid =3 + }, + [52] = { .act_hid = BNXT_ULP_ACT_HID_0656, - .act_pattern_id = 18, + .act_pattern_id = 22, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -610,9 +662,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [49] = { + [53] = { .act_hid = BNXT_ULP_ACT_HID_03a9, - .act_pattern_id = 19, + .act_pattern_id = 23, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -624,7 +676,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [50] = { + [54] = { .act_hid = BNXT_ULP_ACT_HID_021b, .act_pattern_id = 0, .app_sig = 0,
@@ -632,7 +684,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [51] = { + [55] = { .act_hid = BNXT_ULP_ACT_HID_021c, .act_pattern_id = 1, .app_sig = 0,
@@ -641,7 +693,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [52] = { + [56] = { .act_hid = BNXT_ULP_ACT_HID_021e, .act_pattern_id = 2, .app_sig = 0,
@@ -651,7 +703,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [53] = { + [57] = { .act_hid = BNXT_ULP_ACT_HID_063f, .act_pattern_id = 3, .app_sig = 0,
@@ -662,7 +714,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [54] = { + [58] = { .act_hid = BNXT_ULP_ACT_HID_0510, .act_pattern_id = 4, .app_sig = 0,
@@ -672,7 +724,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [55] = { + [59] = { .act_hid = BNXT_ULP_ACT_HID_03c6, .act_pattern_id = 5, .app_sig = 0,
@@ -681,7 +733,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [56] = { + [60] = { .act_hid = BNXT_ULP_ACT_HID_0082, .act_pattern_id = 6, .app_sig = 0,
@@ -693,7 +745,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [57] = { + [61] = { .act_hid = BNXT_ULP_ACT_HID_06bb, .act_pattern_id = 7, .app_sig = 0,
@@ -704,7 +756,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [58] = { + [62] = { .act_hid = BNXT_ULP_ACT_HID_021d, .act_pattern_id = 8, .app_sig = 0,
@@ -713,7 +765,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [59] = { + [63] = { .act_hid = BNXT_ULP_ACT_HID_0641, .act_pattern_id = 9, .app_sig = 0,
@@ -725,7 +777,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [60] = { + [64] = { .act_hid = BNXT_ULP_ACT_HID_0512, .act_pattern_id = 10, .app_sig = 0,
@@ -736,7 +788,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [61] = { + [65] = { .act_hid = BNXT_ULP_ACT_HID_03c8, .act_pattern_id = 11, .app_sig = 0,
@@ -746,7 +798,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [62] = { + [66] = { .act_hid = BNXT_ULP_ACT_HID_0084, .act_pattern_id = 12, .app_sig = 0,
@@ -759,7 +811,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [63] = { + [67] = { .act_hid = BNXT_ULP_ACT_HID_06bd, .act_pattern_id = 13, .app_sig = 0,
@@ -771,7 +823,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [64] = { + [68] = { .act_hid = BNXT_ULP_ACT_HID_06d7, .act_pattern_id = 0, .app_sig = 0,
@@ -780,7 +832,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [65] = { + [69] = { .act_hid = BNXT_ULP_ACT_HID_02c4, .act_pattern_id = 1, .app_sig = 0,
@@ -790,7 +842,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [66] = { + [70] = { .act_hid = BNXT_ULP_ACT_HID_042a, .act_pattern_id = 2, .app_sig = 0,
@@ -799,10 +851,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [67] = { - .act_hid = BNXT_ULP_ACT_HID_06c4, + [71] = { + .act_hid = BNXT_ULP_ACT_HID_036e, .act_pattern_id = 3, .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid =5 + }, + [72] = { + .act_hid = BNXT_ULP_ACT_HID_06c4, + .act_pattern_id = 4, + .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_SET_IPV4_DST | BNXT_ULP_ACT_BIT_SET_TP_SRC |
@@ -810,9 +872,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [68] = { + [73] = { .act_hid = BNXT_ULP_ACT_HID_0417, - .act_pattern_id = 4, + .act_pattern_id = 5, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@@ -822,9 +884,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [69] = { + [74] = { .act_hid = BNXT_ULP_ACT_HID_06d9, - .act_pattern_id = 5, + .act_pattern_id = 6, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -832,9 +894,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [70] = { + [75] = { .act_hid = BNXT_ULP_ACT_HID_02c6, - .act_pattern_id = 6, + .act_pattern_id = 7, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -843,9 +905,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [71] = { + [76] = { .act_hid = BNXT_ULP_ACT_HID_042c, - .act_pattern_id = 7, + .act_pattern_id = 8, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -853,9 +915,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [72] = { + [77] = { + .act_hid = BNXT_ULP_ACT_HID_0370, + .act_pattern_id = 9, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid =5 + }, + [78] = { .act_hid = BNXT_ULP_ACT_HID_06c6, - .act_pattern_id = 8, + .act_pattern_id = 10, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -865,9 +938,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [73] = { + [79] = { .act_hid = BNXT_ULP_ACT_HID_0419, - .act_pattern_id = 9, + .act_pattern_id = 11, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -878,9 +951,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [74] = { + [80] = { .act_hid = BNXT_ULP_ACT_HID_0119, - .act_pattern_id = 10, + .act_pattern_id = 12, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -888,9 +961,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [75] = { + [81] = { .act_hid = BNXT_ULP_ACT_HID_046f, - .act_pattern_id = 11, + .act_pattern_id = 13, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -899,9 +972,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [76] = { + [82] = { .act_hid = BNXT_ULP_ACT_HID_05d5, - .act_pattern_id = 12, + .act_pattern_id = 14, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -909,9 +982,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [77] = { + [83] = { + .act_hid = BNXT_ULP_ACT_HID_0519, + .act_pattern_id = 15, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_DEC_TTL | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid =5 + }, + [84] = { .act_hid = BNXT_ULP_ACT_HID_0106, - .act_pattern_id = 13, + .act_pattern_id = 16, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -921,9 +1005,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [78] = { + [85] = { .act_hid = BNXT_ULP_ACT_HID_05c2, - .act_pattern_id = 14, + .act_pattern_id = 17, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -934,9 +1018,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [79] = { + [86] = { .act_hid = BNXT_ULP_ACT_HID_011b, - .act_pattern_id = 15, + .act_pattern_id = 18, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -945,9 +1029,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [80] = { + [87] = { .act_hid = BNXT_ULP_ACT_HID_0471, - .act_pattern_id = 16, + .act_pattern_id = 19, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -957,9 +1041,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [81] = { + [88] = { .act_hid = BNXT_ULP_ACT_HID_05d7, - .act_pattern_id = 17, + .act_pattern_id = 20, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -968,9 +1052,21 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [82] = { + [89] = { + .act_hid = BNXT_ULP_ACT_HID_051b, + .act_pattern_id = 21, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_DEC_TTL | +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid =5 + }, + [90] = { .act_hid = BNXT_ULP_ACT_HID_0108, - .act_pattern_id = 18, + .act_pattern_id = 22, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -981,9 +1077,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [83] = { + [91] = { .act_hid = BNXT_ULP_ACT_HID_05c4, - .act_pattern_id = 19, + .act_pattern_id = 23, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -995,7 +1091,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [84] = { + [92] = { .act_hid = BNXT_ULP_ACT_HID_00a2, .act_pattern_id = 0, .app_sig = 0,
@@ -1004,7 +1100,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =6 }, - [85] = { + [93] = { .act_hid = BNXT_ULP_ACT_HID_00a4, .act_pattern_id = 1, .app_sig = 0,
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +13 -5
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Fri Aug 20 17:59:14 2021 */ +/* date: Thu Aug 26 17:43:36 2021 */ #ifndef ULP_TEMPLATE_DB_H_ #define ULP_TEMPLATE_DB_H_
@@ -20,7 +20,7 @@#define BNXT_ULP_CLASS_HID_SHFTL 28#define BNXT_ULP_CLASS_HID_MASK 65535#define BNXT_ULP_ACT_SIG_TBL_MAX_SZ 2048 -#define BNXT_ULP_ACT_MATCH_LIST_MAX_SZ 86 +#define BNXT_ULP_ACT_MATCH_LIST_MAX_SZ 94#define BNXT_ULP_ACT_HID_LOW_PRIME 7919#define BNXT_ULP_ACT_HID_HIGH_PRIME 3793#define BNXT_ULP_ACT_HID_SHFTR 27
@@ -29,7 +29,7 @@#define BNXT_ULP_APP_RESOURCE_RESV_LIST_MAX_SZ 8#define BNXT_ULP_GLB_RESOURCE_TBL_MAX_SZ 110#define BNXT_ULP_APP_GLB_RESOURCE_TBL_MAX_SZ 50 -#define BNXT_ULP_RESOURCE_RESV_LIST_MAX_SZ 278 +#define BNXT_ULP_RESOURCE_RESV_LIST_MAX_SZ 277#define BNXT_ULP_APP_CAP_TBL_MAX_SZ 8#define BNXT_ULP_COND_GOTO_REJECT 1023#define BNXT_ULP_COND_GOTO_RF 0x10000
@@ -50,11 +50,11 @@#define ULP_THOR_CLASS_RESULT_FIELD_LIST_SIZE 1313#define ULP_THOR_CLASS_COND_LIST_SIZE 55#define ULP_WH_PLUS_ACT_TMPL_LIST_SIZE 7 -#define ULP_WH_PLUS_ACT_TBL_LIST_SIZE 35 +#define ULP_WH_PLUS_ACT_TBL_LIST_SIZE 37#define ULP_WH_PLUS_ACT_KEY_INFO_LIST_SIZE 2#define ULP_WH_PLUS_ACT_IDENT_LIST_SIZE 1#define ULP_WH_PLUS_ACT_RESULT_FIELD_LIST_SIZE 536 -#define ULP_WH_PLUS_ACT_COND_LIST_SIZE 39 +#define ULP_WH_PLUS_ACT_COND_LIST_SIZE 41#define ULP_THOR_ACT_TMPL_LIST_SIZE 7#define ULP_THOR_ACT_TBL_LIST_SIZE 36#define ULP_THOR_ACT_KEY_INFO_LIST_SIZE 16
@@ -2224,21 +2224,25 @@ enum bnxt_ulp_act_hid { BNXT_ULP_ACT_HID_04bc =0x04bc , BNXT_ULP_ACT_HID_00a9 =0x00a9 , BNXT_ULP_ACT_HID_020f =0x020f , +BNXT_ULP_ACT_HID_0153 =0x0153 , BNXT_ULP_ACT_HID_04a9 =0x04a9 , BNXT_ULP_ACT_HID_01fc =0x01fc , BNXT_ULP_ACT_HID_04be =0x04be , BNXT_ULP_ACT_HID_00ab =0x00ab ,BNXT_ULP_ACT_HID_0211 =0x0211 , +BNXT_ULP_ACT_HID_0155 =0x0155 , BNXT_ULP_ACT_HID_04ab =0x04ab , BNXT_ULP_ACT_HID_01fe =0x01fe ,BNXT_ULP_ACT_HID_0667 =0x0667 ,BNXT_ULP_ACT_HID_0254 =0x0254 , BNXT_ULP_ACT_HID_03ba =0x03ba , + BNXT_ULP_ACT_HID_02fe =0x02fe ,BNXT_ULP_ACT_HID_0654 =0x0654 , BNXT_ULP_ACT_HID_03a7 =0x03a7 ,BNXT_ULP_ACT_HID_0669 =0x0669 ,BNXT_ULP_ACT_HID_0256 =0x0256 , BNXT_ULP_ACT_HID_03bc =0x03bc , +BNXT_ULP_ACT_HID_0300 =0x0300 ,BNXT_ULP_ACT_HID_0656 =0x0656 , BNXT_ULP_ACT_HID_03a9 =0x03a9 , BNXT_ULP_ACT_HID_021b = 0x021b,
@@ -2258,21 +2262,25 @@ enum bnxt_ulp_act_hid { BNXT_ULP_ACT_HID_06d7 =0x06d7 , BNXT_ULP_ACT_HID_02c4 =0x02c4 , BNXT_ULP_ACT_HID_042a =0x042a , + BNXT_ULP_ACT_HID_036e =0x036e , BNXT_ULP_ACT_HID_06c4 =0x06c4 ,BNXT_ULP_ACT_HID_0417 =0x0417 , BNXT_ULP_ACT_HID_06d9 =0x06d9 , BNXT_ULP_ACT_HID_02c6 =0x02c6 , BNXT_ULP_ACT_HID_042c =0x042c , +BNXT_ULP_ACT_HID_0370 =0x0370 , BNXT_ULP_ACT_HID_06c6 =0x06c6 ,BNXT_ULP_ACT_HID_0419 =0x0419 ,BNXT_ULP_ACT_HID_0119 =0x0119 , BNXT_ULP_ACT_HID_046f =0x046f , BNXT_ULP_ACT_HID_05d5 =0x05d5 , +BNXT_ULP_ACT_HID_0519 =0x0519 ,BNXT_ULP_ACT_HID_0106 =0x0106 , BNXT_ULP_ACT_HID_05c2 =0x05c2 , BNXT_ULP_ACT_HID_011b =0x011b ,BNXT_ULP_ACT_HID_0471 =0x0471 , BNXT_ULP_ACT_HID_05d7 =0x05d7 , + BNXT_ULP_ACT_HID_051b =0x051b ,BNXT_ULP_ACT_HID_0108 =0x0108 , BNXT_ULP_ACT_HID_05c4 =0x05c4 , BNXT_ULP_ACT_HID_00a2 = 0x00a2,
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +3 -11
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Tue Aug 17 12:16:42 2021 */ +/* date: Thu Aug 26 17:43:36 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -2121,7 +2121,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count =64 + .count =2048 }, { .app_id = 0,
@@ -2249,7 +2249,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count =64 + .count =2048 }, { .app_id = 0,
@@ -2263,14 +2263,6 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_MODIFY_64B, - .count =32 - }, - { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type =TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW , .count = 272
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c +1 -1
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Fri Aug 20 18:05:25 2021 */ +/* date: Wed Aug 25 16:41:37 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c +64 -32
293 lines not on this page · raw message
Signature · 1 line
2.17.1
PATCH 2/9 net/bnxt: support multi root capability flag
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
Update driver to read the multi root capability and ignore pci address check while creating ulp session when multi root capability is enabled in the hardware. DPDK HSI version updated from 1.10.1.70 to 1.10.2.54.
--- drivers/net/bnxt/bnxt.h | 8 + drivers/net/bnxt/bnxt_hwrm.c | 8 + drivers/net/bnxt/hsi_struct_def_dpdk.h | 2698 +++++++++++++++++++++--- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 10 +- 4 files changed, 2420 insertions(+), 304 deletions(-)
drivers/net/bnxt/bnxt.h +8 -0
@@ -724,6 +724,14 @@ struct bnxt {uint16_t chip_num;#define CHIP_NUM_58818 0xd818#define BNXT_CHIP_SR2 (bp) ((bp)->chip_num == CHIP_NUM_58818) +#define BNXT_FLAGS2_TESTPMD_EN BIT(3) +#define BNXT_TESTPMD_EN (bp) \ + ((bp)->flags2 & BNXT_FLAGS2_TESTPMD_EN) +#define BNXT_THOR_PTP_TIMESYNC_ENABLED (bp) \ + ((bp)->flags & BNXT_FLAGS_PTP_TIMESYNC_ENABLED) +#define BNXT_FLAGS2_MULTIROOT_EN BIT(4) +#define BNXT_MULTIROOT_EN (bp) \ + ((bp)->flags2 & BNXT_FLAGS2_MULTIROOT_EN)uint32_t fw_cap;#define BNXT_FW_CAP_HOT_RESET BIT(0)
drivers/net/bnxt/bnxt_hwrm.c +8 -0
@@ -3385,6 +3385,7 @@ int bnxt_hwrm_parent_pf_qcfg(struct bnxt *bp) {struct hwrm_func_qcfg_input req = {0 };struct hwrm_func_qcfg_output *resp = bp->hwrm_cmd_resp_addr; +uint16_t flags;int rc;if (!BNXT_VF_IS_TRUSTED (bp))
@@ -3408,6 +3409,13 @@ int bnxt_hwrm_parent_pf_qcfg(struct bnxt *bp) bp->parent->fid =rte_le_to_cpu_16 (resp->fid); bp->parent->port_id =rte_le_to_cpu_16 (resp->port_id); + flags =rte_le_to_cpu_16 (resp->flags); +/* check for the multi-root support */ +if (flags &HWRM_FUNC_QCFG_OUTPUT_FLAGS_MULTI_ROOT ) { + bp->flags2 |=BNXT_FLAGS2_MULTIROOT_EN ; +PMD_DRV_LOG (DEBUG ,"PF enabled with multi root capability\n" ); + } +HWRM_UNLOCK ();return 0 ;
drivers/net/bnxt/hsi_struct_def_dpdk.h +2398 -300
2,966 lines not on this page · raw message
The rest of this diff is not shown. View the raw message.
Signature · 1 line
2.17.1
Part of the diff is not shown here. View the raw message.
PATCH 3/9 net/bnxt: fix the out of boundary issue in hash list
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
The number of hash bucket list calculation is fixed and added check to limit the out of boundary condition
--- drivers/net/bnxt/tf_ulp/ulp_gen_hash.c | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-)
drivers/net/bnxt/tf_ulp/ulp_gen_hash.c +14 -6
@@ -16,20 +16,21 @@ int32_t ulp_bit_alloc_list_alloc(struct bit_alloc_list *blist, {uint64_t bentry;uint32_t idx =0 , jdx =0 ; +uint32_t bsize_64 = blist->bsize /ULP_64B_IN_BYTES ;/* Iterate all numbers that have all 1's */ do { bentry = blist->bdata[idx++]; - }while (bentry ==-1UL && idx < blist->bsize); + }while (bentry ==-1UL && idx <= bsize_64); -if (idx < blist->bsize) { +if (idx <= bsize_64) {if (bentry) jdx =__builtin_clzl (~bentry); *index = ((idx -1 ) *ULP_INDEX_BITMAP_SIZE ) + jdx;ULP_INDEX_BITMAP_SET (blist->bdata[(idx -1 )], jdx);return 0 ; } - jdx = (uint32_t )(blist->bsize *ULP_INDEX_BITMAP_SIZE ); + jdx = (uint32_t )(bsize_64 *ULP_INDEX_BITMAP_SIZE );BNXT_TF_DBG (ERR ,"bit allocator is full reached max:%x\n" , jdx);return -1 ; }
@@ -39,9 +40,10 @@ int32_t ulp_bit_alloc_list_dealloc(struct bit_alloc_list *blist, uint32_t index) {uint32_t idx =0 , jdx; +uint32_t bsize_64 = blist->bsize /ULP_64B_IN_BYTES ; idx = index /ULP_INDEX_BITMAP_SIZE ; -if (idx >= blist->bsize) { +if (idx >= bsize_64) {BNXT_TF_DBG (ERR ,"invalid bit index %x:%x\n" , idx, blist->bsize);return -EINVAL ;
@@ -127,7 +129,8 @@ ulp_gen_hash_tbl_list_init(struct ulp_hash_create_params *cparams, hash_tbl->hash_mask = size -1 ;/* allocate the memory for the bit allocator */ - size = (cparams->num_key_entries /sizeof (uint64_t )) +1 ; + size = (cparams->num_key_entries /sizeof (uint64_t )); + size =ULP_BYTE_ROUND_OFF_8 (size); hash_tbl->bit_list.bsize = size; hash_tbl->bit_list.bdata =rte_zmalloc ("Generic hash bit alloc" , size,ULP_BUFFER_ALIGN_64_BYTE );
@@ -311,7 +314,12 @@ ulp_gen_hash_tbl_list_add(struct ulp_gen_hash_tbl *hash_tbl,BNXT_TF_DBG (ERR ,"Error in bit list alloc\n" );return -ENOMEM ; } - +if (key_index > hash_tbl->num_key_entries) { +BNXT_TF_DBG (ERR ,"reached max size %u:%u\n" , key_index, + hash_tbl->num_key_entries); +ulp_bit_alloc_list_dealloc (&hash_tbl->bit_list, key_index); +return -ENOMEM ; + }/* Update the hash entry */ ULP_HASH_BUCKET_MARK_INUSE (bucket, (uint16_t )key_index);
Signature · 1 line
2.17.1
PATCH 4/9 net/bnxt: add clear on read stats support for Thor
In reply to Venkat DuvvuruFrom: Farah Smith <[email protected]>
Currently, the flow stats are not cleared after they are read from the fw. This patch adds support for clear on read. Since clear on read support is added for flow stats in Thor, the flow accumulation is enabled on Thor as well.
--- drivers/net/bnxt/hsi_struct_def_dpdk.h | 34 ++++++++++++++++++++------ drivers/net/bnxt/tf_core/tf_msg.c | 24 +++++++++++++++--- drivers/net/bnxt/tf_core/tf_msg.h | 6 +++-- drivers/net/bnxt/tf_core/tf_tbl.c | 6 +++-- drivers/net/bnxt/tf_core/tf_tbl_sram.c | 13 ++++++++-- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 3 ++- 6 files changed, 67 insertions(+), 19 deletions(-)
drivers/net/bnxt/hsi_struct_def_dpdk.h +26 -8
@@ -1058,8 +1058,8 @@ struct hwrm_err_output {#define HWRM_VERSION_MINOR 10#define HWRM_VERSION_UPDATE 2/* non-zero means beta version */ -#define HWRM_VERSION_RSVD 54 -#define HWRM_VERSION_STR "1.10.2.54" +#define HWRM_VERSION_RSVD 55 +#define HWRM_VERSION_STR "1.10.2.55"/**************** * hwrm_ver_get *
@@ -46253,13 +46253,22 @@ struct hwrm_tf_tbl_type_get_input {/* Control flags. */ uint16_t flags;/* Indicates the flow direction. */ -#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR UINT32_C(0x1) +#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR \ + UINT32_C(0x1)/* If this bit set to 0, then it indicates rx flow. */ -#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) +#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_RX \ + UINT32_C(0x0)/* If this bit is set to 1, then it indicates tx flow. */ -#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) +#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX \ + UINT32_C(0x1)#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX +/* +* When set use the special access register access to clear +* the table entry on read. +*/ +#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_CLEAR_ON_READ \ + UINT32_C(0x2)/* unused. */ uint8_t unused0[2 ];/*
@@ -48489,13 +48498,22 @@ struct hwrm_tf_tbl_type_bulk_get_input {/* Control flags. */ uint16_t flags;/* Indicates the flow direction. */ -#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR UINT32_C(0x1) +#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR \ + UINT32_C(0x1)/* If this bit set to 0, then it indicates rx flow. */ -#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) +#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_RX \ + UINT32_C(0x0)/* If this bit is set to 1, then it indicates tx flow. */ -#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) +#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX \ + UINT32_C(0x1)#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX +/* +* When set use the special access register access to clear +* the table entries on read. +*/ +#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_CLEAR_ON_READ \ + UINT32_C(0x2)/* unused. */ uint8_t unused0[2 ];/*
drivers/net/bnxt/tf_core/tf_msg.c +20 -4
@@ -1851,7 +1851,8 @@ tf_msg_get_tbl_entry(struct tf *tfp,uint16_t hcapi_type, uint16_t size, uint8_t *data, - uint32_t index) + uint32_t index, + bool clear_on_read) { int rc;struct hwrm_tf_tbl_type_get_input req = {0 };
@@ -1860,6 +1861,7 @@ tf_msg_get_tbl_entry(struct tf *tfp,uint8_t fw_session_id;struct tf_dev_info *dev;struct tf_session *tfs; +uint32_t flags =0 ;/* Retrieve the session information */ rc =tf_session_get_session_internal (tfp, &tfs);
@@ -1889,10 +1891,16 @@ tf_msg_get_tbl_entry(struct tf *tfp, strerror(-rc));return rc; } + flags = (dir ==TF_DIR_TX ? +HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX : +HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_RX ); + +if (clear_on_read) + flags |=HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_CLEAR_ON_READ ;/* Populate the request */ req.fw_session_id =tfp_cpu_to_le_32 (fw_session_id); - req.flags =tfp_cpu_to_le_16 (dir); + req.flags =tfp_cpu_to_le_16 (flags); req.type =tfp_cpu_to_le_32 (hcapi_type); req.index =tfp_cpu_to_le_32 (index);
@@ -2105,7 +2113,8 @@ tf_msg_bulk_get_tbl_entry(struct tf *tfp,uint32_t starting_idx, uint16_t num_entries, uint16_t entry_sz_in_bytes, - uint64_t physical_mem_addr) + uint64_t physical_mem_addr, + bool clear_on_read) { int rc;struct tfp_send_msg_parms parms = {0 };
@@ -2115,6 +2124,7 @@ tf_msg_bulk_get_tbl_entry(struct tf *tfp,uint8_t fw_session_id;struct tf_dev_info *dev;struct tf_session *tfs; +uint32_t flags =0 ;/* Retrieve the session information */ rc =tf_session_get_session (tfp, &tfs);
@@ -2144,10 +2154,16 @@ tf_msg_bulk_get_tbl_entry(struct tf *tfp, strerror(-rc));return rc; } + flags = (dir ==TF_DIR_TX ? +HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX : +HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_RX ); + +if (clear_on_read) + flags |=HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_CLEAR_ON_READ ;/* Populate the request */ req.fw_session_id =tfp_cpu_to_le_32 (fw_session_id); - req.flags =tfp_cpu_to_le_16 (dir); + req.flags =tfp_cpu_to_le_16 (flags); req.type =tfp_cpu_to_le_32 (hcapi_type); req.start_index =tfp_cpu_to_le_32 (starting_idx); req.num_entries =tfp_cpu_to_le_32 (num_entries);
drivers/net/bnxt/tf_core/tf_msg.h +4 -2
@@ -652,7 +652,8 @@ int tf_msg_get_tbl_entry(struct tf *tfp,uint16_t hcapi_type, uint16_t size, uint8_t *data, - uint32_t index); + uint32_t index, + bool clear_on_read);/* HWRM Tunneled messages */
@@ -704,7 +705,8 @@ int tf_msg_bulk_get_tbl_entry(struct tf *tfp,uint32_t starting_idx, uint16_t num_entries, uint16_t entry_sz_in_bytes, - uint64_t physical_mem_addr); + uint64_t physical_mem_addr, + bool clear_on_read);/** * Sends Set message of a IF Table Type element to the firmware.
drivers/net/bnxt/tf_core/tf_tbl.c +4 -2
@@ -441,7 +441,8 @@ tf_tbl_get(struct tf *tfp, hcapi_type, parms->data_sz_in_bytes, parms->data, - parms->idx); + parms->idx, + false);if (rc) { TFP_DRV_LOG(ERR, "%s, Get failed, type:%s, rc:%s\n",
@@ -526,7 +527,8 @@ tf_tbl_bulk_get(struct tf *tfp, parms->starting_idx, parms->num_entries, parms->entry_sz_in_bytes, - parms->physical_mem_addr); + parms->physical_mem_addr, + false);if (rc) { TFP_DRV_LOG(ERR, "%s, Bulk get failed, type:%s, rc:%s\n",
drivers/net/bnxt/tf_core/tf_tbl_sram.c +11 -2
@@ -539,6 +539,7 @@ tf_tbl_sram_get(struct tf *tfp,struct tf_tbl_sram_get_info_parms iparms = {0 };struct tf_sram_mgr_is_allocated_parms aparms = {0 };void *sram_handle =NULL ; +bool clear_on_read = false;TF_CHECK_PARMS3 (tfp, parms, parms->data);
@@ -608,6 +609,8 @@ tf_tbl_sram_get(struct tf *tfp, strerror(-rc));return rc; } +if (parms->type ==TF_TBL_TYPE_ACT_STATS_64 ) + clear_on_read = true;/* Get the entry */ rc = tf_msg_get_tbl_entry(tfp,
@@ -615,7 +618,8 @@ tf_tbl_sram_get(struct tf *tfp, hcapi_type, parms->data_sz_in_bytes, parms->data, - parms->idx); + parms->idx, + clear_on_read);if (rc) { TFP_DRV_LOG(ERR, "%s, Get failed, type:%s, rc:%s\n",
@@ -643,6 +647,7 @@ tf_tbl_sram_bulk_get(struct tf *tfp,struct tf_sram_mgr_is_allocated_parms aparms = {0 };bool allocated = false;void *sram_handle =NULL ; +bool clear_on_read = false;TF_CHECK_PARMS2 (tfp, parms);
@@ -728,6 +733,9 @@ tf_tbl_sram_bulk_get(struct tf *tfp,return rc; } +if (parms->type ==TF_TBL_TYPE_ACT_STATS_64 ) + clear_on_read = true; +/* Get the entries */ rc = tf_msg_bulk_get_tbl_entry(tfp, parms->dir,
@@ -735,7 +743,8 @@ tf_tbl_sram_bulk_get(struct tf *tfp, parms->starting_idx, parms->num_entries, parms->entry_sz_in_bytes, - parms->physical_mem_addr); + parms->physical_mem_addr, + clear_on_read);if (rc) { TFP_DRV_LOG(ERR, "%s, Bulk get failed, type:%s, rc:%s\n",
drivers/net/bnxt/tf_ulp/bnxt_ulp.c +2 -1
@@ -1488,7 +1488,8 @@ bnxt_ulp_port_init(struct bnxt *bp) goto jump_to_error; } -if (devid !=BNXT_ULP_DEVICE_ID_THOR &&BNXT_ACCUM_STATS_EN (bp)) +/* set the accumulation of the stats */ +if (BNXT_ACCUM_STATS_EN (bp)) bp->ulp_ctx->cfg_data->accum_stats = true; BNXT_TF_DBG(DEBUG, "BNXT Port:%d ULP port init, accum_stats:%d\n",
Signature · 1 line
2.17.1
PATCH 5/9 net/bnxt: add feature capability option for socket direct
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
Added support for socket direct feature capability so applications can enable or disable this feature. This patch contains the template changes.
--- drivers/net/bnxt/bnxt.h | 13 -- drivers/net/bnxt/bnxt_ethdev.c | 203 ------------------ drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 11 +- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 6 +- drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c | 10 +- .../generic_templates/ulp_template_db_enum.h | 8 +- .../generic_templates/ulp_template_db_tbl.c | 5 +- 7 files changed, 30 insertions(+), 226 deletions(-)
drivers/net/bnxt/bnxt.h +0 -13
@@ -1060,19 +1060,6 @@ int32_t bnxt_ulp_create_vfr_default_rules(struct rte_eth_dev *vfr_ethdev);int32_t bnxt_ulp_delete_vfr_default_rules (struct bnxt_representor *vfr); -void bnxt_get_iface_mac (uint16_t port,enum bnxt_ulp_intf_type type, -uint8_t *mac,uint8_t *parent_mac); -uint16_t bnxt_get_vnic_id (uint16_t port,enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_parent_vnic_id (uint16_t port,enum bnxt_ulp_intf_type type); -struct bnxt *bnxt_get_bp (uint16_t port); -uint16_t bnxt_get_svif (uint16_t port_id,bool func_svif, -enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_fw_func_id (uint16_t port,enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_parif (uint16_t port,enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_phy_port_id (uint16_t port); -uint16_t bnxt_get_vport (uint16_t port); -enum bnxt_ulp_intf_type -bnxt_get_interface_type (uint16_t port);int bnxt_rep_dev_start_op (struct rte_eth_dev *eth_dev);void bnxt_cancel_fc_thread (struct bnxt *bp);
drivers/net/bnxt/bnxt_ethdev.c +0 -203
209 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/bnxt_ulp.c +9 -2
@@ -301,13 +301,14 @@ bnxt_ulp_tf_shared_session_resources_get(struct bnxt_ulp_context *ulp_ctx, }int32_t -bnxt_ulp_cntxt_app_caps_init (struct bnxt_ulp_context *ulp_ctx, +bnxt_ulp_cntxt_app_caps_init (struct bnxt *bp,uint8_t app_id,uint32_t dev_id) {struct bnxt_ulp_app_capabilities_info *info;uint32_t num =0 ;uint16_t i;bool found = false; +struct bnxt_ulp_context *ulp_ctx = bp->ulp_ctx;if (ULP_APP_DEV_UNSUPPORTED_ENABLED (ulp_ctx->cfg_data->ulp_flags)) { BNXT_TF_DBG(ERR, "APP ID %d, Device ID: 0x%x not supported.\n",
@@ -334,6 +335,12 @@ bnxt_ulp_cntxt_app_caps_init(struct bnxt_ulp_context *ulp_ctx,if (info[i].flags &BNXT_ULP_APP_CAP_UNICAST_ONLY ) ulp_ctx->cfg_data->ulp_flags |=BNXT_ULP_APP_UNICAST_ONLY ; +if (info[i].flags &BNXT_ULP_APP_CAP_SOCKET_DIRECT ) { +/* Enable socket direction only if MR is enabled in fw*/ +if (BNXT_MULTIROOT_EN (bp)) + ulp_ctx->cfg_data->ulp_flags |= +BNXT_ULP_APP_SOCKET_DIRECT ; + } }if (!found) { BNXT_TF_DBG(ERR, "APP ID %d, Device ID: 0x%x not supported.\n",
@@ -837,7 +844,7 @@ ulp_ctx_init(struct bnxt *bp, }BNXT_TF_DBG (DEBUG ,"Ulp initialized with app id %d\n" , bp->app_id); - rc =bnxt_ulp_cntxt_app_caps_init (bp->ulp_ctx, bp->app_id, devid); + rc =bnxt_ulp_cntxt_app_caps_init (bp, bp->app_id, devid);if (rc) {BNXT_TF_DBG (ERR ,"Unable to set caps for app(%x)/dev(%x)\n" , bp->app_id, devid);
drivers/net/bnxt/tf_ulp/bnxt_ulp.h +5 -1
@@ -13,6 +13,7 @@#include "rte_version.h" #include "rte_ethdev.h" +#include "bnxt.h" #include "ulp_template_db_enum.h" #include "ulp_tun.h" #include "bnxt_tf_common.h"
@@ -33,12 +34,15 @@#define BNXT_ULP_APP_DEV_UNSUPPORTED 0x4#define BNXT_ULP_HIGH_AVAIL_ENABLED 0x8#define BNXT_ULP_APP_UNICAST_ONLY 0x10 +#define BNXT_ULP_APP_SOCKET_DIRECT 0x20 +#define ULP_VF_REP_IS_ENABLED (flag) ((flag) & BNXT_ULP_VF_REP_ENABLED)#define ULP_SHARED_SESSION_IS_ENABLED (flag) ((flag) &\ BNXT_ULP_SHARED_SESSION_ENABLED)#define ULP_APP_DEV_UNSUPPORTED_ENABLED (flag) ((flag) &\ BNXT_ULP_APP_DEV_UNSUPPORTED)#define ULP_HIGH_AVAIL_IS_ENABLED (flag) ((flag) & BNXT_ULP_HIGH_AVAIL_ENABLED) +#define ULP_SOCKET_DIRECT_IS_ENABLED (flag) ((flag) & BNXT_ULP_APP_SOCKET_DIRECT)enum bnxt_ulp_flow_mem_type {BNXT_ULP_FLOW_MEM_TYPE_INT =0 ,
@@ -287,7 +291,7 @@ struct bnxt_ulp_app_capabilities_info *bnxt_ulp_app_cap_list_get (uint32_t *num_entries);int32_t -bnxt_ulp_cntxt_app_caps_init (struct bnxt_ulp_context *ulp_ctx, +bnxt_ulp_cntxt_app_caps_init (struct bnxt *bp,uint8_t app_id,uint32_t dev_id); struct bnxt_ulp_resource_resv_info *
drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c +8 -2
@@ -118,9 +118,11 @@ bnxt_ulp_init_mapper_params(struct bnxt_ulp_mapper_create_parms *mapper_cparms,ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_FLOW_SIG_ID , params->flow_sig_id); +if (bnxt_ulp_cntxt_ptr2_ulp_flags_get (params->ulp_ctx, &ulp_flags)) +return ; +/* update the WC Priority flag */ -if (!bnxt_ulp_cntxt_ptr2_ulp_flags_get (params->ulp_ctx, &ulp_flags) && -ULP_HIGH_AVAIL_IS_ENABLED (ulp_flags)) { +if (ULP_HIGH_AVAIL_IS_ENABLED (ulp_flags)) {enum ulp_ha_mgr_region region =ULP_HA_REGION_LOW ;int32_t rc;
@@ -132,6 +134,10 @@ bnxt_ulp_init_mapper_params(struct bnxt_ulp_mapper_create_parms *mapper_cparms,BNXT_ULP_CF_IDX_WC_IS_HA_HIGH_REG , 1); } + +/* Update the socket direct flag */ +if (ULP_SOCKET_DIRECT_IS_ENABLED (ulp_flags)) +ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_SOCKET_DIRECT ,1 ); }/* Function to create the rte flow. */
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +5 -3
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Thu Aug 26 17:43:36 2021 */ +/* date: Thu Sep 9 11:11:05 2021 */ #ifndef ULP_TEMPLATE_DB_H_ #define ULP_TEMPLATE_DB_H_
@@ -211,7 +211,8 @@ enum bnxt_ulp_cf_idx {BNXT_ULP_CF_IDX_OI_VLAN_FB_VID =71 ,BNXT_ULP_CF_IDX_IO_VLAN_FB_VID =72 ,BNXT_ULP_CF_IDX_II_VLAN_FB_VID =73 , -BNXT_ULP_CF_IDX_LAST =74 +BNXT_ULP_CF_IDX_SOCKET_DIRECT =74 , +BNXT_ULP_CF_IDX_LAST =75 }; enum bnxt_ulp_cond_list_opc {
@@ -582,7 +583,8 @@ enum bnxt_ulp_template_type {enum bnxt_ulp_app_cap {BNXT_ULP_APP_CAP_SHARED_EN =0x00000001 ,BNXT_ULP_APP_CAP_HOT_UPGRADE_EN =0x00000002 , -BNXT_ULP_APP_CAP_UNICAST_ONLY =0x00000004 +BNXT_ULP_APP_CAP_UNICAST_ONLY =0x00000004 , +BNXT_ULP_APP_CAP_SOCKET_DIRECT =0x00000008 };enum bnxt_ulp_fdb_resource_flags {
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +3 -2
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Thu Aug 26 17:43:36 2021 */ +/* date: Thu Sep 9 11:11:05 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -347,7 +347,8 @@ struct bnxt_ulp_app_capabilities_info ulp_app_cap_info_list[] = { .device_id = BNXT_ULP_DEVICE_ID_THOR, .flags =BNXT_ULP_APP_CAP_SHARED_EN |BNXT_ULP_APP_CAP_HOT_UPGRADE_EN | -BNXT_ULP_APP_CAP_UNICAST_ONLY +BNXT_ULP_APP_CAP_UNICAST_ONLY | +BNXT_ULP_APP_CAP_SOCKET_DIRECT }, { .app_id = 2,
Signature · 1 line
2.17.1
PATCH 6/9 net/bnxt: enable wildcard match for ingress flows
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
Enabled wildcard match support for ipv4 ingress flows.
--- .../generic_templates/ulp_template_db_enum.h | 4 +- .../ulp_template_db_thor_class.c | 251 +++++++++--------- 2 files changed, 125 insertions(+), 130 deletions(-)
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +2 -2
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Thu Sep 9 11:11:05 2021 */ +/* date: Thu Sep 9 12:11:08 2021 */ #ifndef ULP_TEMPLATE_DB_H_ #define ULP_TEMPLATE_DB_H_
@@ -48,7 +48,7 @@#define ULP_THOR_CLASS_KEY_INFO_LIST_SIZE 2323#define ULP_THOR_CLASS_IDENT_LIST_SIZE 38#define ULP_THOR_CLASS_RESULT_FIELD_LIST_SIZE 1313 -#define ULP_THOR_CLASS_COND_LIST_SIZE 55 +#define ULP_THOR_CLASS_COND_LIST_SIZE 54#define ULP_WH_PLUS_ACT_TMPL_LIST_SIZE 7#define ULP_WH_PLUS_ACT_TBL_LIST_SIZE 37#define ULP_WH_PLUS_ACT_KEY_INFO_LIST_SIZE 2
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c +123 -128
990 lines not on this page · raw message
Signature · 1 line
2.17.1
PATCH 7/9 net/bnxt: support inner IP header for GRE tunnel flows
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
This change allows adding ip header matches for GRE flows that does not specify outer ip header in the flow match pattern.
--- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 7 ++++--- drivers/net/bnxt/tf_ulp/ulp_template_struct.h | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-)
drivers/net/bnxt/tf_ulp/ulp_rte_parser.c +4 -3
@@ -1079,7 +1079,8 @@ ulp_rte_ipv4_hdr_handler(const struct rte_flow_item *item,/* Set the ipv4 header bitmap and computed l3 header bitmaps */ if (ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV4 ) || -ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV6 )) { +ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV6 ) || +ULP_COMP_FLD_IDX_RD (params,BNXT_ULP_CF_IDX_L3_TUN )) {ULP_BITMAP_SET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_I_IPV4 );ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_I_L3 ,1 ); inner_flag =1 ;
@@ -1205,7 +1206,8 @@ ulp_rte_ipv6_hdr_handler(const struct rte_flow_item *item,/* Set the ipv6 header bitmap and computed l3 header bitmaps */ if (ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV4 ) || -ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV6 )) { +ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV6 ) || +ULP_COMP_FLD_IDX_RD (params,BNXT_ULP_CF_IDX_L3_TUN )) {ULP_BITMAP_SET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_I_IPV6 );ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_I_L3 ,1 ); inner_flag =1 ;
@@ -2087,7 +2089,6 @@ ulp_rte_vxlan_decap_act_handler(const struct rte_flow_action *action_item BNXT_ULP_ACT_BIT_VXLAN_DECAP);/* Update computational field with tunnel decap info */ ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_L3_TUN_DECAP ,1 ); -ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_L3_TUN ,1 );return BNXT_TF_RC_SUCCESS ; }
drivers/net/bnxt/tf_ulp/ulp_template_struct.h +1 -1
@@ -27,7 +27,7 @@#define BNXT_ULP_PROTO_HDR_UDP_NUM 4#define BNXT_ULP_PROTO_HDR_TCP_NUM 9#define BNXT_ULP_PROTO_HDR_VXLAN_NUM 4 -#define BNXT_ULP_PROTO_HDR_GRE_NUM 6 +#define BNXT_ULP_PROTO_HDR_GRE_NUM 2#define BNXT_ULP_PROTO_HDR_ICMP_NUM 5#define BNXT_ULP_PROTO_HDR_MAX 128#define BNXT_ULP_PROTO_HDR_ENCAP_MAX 64
Signature · 1 line
2.17.1
PATCH 8/9 net/bnxt: get Truflow version
In reply to Venkat DuvvuruFrom: Jay Ding <[email protected]>
Implement TF_GET_VERSION that returns Truflow version numbers and CFA resources capabilities.
--- drivers/net/bnxt/hsi_struct_def_dpdk.h | 15 ++-- drivers/net/bnxt/tf_core/tf_core.c | 30 ++++++++ drivers/net/bnxt/tf_core/tf_core.h | 75 ++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_device.h | 50 ++++++++++++++ drivers/net/bnxt/tf_core/tf_device_p4.c | 65 +++++++++++++++++- drivers/net/bnxt/tf_core/tf_device_p4.h | 79 +++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_device_p58.c | 65 +++++++++++++++++- drivers/net/bnxt/tf_core/tf_device_p58.h | 87 ++++++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_msg.c | 35 ++++++++++ drivers/net/bnxt/tf_core/tf_msg.h | 19 ++++++ 10 files changed, 514 insertions(+), 6 deletions(-)
drivers/net/bnxt/hsi_struct_def_dpdk.h +11 -4
@@ -1058,8 +1058,8 @@ struct hwrm_err_output {#define HWRM_VERSION_MINOR 10#define HWRM_VERSION_UPDATE 2/* non-zero means beta version */ -#define HWRM_VERSION_RSVD 55 -#define HWRM_VERSION_STR "1.10.2.55" +#define HWRM_VERSION_RSVD 58 +#define HWRM_VERSION_STR "1.10.2.58"/**************** * hwrm_ver_get *
@@ -45178,7 +45178,7 @@ struct hwrm_tf_version_get_input {uint64_t resp_addr; } __rte_packed; -/* hwrm_tf_version_get_output (size:128b/16B) */ +/* hwrm_tf_version_get_output (size:256b/32B) */ struct hwrm_tf_version_get_output {/* The specific error status for the command. */ uint16_t error_code;
@@ -45195,7 +45195,14 @@ struct hwrm_tf_version_get_output {/* Version Update number. */ uint8_t update;/* unused. */ -uint8_t unused0[4 ]; +uint8_t unused0[5 ]; +/* +* This field is used to indicate device's capabilities and +* configurations. +*/ +uint64_t dev_caps_cfg; +/* unused. */ +uint8_t unused1[7 ];/* * This field is used in Output records to indicate that the output * is completely written to RAM. This field should be read as '1'
drivers/net/bnxt/tf_core/tf_core.c +30 -0
@@ -1802,3 +1802,33 @@ int tf_get_session_info(struct tf *tfp,return 0 ; } + +int tf_get_version (struct tf *tfp, +struct tf_get_version_parms *parms) +{ +int rc; +struct tf_dev_info dev; + +TF_CHECK_PARMS2 (tfp, parms); + +/* This function can be called before open session, filter +* out any non-supported device types on the Core side. +*/ +if (parms->device_type !=TF_DEVICE_TYPE_WH && + parms->device_type !=TF_DEVICE_TYPE_THOR && + parms->device_type !=TF_DEVICE_TYPE_SR ) { +TFP_DRV_LOG (ERR , +"Unsupported device type %d\n" , + parms->device_type); +return -ENOTSUP ; + } + +tf_dev_bind_ops (parms->device_type, &dev); + + rc =tf_msg_get_version (parms->bp, &dev, parms); +if (rc) +return rc; + +return 0 ; +} +
drivers/net/bnxt/tf_core/tf_core.h +75 -0
79 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device.h +50 -0
72 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p4.c +64 -1
81 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p4.h +79 -0
83 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p58.c +64 -1
87 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p58.h +87 -0
91 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_msg.c +35 -0
@@ -2306,3 +2306,38 @@ tf_msg_set_if_tbl_entry(struct tf *tfp,return 0 ; } + +int +tf_msg_get_version (struct bnxt *bp, +struct tf_dev_info *dev, +struct tf_get_version_parms *params) + +{ +int rc; +struct hwrm_tf_version_get_input req = {0 }; +struct hwrm_tf_version_get_output resp = {0 }; +struct tfp_send_msg_parms parms = {0 }; + +/* Populate the request */ + parms.tf_type =HWRM_TF_VERSION_GET , + parms.req_data = (uint32_t *)&req; + parms.req_size =sizeof (req); + parms.resp_data = (uint32_t *)&resp; + parms.resp_size =sizeof (resp); + parms.mailbox = dev->ops->tf_dev_get_mailbox (); + + rc =tfp_send_msg_direct (bp, + &parms); + + params->major = resp.major; + params->minor = resp.minor; + params->update = resp.update; + + dev->ops->tf_dev_map_hcapi_caps (resp.dev_caps_cfg, + ¶ms->dev_ident_caps, + ¶ms->dev_tcam_caps, + ¶ms->dev_tbl_caps, + ¶ms->dev_em_caps); + +return rc; +}
drivers/net/bnxt/tf_core/tf_msg.h +19 -0
@@ -738,4 +738,23 @@ int tf_msg_set_if_tbl_entry(struct tf *tfp,int tf_msg_get_if_tbl_entry (struct tf *tfp,struct tf_if_tbl_get_parms *params); +/** +* Send get version request to the firmware. +* +* [in] bp +* Pointer to bnxt handle +* +* [in] dev +* Pointer to the associated device +* +* [in/out] parms +* Pointer to the version info parameter +* +* Returns: +* 0 on Success else internal Truflow error +*/ +int +tf_msg_get_version (struct bnxt *bp, +struct tf_dev_info *dev, +struct tf_get_version_parms *parms);#endif /* _TF_MSG_H_ */
Signature · 1 line
2.17.1
PATCH 9/9 net/bnxt: increase scaling numbers on Thor
In reply to Venkat DuvvuruFrom: Shahaji Bhosle <[email protected]>
* Updated defines and data types to allow 256 VFRs.
* Increased the encap record cache to support 256 to 4K entries. So vxlan connections can be scaled to 4k entries.
--- drivers/net/bnxt/bnxt.h | 6 +++++- drivers/net/bnxt/bnxt_cpr.c | 2 +- drivers/net/bnxt/bnxt_ethdev.c | 18 +++++++++--------- drivers/net/bnxt/bnxt_reps.c | 3 +-- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 2 +- .../generic_templates/ulp_template_db_tbl.c | 8 ++++---- drivers/net/bnxt/tf_ulp/ulp_def_rules.c | 6 +++--- 7 files changed, 24 insertions(+), 21 deletions(-)
drivers/net/bnxt/bnxt.h +5 -1
@@ -240,7 +240,11 @@ struct bnxt_parent_info {struct bnxt_pf_info {#define BNXT_FIRST_PF_FID 1#define BNXT_MAX_VFS (bp) ((bp)->pf->max_vfs) -#define BNXT_MAX_VF_REPS 64 +#define BNXT_MAX_VF_REPS_WH 64 +#define BNXT_MAX_VF_REPS_TH 256 +#define BNXT_MAX_VF_REPS (bp) \ + (BNXT_CHIP_P5(bp) ? BNXT_MAX_VF_REPS_TH : \ + BNXT_MAX_VF_REPS_WH)#define BNXT_TOTAL_VFS (bp) ((bp)->pf->total_vfs)#define BNXT_FIRST_VF_FID 128#define BNXT_PF_RINGS_USED (bp) bnxt_get_num_queues(bp)
drivers/net/bnxt/bnxt_cpr.c +1 -1
@@ -74,7 +74,7 @@ bnxt_process_default_vnic_change(struct bnxt *bp,BNXT_DEFAULT_VNIC_CHANGE_VF_ID_SFT ;PMD_DRV_LOG (INFO ,"async event received vf_id 0x%x\n" , vf_fid); -for (vf_id =0 ; vf_id <BNXT_MAX_VF_REPS ; vf_id++) { +for (vf_id =0 ; vf_id <BNXT_MAX_VF_REPS (bp); vf_id++) { eth_dev = bp->rep_info[vf_id].vfr_eth_dev;if (!eth_dev)continue ;
drivers/net/bnxt/bnxt_ethdev.c +9 -9
@@ -1185,7 +1185,7 @@ void bnxt_print_link_info(struct rte_eth_dev *eth_dev)struct rte_eth_link *link = ð_dev->data->dev_link;if (link->link_status) - PMD_DRV_LOG(INFO, "Port %d Link Up - speed %u Mbps - %s\n", + PMD_DRV_LOG(DEBUG, "Port %d Link Up - speed %u Mbps - %s\n", eth_dev->data->port_id, (uint32_t)link->link_speed, (link->link_duplex == ETH_LINK_FULL_DUPLEX) ?
@@ -6046,7 +6046,7 @@ static int bnxt_init_rep_info(struct bnxt *bp)return 0 ; bp->rep_info =rte_zmalloc ("bnxt_rep_info" , -sizeof (bp->rep_info[0 ]) *BNXT_MAX_VF_REPS , +sizeof (bp->rep_info[0 ]) *BNXT_MAX_VF_REPS (bp),0 );if (!bp->rep_info) {PMD_DRV_LOG (ERR ,"Failed to alloc memory for rep info\n" );
@@ -6088,7 +6088,9 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev, {struct rte_eth_dev *vf_rep_eth_dev;char name[RTE_ETH_NAME_MAX_LEN ]; -struct bnxt *backing_bp; +struct bnxt *backing_bp = backing_eth_dev->data->dev_private; +uint16_t max_vf_reps =BNXT_MAX_VF_REPS (backing_bp); +uint16_t num_rep;int i, ret =0 ;struct rte_kvargs *kvlist =NULL ;
@@ -6101,9 +6103,9 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev,return -ENOTSUP ; } num_rep = eth_da->nb_representor_ports; -if (num_rep >BNXT_MAX_VF_REPS ) { +if (num_rep > max_vf_reps) {PMD_DRV_LOG (ERR ,"nb_representor_ports = %d > %d MAX VF REPS\n" , - num_rep,BNXT_MAX_VF_REPS ); + num_rep, max_vf_reps);return -EINVAL ; }
@@ -6114,8 +6116,6 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev,return -EINVAL ; } - backing_bp = backing_eth_dev->data->dev_private; -if (!(BNXT_PF (backing_bp) ||BNXT_VF_IS_TRUSTED (backing_bp))) {PMD_DRV_LOG (ERR ,"Not a PF or trusted VF. No Representor support\n" );
@@ -6135,9 +6135,9 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev, .parent_dev = backing_eth_dev }; -if (representor.vf_id >=BNXT_MAX_VF_REPS ) { +if (representor.vf_id >= max_vf_reps) {PMD_DRV_LOG (ERR ,"VF-Rep id %d >= %d MAX VF ID\n" , - representor.vf_id,BNXT_MAX_VF_REPS ); + representor.vf_id, max_vf_reps);continue ; }
drivers/net/bnxt/bnxt_reps.c +1 -2
@@ -209,7 +209,6 @@ int bnxt_representor_init(struct rte_eth_dev *eth_dev, void *params) eth_dev->data->dev_link.link_status = link->link_status; eth_dev->data->dev_link.link_autoneg = link->link_autoneg; -PMD_DRV_LOG (INFO ,"calling bnxt_print_link_info\n" );bnxt_print_link_info (eth_dev); PMD_DRV_LOG(INFO,
@@ -818,7 +817,7 @@ int bnxt_rep_stop_all(struct bnxt *bp)if (!bp->rep_info)return 0 ; -for (vf_id =0 ; vf_id <BNXT_MAX_VF_REPS ; vf_id++) { +for (vf_id =0 ; vf_id <BNXT_MAX_VF_REPS (bp); vf_id++) { rep_eth_dev = bp->rep_info[vf_id].vfr_eth_dev;if (!rep_eth_dev)continue ;
drivers/net/bnxt/tf_ulp/bnxt_ulp.h +1 -1
@@ -262,7 +262,7 @@ bnxt_ulp_cntxt_ptr2_ulp_flags_get(struct bnxt_ulp_context *ulp_ctx, uint32_t *flags);int32_t -bnxt_ulp_get_df_rule_info (uint8_t port_id,struct bnxt_ulp_context *ulp_ctx, +bnxt_ulp_get_df_rule_info (uint16_t port_id,struct bnxt_ulp_context *ulp_ctx,struct bnxt_ulp_df_rule_info *info); struct bnxt_ulp_vfr_rule_info*
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +4 -4
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Thu Sep 9 11:11:05 2021 */ +/* date: Thu Sep 16 11:49:55 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -164,12 +164,12 @@ struct bnxt_ulp_generic_tbl_params ulp_generic_tbl_params[] = { }, [BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_REC_CACHE <<1 |BNXT_ULP_DIRECTION_EGRESS ] = { - .name ="INGRESS GEN_TABLE_VXLAN_ENCAP_REC_CACHE" , - .result_num_entries =256 , + .name ="EGRESS GEN_TABLE_VXLAN_ENCAP_REC_CACHE" , + .result_num_entries =4096 , .result_num_bytes =6 , .key_num_bytes =17 , .num_buckets =8 , - .hash_tbl_entries =1024 , + .hash_tbl_entries =16384 , .result_byte_order =BNXT_ULP_BYTE_ORDER_LE } };
drivers/net/bnxt/tf_ulp/ulp_def_rules.c +3 -3
@@ -441,7 +441,7 @@ void bnxt_ulp_destroy_df_rules(struct bnxt *bp, bool global) {struct bnxt_ulp_df_rule_info *info; -uint8_t port_id; +uint16_t port_id;if (!BNXT_TRUFLOW_EN (bp) ||BNXT_ETH_DEV_IS_REPRESENTOR (bp->eth_dev))
@@ -505,7 +505,7 @@ int32_t bnxt_ulp_create_df_rules(struct bnxt *bp) {struct bnxt_ulp_df_rule_info *info; -uint8_t port_id; +uint16_t port_id;int rc =0 ; if (!BNXT_TRUFLOW_EN(bp) ||
@@ -562,7 +562,7 @@ bnxt_ulp_create_vfr_default_rules(struct rte_eth_dev *vfr_ethdev)struct rte_eth_dev *parent_dev = vfr->parent_dev;struct bnxt *bp = parent_dev->data->dev_private;uint16_t vfr_port_id = vfr_ethdev->data->port_id; -uint8_t port_id; +uint16_t port_id;int rc;if (!bp || !BNXT_TRUFLOW_EN (bp))
Signature · 1 line
2.17.1
v2 cover fixes and enhancements to Truflow
In reply to Venkat DuvvuruThis patch set adds enhancements and fixes to Truflow feature.
Enhancements include:
* Scaling numbers on Thor
* Inner IP header support for GRE tunnel flows
* Enable wildcard match for ingress flows
* Add clear on read for flow stats on Thor
* Add nat support for dest IP and port combination
* Remove 2-slice WC support
* Add support for socket redirect feature
* Add new API TruFlow get SRAM resources
* Remove accumulation of stats devargs argument
* Add TruFlow and AFM SRAM partitioning support
V2:
* Compilation fixes
* Remove 2-slice WC support
* Add support for socket redirect feature
* Add new API TruFlow get SRAM resources
* Remove accumulation of stats devargs argument
* Add TruFlow and AFM SRAM partitioning support
Farah Smith (1):
net/bnxt: add clear on read support
Jay Ding (4):
net/bnxt: get TruFlow version
net/bnxt: add new API TruFlow get SRAM resources net/bnxt: add TruFlow and AFM SRAM partitioning support net/bnxt: add Tx TruFlow table config for p4
Kishore Padmanabha (11):
net/bnxt: add NAT support for dest IP and port combination net/bnxt: add support for multi root capability net/bnxt: fix the out of boundary issue in hash list net/bnxt: add capability option for socket redirect net/bnxt: enable wildcard match for ingress flows net/bnxt: support inner IP header for GRE tunnel flows net/bnxt: remove accumulation of stats devargs argument net/bnxt: updated the log messages
net/bnxt: add support for socket redirect feature net/bnxt: delete the VF pair before VF representor alloc net/bnxt: check for mismatch of control and physical port
Mike Baucom (1):
net/bnxt: remove 2-slice WC entries for scale
Shahaji Bhosle (2):
net/bnxt: increase flow scale for Thor
net/bnxt: fix clang compiler warnings
drivers/net/bnxt/bnxt.h | 25 +- drivers/net/bnxt/bnxt_cpr.c | 2 +- drivers/net/bnxt/bnxt_ethdev.c | 274 +- drivers/net/bnxt/bnxt_hwrm.c | 36 + drivers/net/bnxt/bnxt_hwrm.h | 1 + drivers/net/bnxt/bnxt_reps.c | 9 +- drivers/net/bnxt/hsi_struct_def_dpdk.h | 2970 +++++++++++-- drivers/net/bnxt/tf_core/tf_core.c | 197 + drivers/net/bnxt/tf_core/tf_core.h | 202 + drivers/net/bnxt/tf_core/tf_device.c | 11 +- drivers/net/bnxt/tf_core/tf_device.h | 102 + drivers/net/bnxt/tf_core/tf_device_p4.c | 178 +- drivers/net/bnxt/tf_core/tf_device_p4.h | 137 +- drivers/net/bnxt/tf_core/tf_device_p58.c | 421 +- drivers/net/bnxt/tf_core/tf_device_p58.h | 205 +- drivers/net/bnxt/tf_core/tf_msg.c | 87 +- drivers/net/bnxt/tf_core/tf_msg.h | 31 +- drivers/net/bnxt/tf_core/tf_rm.c | 3 +- drivers/net/bnxt/tf_core/tf_sram_mgr.h | 10 - drivers/net/bnxt/tf_core/tf_tbl.c | 8 +- drivers/net/bnxt/tf_core/tf_tbl_sram.c | 13 +- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 58 +- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 9 +- drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c | 29 +- .../generic_templates/ulp_template_db_act.c | 376 +- .../generic_templates/ulp_template_db_class.c | 1986 ++++----- .../generic_templates/ulp_template_db_enum.h | 91 +- .../generic_templates/ulp_template_db_tbl.c | 3946 +++++++++++++---- .../ulp_template_db_thor_act.c | 150 +- .../ulp_template_db_thor_class.c | 909 ++-- .../ulp_template_db_wh_plus_act.c | 336 +- .../ulp_template_db_wh_plus_class.c | 222 +- drivers/net/bnxt/tf_ulp/ulp_def_rules.c | 8 +- drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c | 12 +- drivers/net/bnxt/tf_ulp/ulp_flow_db.c | 2 +- drivers/net/bnxt/tf_ulp/ulp_gen_hash.c | 20 +- drivers/net/bnxt/tf_ulp/ulp_mark_mgr.c | 2 +- drivers/net/bnxt/tf_ulp/ulp_port_db.c | 23 + drivers/net/bnxt/tf_ulp/ulp_port_db.h | 13 + drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 32 +- drivers/net/bnxt/tf_ulp/ulp_template_struct.h | 2 +- 41 files changed, 9254 insertions(+), 3894 deletions(-)
Signature · 1 line
2.17.1
PATCH v2 1/19 net/bnxt: add NAT support for dest IP and port combination
From: Kishore Padmanabha <[email protected]>
* Added support for NAT action for the destination IP and port combination for the Thor platform. This is not supported for Whitney platform.
* Consolidated the encapsulation and NAT entries for scaling flows with NAT actions.
--- .../generic_templates/ulp_template_db_act.c | 376 +++++++++++------- .../generic_templates/ulp_template_db_enum.h | 18 +- .../generic_templates/ulp_template_db_tbl.c | 14 +- .../ulp_template_db_thor_class.c | 2 +- .../ulp_template_db_wh_plus_act.c | 96 +++-- 5 files changed, 317 insertions(+), 189 deletions(-)
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_act.c +236 -140
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Mon May 17 15:30:41 2021 */ +/* date: Wed Aug 25 14:37:06 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -47,59 +47,67 @@ uint16_t ulp_act_sig_tbl[BNXT_ULP_ACT_SIG_TBL_MAX_SZ] = { [BNXT_ULP_ACT_HID_04bc] = 30, [BNXT_ULP_ACT_HID_00a9] = 31, [BNXT_ULP_ACT_HID_020f] = 32, - [BNXT_ULP_ACT_HID_04a9] = 33, - [BNXT_ULP_ACT_HID_01fc] = 34, - [BNXT_ULP_ACT_HID_04be] = 35, - [BNXT_ULP_ACT_HID_00ab] = 36, - [BNXT_ULP_ACT_HID_0211] = 37, - [BNXT_ULP_ACT_HID_04ab] = 38, - [BNXT_ULP_ACT_HID_01fe] = 39, - [BNXT_ULP_ACT_HID_0667] = 40, - [BNXT_ULP_ACT_HID_0254] = 41, - [BNXT_ULP_ACT_HID_03ba] = 42, - [BNXT_ULP_ACT_HID_0654] = 43, - [BNXT_ULP_ACT_HID_03a7] = 44, - [BNXT_ULP_ACT_HID_0669] = 45, - [BNXT_ULP_ACT_HID_0256] = 46, - [BNXT_ULP_ACT_HID_03bc] = 47, - [BNXT_ULP_ACT_HID_0656] = 48, - [BNXT_ULP_ACT_HID_03a9] = 49, - [BNXT_ULP_ACT_HID_021b] = 50, - [BNXT_ULP_ACT_HID_021c] = 51, - [BNXT_ULP_ACT_HID_021e] = 52, - [BNXT_ULP_ACT_HID_063f] = 53, - [BNXT_ULP_ACT_HID_0510] = 54, - [BNXT_ULP_ACT_HID_03c6] = 55, - [BNXT_ULP_ACT_HID_0082] = 56, - [BNXT_ULP_ACT_HID_06bb] = 57, - [BNXT_ULP_ACT_HID_021d] = 58, - [BNXT_ULP_ACT_HID_0641] = 59, - [BNXT_ULP_ACT_HID_0512] = 60, - [BNXT_ULP_ACT_HID_03c8] = 61, - [BNXT_ULP_ACT_HID_0084] = 62, - [BNXT_ULP_ACT_HID_06bd] = 63, - [BNXT_ULP_ACT_HID_06d7] = 64, - [BNXT_ULP_ACT_HID_02c4] = 65, - [BNXT_ULP_ACT_HID_042a] = 66, - [BNXT_ULP_ACT_HID_06c4] = 67, - [BNXT_ULP_ACT_HID_0417] = 68, - [BNXT_ULP_ACT_HID_06d9] = 69, - [BNXT_ULP_ACT_HID_02c6] = 70, - [BNXT_ULP_ACT_HID_042c] = 71, - [BNXT_ULP_ACT_HID_06c6] = 72, - [BNXT_ULP_ACT_HID_0419] = 73, - [BNXT_ULP_ACT_HID_0119] = 74, - [BNXT_ULP_ACT_HID_046f] = 75, - [BNXT_ULP_ACT_HID_05d5] = 76, - [BNXT_ULP_ACT_HID_0106] = 77, - [BNXT_ULP_ACT_HID_05c2] = 78, - [BNXT_ULP_ACT_HID_011b] = 79, - [BNXT_ULP_ACT_HID_0471] = 80, - [BNXT_ULP_ACT_HID_05d7] = 81, - [BNXT_ULP_ACT_HID_0108] = 82, - [BNXT_ULP_ACT_HID_05c4] = 83, - [BNXT_ULP_ACT_HID_00a2] = 84, - [BNXT_ULP_ACT_HID_00a4] = 85 + [BNXT_ULP_ACT_HID_0153] = 33, + [BNXT_ULP_ACT_HID_04a9] = 34, + [BNXT_ULP_ACT_HID_01fc] = 35, + [BNXT_ULP_ACT_HID_04be] = 36, + [BNXT_ULP_ACT_HID_00ab] = 37, + [BNXT_ULP_ACT_HID_0211] = 38, + [BNXT_ULP_ACT_HID_0155] = 39, + [BNXT_ULP_ACT_HID_04ab] = 40, + [BNXT_ULP_ACT_HID_01fe] = 41, + [BNXT_ULP_ACT_HID_0667] = 42, + [BNXT_ULP_ACT_HID_0254] = 43, + [BNXT_ULP_ACT_HID_03ba] = 44, + [BNXT_ULP_ACT_HID_02fe] = 45, + [BNXT_ULP_ACT_HID_0654] = 46, + [BNXT_ULP_ACT_HID_03a7] = 47, + [BNXT_ULP_ACT_HID_0669] = 48, + [BNXT_ULP_ACT_HID_0256] = 49, + [BNXT_ULP_ACT_HID_03bc] = 50, + [BNXT_ULP_ACT_HID_0300] = 51, + [BNXT_ULP_ACT_HID_0656] = 52, + [BNXT_ULP_ACT_HID_03a9] = 53, + [BNXT_ULP_ACT_HID_021b] = 54, + [BNXT_ULP_ACT_HID_021c] = 55, + [BNXT_ULP_ACT_HID_021e] = 56, + [BNXT_ULP_ACT_HID_063f] = 57, + [BNXT_ULP_ACT_HID_0510] = 58, + [BNXT_ULP_ACT_HID_03c6] = 59, + [BNXT_ULP_ACT_HID_0082] = 60, + [BNXT_ULP_ACT_HID_06bb] = 61, + [BNXT_ULP_ACT_HID_021d] = 62, + [BNXT_ULP_ACT_HID_0641] = 63, + [BNXT_ULP_ACT_HID_0512] = 64, + [BNXT_ULP_ACT_HID_03c8] = 65, + [BNXT_ULP_ACT_HID_0084] = 66, + [BNXT_ULP_ACT_HID_06bd] = 67, + [BNXT_ULP_ACT_HID_06d7] = 68, + [BNXT_ULP_ACT_HID_02c4] = 69, + [BNXT_ULP_ACT_HID_042a] = 70, + [BNXT_ULP_ACT_HID_036e] = 71, + [BNXT_ULP_ACT_HID_06c4] = 72, + [BNXT_ULP_ACT_HID_0417] = 73, + [BNXT_ULP_ACT_HID_06d9] = 74, + [BNXT_ULP_ACT_HID_02c6] = 75, + [BNXT_ULP_ACT_HID_042c] = 76, + [BNXT_ULP_ACT_HID_0370] = 77, + [BNXT_ULP_ACT_HID_06c6] = 78, + [BNXT_ULP_ACT_HID_0419] = 79, + [BNXT_ULP_ACT_HID_0119] = 80, + [BNXT_ULP_ACT_HID_046f] = 81, + [BNXT_ULP_ACT_HID_05d5] = 82, + [BNXT_ULP_ACT_HID_0519] = 83, + [BNXT_ULP_ACT_HID_0106] = 84, + [BNXT_ULP_ACT_HID_05c2] = 85, + [BNXT_ULP_ACT_HID_011b] = 86, + [BNXT_ULP_ACT_HID_0471] = 87, + [BNXT_ULP_ACT_HID_05d7] = 88, + [BNXT_ULP_ACT_HID_051b] = 89, + [BNXT_ULP_ACT_HID_0108] = 90, + [BNXT_ULP_ACT_HID_05c4] = 91, + [BNXT_ULP_ACT_HID_00a2] = 92, + [BNXT_ULP_ACT_HID_00a4] = 93 };/* Array for the act matcher list */
@@ -429,22 +437,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { .act_tid = 3 }, [33] = { - .act_hid = BNXT_ULP_ACT_HID_04a9, + .act_hid = BNXT_ULP_ACT_HID_0153, .act_pattern_id = 3, .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_SET_IPV4_DST | -BNXT_ULP_ACT_BIT_SET_TP_SRC |BNXT_ULP_ACT_BIT_SET_TP_DST | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, [34] = { - .act_hid = BNXT_ULP_ACT_HID_01fc, + .act_hid = BNXT_ULP_ACT_HID_04a9, .act_pattern_id = 4, .app_sig = 0, .act_sig = { .bits = -BNXT_ULP_ACT_BIT_SET_IPV4_SRC |BNXT_ULP_ACT_BIT_SET_IPV4_DST |BNXT_ULP_ACT_BIT_SET_TP_SRC | BNXT_ULP_ACT_BIT_SET_TP_DST |
@@ -452,40 +458,63 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { .act_tid = 3 }, [35] = { - .act_hid = BNXT_ULP_ACT_HID_04be, + .act_hid = BNXT_ULP_ACT_HID_01fc, .act_pattern_id = 5, .app_sig = 0, .act_sig = { .bits = -BNXT_ULP_ACT_BIT_COUNT |BNXT_ULP_ACT_BIT_SET_IPV4_SRC | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_SRC | +BNXT_ULP_ACT_BIT_SET_TP_DST | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, [36] = { - .act_hid = BNXT_ULP_ACT_HID_00ab, + .act_hid = BNXT_ULP_ACT_HID_04be, .act_pattern_id = 6, .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_COUNT |BNXT_ULP_ACT_BIT_SET_IPV4_SRC | -BNXT_ULP_ACT_BIT_SET_TP_SRC | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, [37] = { - .act_hid = BNXT_ULP_ACT_HID_0211, + .act_hid = BNXT_ULP_ACT_HID_00ab, .act_pattern_id = 7, .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_COUNT | -BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_IPV4_SRC | +BNXT_ULP_ACT_BIT_SET_TP_SRC | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, [38] = { - .act_hid = BNXT_ULP_ACT_HID_04ab, + .act_hid = BNXT_ULP_ACT_HID_0211, .act_pattern_id = 8, .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid =3 + }, + [39] = { + .act_hid = BNXT_ULP_ACT_HID_0155, + .act_pattern_id = 9, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid =3 + }, + [40] = { + .act_hid = BNXT_ULP_ACT_HID_04ab, + .act_pattern_id = 10, + .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_COUNT | BNXT_ULP_ACT_BIT_SET_IPV4_DST |
@@ -494,9 +523,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [39] = { + [41] = { .act_hid = BNXT_ULP_ACT_HID_01fe, - .act_pattern_id = 9, + .act_pattern_id = 11, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -507,9 +536,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [40] = { + [42] = { .act_hid = BNXT_ULP_ACT_HID_0667, - .act_pattern_id = 10, + .act_pattern_id = 12, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -517,9 +546,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [41] = { + [43] = { .act_hid = BNXT_ULP_ACT_HID_0254, - .act_pattern_id = 11, + .act_pattern_id = 13, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -528,9 +557,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [42] = { + [44] = { .act_hid = BNXT_ULP_ACT_HID_03ba, - .act_pattern_id = 12, + .act_pattern_id = 14, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -538,9 +567,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [43] = { + [45] = { + .act_hid = BNXT_ULP_ACT_HID_02fe, + .act_pattern_id = 15, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_DEC_TTL | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid =3 + }, + [46] = { .act_hid = BNXT_ULP_ACT_HID_0654, - .act_pattern_id = 13, + .act_pattern_id = 16, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -550,9 +590,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [44] = { + [47] = { .act_hid = BNXT_ULP_ACT_HID_03a7, - .act_pattern_id = 14, + .act_pattern_id = 17, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -563,9 +603,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [45] = { + [48] = { .act_hid = BNXT_ULP_ACT_HID_0669, - .act_pattern_id = 15, + .act_pattern_id = 18, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -574,9 +614,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [46] = { + [49] = { .act_hid = BNXT_ULP_ACT_HID_0256, - .act_pattern_id = 16, + .act_pattern_id = 19, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -586,9 +626,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [47] = { + [50] = { .act_hid = BNXT_ULP_ACT_HID_03bc, - .act_pattern_id = 17, + .act_pattern_id = 20, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -597,9 +637,21 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [48] = { + [51] = { + .act_hid = BNXT_ULP_ACT_HID_0300, + .act_pattern_id = 21, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_DEC_TTL | +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid =3 + }, + [52] = { .act_hid = BNXT_ULP_ACT_HID_0656, - .act_pattern_id = 18, + .act_pattern_id = 22, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -610,9 +662,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [49] = { + [53] = { .act_hid = BNXT_ULP_ACT_HID_03a9, - .act_pattern_id = 19, + .act_pattern_id = 23, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -624,7 +676,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [50] = { + [54] = { .act_hid = BNXT_ULP_ACT_HID_021b, .act_pattern_id = 0, .app_sig = 0,
@@ -632,7 +684,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [51] = { + [55] = { .act_hid = BNXT_ULP_ACT_HID_021c, .act_pattern_id = 1, .app_sig = 0,
@@ -641,7 +693,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [52] = { + [56] = { .act_hid = BNXT_ULP_ACT_HID_021e, .act_pattern_id = 2, .app_sig = 0,
@@ -651,7 +703,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [53] = { + [57] = { .act_hid = BNXT_ULP_ACT_HID_063f, .act_pattern_id = 3, .app_sig = 0,
@@ -662,7 +714,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [54] = { + [58] = { .act_hid = BNXT_ULP_ACT_HID_0510, .act_pattern_id = 4, .app_sig = 0,
@@ -672,7 +724,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [55] = { + [59] = { .act_hid = BNXT_ULP_ACT_HID_03c6, .act_pattern_id = 5, .app_sig = 0,
@@ -681,7 +733,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [56] = { + [60] = { .act_hid = BNXT_ULP_ACT_HID_0082, .act_pattern_id = 6, .app_sig = 0,
@@ -693,7 +745,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [57] = { + [61] = { .act_hid = BNXT_ULP_ACT_HID_06bb, .act_pattern_id = 7, .app_sig = 0,
@@ -704,7 +756,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [58] = { + [62] = { .act_hid = BNXT_ULP_ACT_HID_021d, .act_pattern_id = 8, .app_sig = 0,
@@ -713,7 +765,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [59] = { + [63] = { .act_hid = BNXT_ULP_ACT_HID_0641, .act_pattern_id = 9, .app_sig = 0,
@@ -725,7 +777,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [60] = { + [64] = { .act_hid = BNXT_ULP_ACT_HID_0512, .act_pattern_id = 10, .app_sig = 0,
@@ -736,7 +788,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [61] = { + [65] = { .act_hid = BNXT_ULP_ACT_HID_03c8, .act_pattern_id = 11, .app_sig = 0,
@@ -746,7 +798,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [62] = { + [66] = { .act_hid = BNXT_ULP_ACT_HID_0084, .act_pattern_id = 12, .app_sig = 0,
@@ -759,7 +811,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [63] = { + [67] = { .act_hid = BNXT_ULP_ACT_HID_06bd, .act_pattern_id = 13, .app_sig = 0,
@@ -771,7 +823,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [64] = { + [68] = { .act_hid = BNXT_ULP_ACT_HID_06d7, .act_pattern_id = 0, .app_sig = 0,
@@ -780,7 +832,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [65] = { + [69] = { .act_hid = BNXT_ULP_ACT_HID_02c4, .act_pattern_id = 1, .app_sig = 0,
@@ -790,7 +842,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [66] = { + [70] = { .act_hid = BNXT_ULP_ACT_HID_042a, .act_pattern_id = 2, .app_sig = 0,
@@ -799,10 +851,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [67] = { - .act_hid = BNXT_ULP_ACT_HID_06c4, + [71] = { + .act_hid = BNXT_ULP_ACT_HID_036e, .act_pattern_id = 3, .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid =5 + }, + [72] = { + .act_hid = BNXT_ULP_ACT_HID_06c4, + .act_pattern_id = 4, + .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_SET_IPV4_DST | BNXT_ULP_ACT_BIT_SET_TP_SRC |
@@ -810,9 +872,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [68] = { + [73] = { .act_hid = BNXT_ULP_ACT_HID_0417, - .act_pattern_id = 4, + .act_pattern_id = 5, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@@ -822,9 +884,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [69] = { + [74] = { .act_hid = BNXT_ULP_ACT_HID_06d9, - .act_pattern_id = 5, + .act_pattern_id = 6, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -832,9 +894,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [70] = { + [75] = { .act_hid = BNXT_ULP_ACT_HID_02c6, - .act_pattern_id = 6, + .act_pattern_id = 7, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -843,9 +905,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [71] = { + [76] = { .act_hid = BNXT_ULP_ACT_HID_042c, - .act_pattern_id = 7, + .act_pattern_id = 8, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -853,9 +915,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [72] = { + [77] = { + .act_hid = BNXT_ULP_ACT_HID_0370, + .act_pattern_id = 9, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid =5 + }, + [78] = { .act_hid = BNXT_ULP_ACT_HID_06c6, - .act_pattern_id = 8, + .act_pattern_id = 10, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -865,9 +938,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [73] = { + [79] = { .act_hid = BNXT_ULP_ACT_HID_0419, - .act_pattern_id = 9, + .act_pattern_id = 11, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -878,9 +951,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [74] = { + [80] = { .act_hid = BNXT_ULP_ACT_HID_0119, - .act_pattern_id = 10, + .act_pattern_id = 12, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -888,9 +961,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [75] = { + [81] = { .act_hid = BNXT_ULP_ACT_HID_046f, - .act_pattern_id = 11, + .act_pattern_id = 13, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -899,9 +972,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [76] = { + [82] = { .act_hid = BNXT_ULP_ACT_HID_05d5, - .act_pattern_id = 12, + .act_pattern_id = 14, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -909,9 +982,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [77] = { + [83] = { + .act_hid = BNXT_ULP_ACT_HID_0519, + .act_pattern_id = 15, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_DEC_TTL | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid =5 + }, + [84] = { .act_hid = BNXT_ULP_ACT_HID_0106, - .act_pattern_id = 13, + .act_pattern_id = 16, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -921,9 +1005,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [78] = { + [85] = { .act_hid = BNXT_ULP_ACT_HID_05c2, - .act_pattern_id = 14, + .act_pattern_id = 17, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -934,9 +1018,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [79] = { + [86] = { .act_hid = BNXT_ULP_ACT_HID_011b, - .act_pattern_id = 15, + .act_pattern_id = 18, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -945,9 +1029,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [80] = { + [87] = { .act_hid = BNXT_ULP_ACT_HID_0471, - .act_pattern_id = 16, + .act_pattern_id = 19, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -957,9 +1041,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [81] = { + [88] = { .act_hid = BNXT_ULP_ACT_HID_05d7, - .act_pattern_id = 17, + .act_pattern_id = 20, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -968,9 +1052,21 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [82] = { + [89] = { + .act_hid = BNXT_ULP_ACT_HID_051b, + .act_pattern_id = 21, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_DEC_TTL | +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid =5 + }, + [90] = { .act_hid = BNXT_ULP_ACT_HID_0108, - .act_pattern_id = 18, + .act_pattern_id = 22, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -981,9 +1077,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [83] = { + [91] = { .act_hid = BNXT_ULP_ACT_HID_05c4, - .act_pattern_id = 19, + .act_pattern_id = 23, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -995,7 +1091,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [84] = { + [92] = { .act_hid = BNXT_ULP_ACT_HID_00a2, .act_pattern_id = 0, .app_sig = 0,
@@ -1004,7 +1100,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =6 }, - [85] = { + [93] = { .act_hid = BNXT_ULP_ACT_HID_00a4, .act_pattern_id = 1, .app_sig = 0,
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +13 -5
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Fri Aug 20 17:59:14 2021 */ +/* date: Thu Aug 26 17:43:36 2021 */ #ifndef ULP_TEMPLATE_DB_H_ #define ULP_TEMPLATE_DB_H_
@@ -20,7 +20,7 @@#define BNXT_ULP_CLASS_HID_SHFTL 28#define BNXT_ULP_CLASS_HID_MASK 65535#define BNXT_ULP_ACT_SIG_TBL_MAX_SZ 2048 -#define BNXT_ULP_ACT_MATCH_LIST_MAX_SZ 86 +#define BNXT_ULP_ACT_MATCH_LIST_MAX_SZ 94#define BNXT_ULP_ACT_HID_LOW_PRIME 7919#define BNXT_ULP_ACT_HID_HIGH_PRIME 3793#define BNXT_ULP_ACT_HID_SHFTR 27
@@ -29,7 +29,7 @@#define BNXT_ULP_APP_RESOURCE_RESV_LIST_MAX_SZ 8#define BNXT_ULP_GLB_RESOURCE_TBL_MAX_SZ 110#define BNXT_ULP_APP_GLB_RESOURCE_TBL_MAX_SZ 50 -#define BNXT_ULP_RESOURCE_RESV_LIST_MAX_SZ 278 +#define BNXT_ULP_RESOURCE_RESV_LIST_MAX_SZ 277#define BNXT_ULP_APP_CAP_TBL_MAX_SZ 8#define BNXT_ULP_COND_GOTO_REJECT 1023#define BNXT_ULP_COND_GOTO_RF 0x10000
@@ -50,11 +50,11 @@#define ULP_THOR_CLASS_RESULT_FIELD_LIST_SIZE 1313#define ULP_THOR_CLASS_COND_LIST_SIZE 55#define ULP_WH_PLUS_ACT_TMPL_LIST_SIZE 7 -#define ULP_WH_PLUS_ACT_TBL_LIST_SIZE 35 +#define ULP_WH_PLUS_ACT_TBL_LIST_SIZE 37#define ULP_WH_PLUS_ACT_KEY_INFO_LIST_SIZE 2#define ULP_WH_PLUS_ACT_IDENT_LIST_SIZE 1#define ULP_WH_PLUS_ACT_RESULT_FIELD_LIST_SIZE 536 -#define ULP_WH_PLUS_ACT_COND_LIST_SIZE 39 +#define ULP_WH_PLUS_ACT_COND_LIST_SIZE 41#define ULP_THOR_ACT_TMPL_LIST_SIZE 7#define ULP_THOR_ACT_TBL_LIST_SIZE 36#define ULP_THOR_ACT_KEY_INFO_LIST_SIZE 16
@@ -2224,21 +2224,25 @@ enum bnxt_ulp_act_hid { BNXT_ULP_ACT_HID_04bc =0x04bc , BNXT_ULP_ACT_HID_00a9 =0x00a9 , BNXT_ULP_ACT_HID_020f =0x020f , +BNXT_ULP_ACT_HID_0153 =0x0153 , BNXT_ULP_ACT_HID_04a9 =0x04a9 , BNXT_ULP_ACT_HID_01fc =0x01fc , BNXT_ULP_ACT_HID_04be =0x04be , BNXT_ULP_ACT_HID_00ab =0x00ab ,BNXT_ULP_ACT_HID_0211 =0x0211 , +BNXT_ULP_ACT_HID_0155 =0x0155 , BNXT_ULP_ACT_HID_04ab =0x04ab , BNXT_ULP_ACT_HID_01fe =0x01fe ,BNXT_ULP_ACT_HID_0667 =0x0667 ,BNXT_ULP_ACT_HID_0254 =0x0254 , BNXT_ULP_ACT_HID_03ba =0x03ba , + BNXT_ULP_ACT_HID_02fe =0x02fe ,BNXT_ULP_ACT_HID_0654 =0x0654 , BNXT_ULP_ACT_HID_03a7 =0x03a7 ,BNXT_ULP_ACT_HID_0669 =0x0669 ,BNXT_ULP_ACT_HID_0256 =0x0256 , BNXT_ULP_ACT_HID_03bc =0x03bc , +BNXT_ULP_ACT_HID_0300 =0x0300 ,BNXT_ULP_ACT_HID_0656 =0x0656 , BNXT_ULP_ACT_HID_03a9 =0x03a9 , BNXT_ULP_ACT_HID_021b = 0x021b,
@@ -2258,21 +2262,25 @@ enum bnxt_ulp_act_hid { BNXT_ULP_ACT_HID_06d7 =0x06d7 , BNXT_ULP_ACT_HID_02c4 =0x02c4 , BNXT_ULP_ACT_HID_042a =0x042a , + BNXT_ULP_ACT_HID_036e =0x036e , BNXT_ULP_ACT_HID_06c4 =0x06c4 ,BNXT_ULP_ACT_HID_0417 =0x0417 , BNXT_ULP_ACT_HID_06d9 =0x06d9 , BNXT_ULP_ACT_HID_02c6 =0x02c6 , BNXT_ULP_ACT_HID_042c =0x042c , +BNXT_ULP_ACT_HID_0370 =0x0370 , BNXT_ULP_ACT_HID_06c6 =0x06c6 ,BNXT_ULP_ACT_HID_0419 =0x0419 ,BNXT_ULP_ACT_HID_0119 =0x0119 , BNXT_ULP_ACT_HID_046f =0x046f , BNXT_ULP_ACT_HID_05d5 =0x05d5 , +BNXT_ULP_ACT_HID_0519 =0x0519 ,BNXT_ULP_ACT_HID_0106 =0x0106 , BNXT_ULP_ACT_HID_05c2 =0x05c2 , BNXT_ULP_ACT_HID_011b =0x011b ,BNXT_ULP_ACT_HID_0471 =0x0471 , BNXT_ULP_ACT_HID_05d7 =0x05d7 , + BNXT_ULP_ACT_HID_051b =0x051b ,BNXT_ULP_ACT_HID_0108 =0x0108 , BNXT_ULP_ACT_HID_05c4 =0x05c4 , BNXT_ULP_ACT_HID_00a2 = 0x00a2,
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +3 -11
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Tue Aug 17 12:16:42 2021 */ +/* date: Thu Aug 26 17:43:36 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -2121,7 +2121,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count =64 + .count =2048 }, { .app_id = 0,
@@ -2249,7 +2249,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count =64 + .count =2048 }, { .app_id = 0,
@@ -2263,14 +2263,6 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_MODIFY_64B, - .count =32 - }, - { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type =TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW , .count = 272
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c +1 -1
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Fri Aug 20 18:05:25 2021 */ +/* date: Wed Aug 25 16:41:37 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c +64 -32
293 lines not on this page · raw message
Signature · 1 line
2.17.1
PATCH v2 2/19 net/bnxt: add support for multi root capability
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
Update driver to read the multi root capability and ignore pci address check while creating ulp session when multi root capability is enabled in the hardware. DPDK HSI version updated from 1.10.1.70 to 1.10.2.54.
--- drivers/net/bnxt/bnxt.h | 3 + drivers/net/bnxt/bnxt_hwrm.c | 8 + drivers/net/bnxt/hsi_struct_def_dpdk.h | 2682 +++++++++++++++++++++--- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 10 +- 4 files changed, 2407 insertions(+), 296 deletions(-)
drivers/net/bnxt/bnxt.h +3 -0
@@ -723,6 +723,9 @@ struct bnxt {uint16_t chip_num;#define CHIP_NUM_58818 0xd818#define BNXT_CHIP_SR2 (bp) ((bp)->chip_num == CHIP_NUM_58818) +#define BNXT_FLAGS2_MULTIROOT_EN BIT(4) +#define BNXT_MULTIROOT_EN (bp) \ + ((bp)->flags2 & BNXT_FLAGS2_MULTIROOT_EN)uint32_t fw_cap;#define BNXT_FW_CAP_HOT_RESET BIT(0)
drivers/net/bnxt/bnxt_hwrm.c +8 -0
@@ -3394,6 +3394,7 @@ int bnxt_hwrm_parent_pf_qcfg(struct bnxt *bp) {struct hwrm_func_qcfg_input req = {0 };struct hwrm_func_qcfg_output *resp = bp->hwrm_cmd_resp_addr; +uint16_t flags;int rc;if (!BNXT_VF_IS_TRUSTED (bp))
@@ -3417,6 +3418,13 @@ int bnxt_hwrm_parent_pf_qcfg(struct bnxt *bp) bp->parent->fid =rte_le_to_cpu_16 (resp->fid); bp->parent->port_id =rte_le_to_cpu_16 (resp->port_id); + flags =rte_le_to_cpu_16 (resp->flags); +/* check for the multi-root support */ +if (flags &HWRM_FUNC_QCFG_OUTPUT_FLAGS_MULTI_ROOT ) { + bp->flags2 |=BNXT_FLAGS2_MULTIROOT_EN ; +PMD_DRV_LOG (DEBUG ,"PF enabled with multi root capability\n" ); + } +HWRM_UNLOCK ();return 0 ;
drivers/net/bnxt/hsi_struct_def_dpdk.h +2390 -292
2,971 lines not on this page · raw message
The rest of this diff is not shown. View the raw message.
Signature · 1 line
2.17.1
Part of the diff is not shown here. View the raw message.
PATCH v2 3/19 net/bnxt: fix the out of boundary issue in hash list
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
The number of hash bucket list calculation is fixed and added check to limit the out of boundary condition
--- drivers/net/bnxt/tf_ulp/ulp_gen_hash.c | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-)
drivers/net/bnxt/tf_ulp/ulp_gen_hash.c +14 -6
@@ -16,20 +16,21 @@ int32_t ulp_bit_alloc_list_alloc(struct bit_alloc_list *blist, {uint64_t bentry;uint32_t idx =0 , jdx =0 ; +uint32_t bsize_64 = blist->bsize /ULP_64B_IN_BYTES ;/* Iterate all numbers that have all 1's */ do { bentry = blist->bdata[idx++]; - }while (bentry ==-1UL && idx < blist->bsize); + }while (bentry ==-1UL && idx <= bsize_64); -if (idx < blist->bsize) { +if (idx <= bsize_64) {if (bentry) jdx =__builtin_clzl (~bentry); *index = ((idx -1 ) *ULP_INDEX_BITMAP_SIZE ) + jdx;ULP_INDEX_BITMAP_SET (blist->bdata[(idx -1 )], jdx);return 0 ; } - jdx = (uint32_t )(blist->bsize *ULP_INDEX_BITMAP_SIZE ); + jdx = (uint32_t )(bsize_64 *ULP_INDEX_BITMAP_SIZE );BNXT_TF_DBG (ERR ,"bit allocator is full reached max:%x\n" , jdx);return -1 ; }
@@ -39,9 +40,10 @@ int32_t ulp_bit_alloc_list_dealloc(struct bit_alloc_list *blist, uint32_t index) {uint32_t idx =0 , jdx; +uint32_t bsize_64 = blist->bsize /ULP_64B_IN_BYTES ; idx = index /ULP_INDEX_BITMAP_SIZE ; -if (idx >= blist->bsize) { +if (idx >= bsize_64) {BNXT_TF_DBG (ERR ,"invalid bit index %x:%x\n" , idx, blist->bsize);return -EINVAL ;
@@ -127,7 +129,8 @@ ulp_gen_hash_tbl_list_init(struct ulp_hash_create_params *cparams, hash_tbl->hash_mask = size -1 ;/* allocate the memory for the bit allocator */ - size = (cparams->num_key_entries /sizeof (uint64_t )) +1 ; + size = (cparams->num_key_entries /sizeof (uint64_t )); + size =ULP_BYTE_ROUND_OFF_8 (size); hash_tbl->bit_list.bsize = size; hash_tbl->bit_list.bdata =rte_zmalloc ("Generic hash bit alloc" , size,ULP_BUFFER_ALIGN_64_BYTE );
@@ -311,7 +314,12 @@ ulp_gen_hash_tbl_list_add(struct ulp_gen_hash_tbl *hash_tbl,BNXT_TF_DBG (ERR ,"Error in bit list alloc\n" );return -ENOMEM ; } - +if (key_index > hash_tbl->num_key_entries) { +BNXT_TF_DBG (ERR ,"reached max size %u:%u\n" , key_index, + hash_tbl->num_key_entries); +ulp_bit_alloc_list_dealloc (&hash_tbl->bit_list, key_index); +return -ENOMEM ; + }/* Update the hash entry */ ULP_HASH_BUCKET_MARK_INUSE (bucket, (uint16_t )key_index);
Signature · 1 line
2.17.1
PATCH v2 4/19 net/bnxt: add clear on read support
In reply to Venkat DuvvuruFrom: Farah Smith <[email protected]>
Add clear on read stats support for Thor. Currently, the flow stats are not cleared after they are read from the FW. This patch adds support for clear on read. Since clear on read support is added for flow stats in Thor, the flow accumulation is enabled on Thor as well.
--- drivers/net/bnxt/hsi_struct_def_dpdk.h | 34 ++++++++++++++++++++------ drivers/net/bnxt/tf_core/tf_msg.c | 24 +++++++++++++++--- drivers/net/bnxt/tf_core/tf_msg.h | 6 +++-- drivers/net/bnxt/tf_core/tf_tbl.c | 6 +++-- drivers/net/bnxt/tf_core/tf_tbl_sram.c | 13 ++++++++-- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 3 ++- 6 files changed, 67 insertions(+), 19 deletions(-)
drivers/net/bnxt/hsi_struct_def_dpdk.h +26 -8
@@ -1058,8 +1058,8 @@ struct hwrm_err_output {#define HWRM_VERSION_MINOR 10#define HWRM_VERSION_UPDATE 2/* non-zero means beta version */ -#define HWRM_VERSION_RSVD 54 -#define HWRM_VERSION_STR "1.10.2.54" +#define HWRM_VERSION_RSVD 55 +#define HWRM_VERSION_STR "1.10.2.55"/**************** * hwrm_ver_get *
@@ -46253,13 +46253,22 @@ struct hwrm_tf_tbl_type_get_input {/* Control flags. */ uint16_t flags;/* Indicates the flow direction. */ -#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR UINT32_C(0x1) +#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR \ + UINT32_C(0x1)/* If this bit set to 0, then it indicates rx flow. */ -#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) +#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_RX \ + UINT32_C(0x0)/* If this bit is set to 1, then it indicates tx flow. */ -#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) +#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX \ + UINT32_C(0x1)#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX +/* +* When set use the special access register access to clear +* the table entry on read. +*/ +#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_CLEAR_ON_READ \ + UINT32_C(0x2)/* unused. */ uint8_t unused0[2 ];/*
@@ -48489,13 +48498,22 @@ struct hwrm_tf_tbl_type_bulk_get_input {/* Control flags. */ uint16_t flags;/* Indicates the flow direction. */ -#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR UINT32_C(0x1) +#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR \ + UINT32_C(0x1)/* If this bit set to 0, then it indicates rx flow. */ -#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) +#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_RX \ + UINT32_C(0x0)/* If this bit is set to 1, then it indicates tx flow. */ -#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) +#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX \ + UINT32_C(0x1)#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX +/* +* When set use the special access register access to clear +* the table entries on read. +*/ +#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_CLEAR_ON_READ \ + UINT32_C(0x2)/* unused. */ uint8_t unused0[2 ];/*
drivers/net/bnxt/tf_core/tf_msg.c +20 -4
@@ -1851,7 +1851,8 @@ tf_msg_get_tbl_entry(struct tf *tfp,uint16_t hcapi_type, uint16_t size, uint8_t *data, - uint32_t index) + uint32_t index, + bool clear_on_read) { int rc;struct hwrm_tf_tbl_type_get_input req = {0 };
@@ -1860,6 +1861,7 @@ tf_msg_get_tbl_entry(struct tf *tfp,uint8_t fw_session_id;struct tf_dev_info *dev;struct tf_session *tfs; +uint32_t flags =0 ;/* Retrieve the session information */ rc =tf_session_get_session_internal (tfp, &tfs);
@@ -1889,10 +1891,16 @@ tf_msg_get_tbl_entry(struct tf *tfp, strerror(-rc));return rc; } + flags = (dir ==TF_DIR_TX ? +HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX : +HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_RX ); + +if (clear_on_read) + flags |=HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_CLEAR_ON_READ ;/* Populate the request */ req.fw_session_id =tfp_cpu_to_le_32 (fw_session_id); - req.flags =tfp_cpu_to_le_16 (dir); + req.flags =tfp_cpu_to_le_16 (flags); req.type =tfp_cpu_to_le_32 (hcapi_type); req.index =tfp_cpu_to_le_32 (index);
@@ -2105,7 +2113,8 @@ tf_msg_bulk_get_tbl_entry(struct tf *tfp,uint32_t starting_idx, uint16_t num_entries, uint16_t entry_sz_in_bytes, - uint64_t physical_mem_addr) + uint64_t physical_mem_addr, + bool clear_on_read) { int rc;struct tfp_send_msg_parms parms = {0 };
@@ -2115,6 +2124,7 @@ tf_msg_bulk_get_tbl_entry(struct tf *tfp,uint8_t fw_session_id;struct tf_dev_info *dev;struct tf_session *tfs; +uint32_t flags =0 ;/* Retrieve the session information */ rc =tf_session_get_session (tfp, &tfs);
@@ -2144,10 +2154,16 @@ tf_msg_bulk_get_tbl_entry(struct tf *tfp, strerror(-rc));return rc; } + flags = (dir ==TF_DIR_TX ? +HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX : +HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_RX ); + +if (clear_on_read) + flags |=HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_CLEAR_ON_READ ;/* Populate the request */ req.fw_session_id =tfp_cpu_to_le_32 (fw_session_id); - req.flags =tfp_cpu_to_le_16 (dir); + req.flags =tfp_cpu_to_le_16 (flags); req.type =tfp_cpu_to_le_32 (hcapi_type); req.start_index =tfp_cpu_to_le_32 (starting_idx); req.num_entries =tfp_cpu_to_le_32 (num_entries);
drivers/net/bnxt/tf_core/tf_msg.h +4 -2
@@ -652,7 +652,8 @@ int tf_msg_get_tbl_entry(struct tf *tfp,uint16_t hcapi_type, uint16_t size, uint8_t *data, - uint32_t index); + uint32_t index, + bool clear_on_read);/* HWRM Tunneled messages */
@@ -704,7 +705,8 @@ int tf_msg_bulk_get_tbl_entry(struct tf *tfp,uint32_t starting_idx, uint16_t num_entries, uint16_t entry_sz_in_bytes, - uint64_t physical_mem_addr); + uint64_t physical_mem_addr, + bool clear_on_read);/** * Sends Set message of a IF Table Type element to the firmware.
drivers/net/bnxt/tf_core/tf_tbl.c +4 -2
@@ -441,7 +441,8 @@ tf_tbl_get(struct tf *tfp, hcapi_type, parms->data_sz_in_bytes, parms->data, - parms->idx); + parms->idx, + false);if (rc) { TFP_DRV_LOG(ERR, "%s, Get failed, type:%s, rc:%s\n",
@@ -526,7 +527,8 @@ tf_tbl_bulk_get(struct tf *tfp, parms->starting_idx, parms->num_entries, parms->entry_sz_in_bytes, - parms->physical_mem_addr); + parms->physical_mem_addr, + false);if (rc) { TFP_DRV_LOG(ERR, "%s, Bulk get failed, type:%s, rc:%s\n",
drivers/net/bnxt/tf_core/tf_tbl_sram.c +11 -2
@@ -539,6 +539,7 @@ tf_tbl_sram_get(struct tf *tfp,struct tf_tbl_sram_get_info_parms iparms = {0 };struct tf_sram_mgr_is_allocated_parms aparms = {0 };void *sram_handle =NULL ; +bool clear_on_read = false;TF_CHECK_PARMS3 (tfp, parms, parms->data);
@@ -608,6 +609,8 @@ tf_tbl_sram_get(struct tf *tfp, strerror(-rc));return rc; } +if (parms->type ==TF_TBL_TYPE_ACT_STATS_64 ) + clear_on_read = true;/* Get the entry */ rc = tf_msg_get_tbl_entry(tfp,
@@ -615,7 +618,8 @@ tf_tbl_sram_get(struct tf *tfp, hcapi_type, parms->data_sz_in_bytes, parms->data, - parms->idx); + parms->idx, + clear_on_read);if (rc) { TFP_DRV_LOG(ERR, "%s, Get failed, type:%s, rc:%s\n",
@@ -643,6 +647,7 @@ tf_tbl_sram_bulk_get(struct tf *tfp,struct tf_sram_mgr_is_allocated_parms aparms = {0 };bool allocated = false;void *sram_handle =NULL ; +bool clear_on_read = false;TF_CHECK_PARMS2 (tfp, parms);
@@ -728,6 +733,9 @@ tf_tbl_sram_bulk_get(struct tf *tfp,return rc; } +if (parms->type ==TF_TBL_TYPE_ACT_STATS_64 ) + clear_on_read = true; +/* Get the entries */ rc = tf_msg_bulk_get_tbl_entry(tfp, parms->dir,
@@ -735,7 +743,8 @@ tf_tbl_sram_bulk_get(struct tf *tfp, parms->starting_idx, parms->num_entries, parms->entry_sz_in_bytes, - parms->physical_mem_addr); + parms->physical_mem_addr, + clear_on_read);if (rc) { TFP_DRV_LOG(ERR, "%s, Bulk get failed, type:%s, rc:%s\n",
drivers/net/bnxt/tf_ulp/bnxt_ulp.c +2 -1
@@ -1483,7 +1483,8 @@ bnxt_ulp_port_init(struct bnxt *bp) goto jump_to_error; } -if (devid !=BNXT_ULP_DEVICE_ID_THOR &&BNXT_ACCUM_STATS_EN (bp)) +/* set the accumulation of the stats */ +if (BNXT_ACCUM_STATS_EN (bp)) bp->ulp_ctx->cfg_data->accum_stats = true; BNXT_TF_DBG(DEBUG, "BNXT Port:%d ULP port init, accum_stats:%d\n",
Signature · 1 line
2.17.1
PATCH v2 5/19 net/bnxt: add capability option for socket redirect
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
Added support for socket redirect feature capability so applications can enable or disable this feature. This patch contains the template changes.
--- drivers/net/bnxt/bnxt.h | 13 -- drivers/net/bnxt/bnxt_ethdev.c | 203 ------------------ drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 11 +- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 6 +- drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c | 10 +- .../generic_templates/ulp_template_db_enum.h | 8 +- .../generic_templates/ulp_template_db_tbl.c | 5 +- 7 files changed, 30 insertions(+), 226 deletions(-)
drivers/net/bnxt/bnxt.h +0 -13
@@ -1054,19 +1054,6 @@ int32_t bnxt_ulp_create_vfr_default_rules(struct rte_eth_dev *vfr_ethdev);int32_t bnxt_ulp_delete_vfr_default_rules (struct bnxt_representor *vfr); -void bnxt_get_iface_mac (uint16_t port,enum bnxt_ulp_intf_type type, -uint8_t *mac,uint8_t *parent_mac); -uint16_t bnxt_get_vnic_id (uint16_t port,enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_parent_vnic_id (uint16_t port,enum bnxt_ulp_intf_type type); -struct bnxt *bnxt_get_bp (uint16_t port); -uint16_t bnxt_get_svif (uint16_t port_id,bool func_svif, -enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_fw_func_id (uint16_t port,enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_parif (uint16_t port,enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_phy_port_id (uint16_t port); -uint16_t bnxt_get_vport (uint16_t port); -enum bnxt_ulp_intf_type -bnxt_get_interface_type (uint16_t port);int bnxt_rep_dev_start_op (struct rte_eth_dev *eth_dev);void bnxt_cancel_fc_thread (struct bnxt *bp);
drivers/net/bnxt/bnxt_ethdev.c +0 -203
209 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/bnxt_ulp.c +9 -2
@@ -301,13 +301,14 @@ bnxt_ulp_tf_shared_session_resources_get(struct bnxt_ulp_context *ulp_ctx, }int32_t -bnxt_ulp_cntxt_app_caps_init (struct bnxt_ulp_context *ulp_ctx, +bnxt_ulp_cntxt_app_caps_init (struct bnxt *bp,uint8_t app_id,uint32_t dev_id) {struct bnxt_ulp_app_capabilities_info *info;uint32_t num =0 ;uint16_t i;bool found = false; +struct bnxt_ulp_context *ulp_ctx = bp->ulp_ctx;if (ULP_APP_DEV_UNSUPPORTED_ENABLED (ulp_ctx->cfg_data->ulp_flags)) { BNXT_TF_DBG(ERR, "APP ID %d, Device ID: 0x%x not supported.\n",
@@ -334,6 +335,12 @@ bnxt_ulp_cntxt_app_caps_init(struct bnxt_ulp_context *ulp_ctx,if (info[i].flags &BNXT_ULP_APP_CAP_UNICAST_ONLY ) ulp_ctx->cfg_data->ulp_flags |=BNXT_ULP_APP_UNICAST_ONLY ; +if (info[i].flags &BNXT_ULP_APP_CAP_SOCKET_DIRECT ) { +/* Enable socket direction only if MR is enabled in fw*/ +if (BNXT_MULTIROOT_EN (bp)) + ulp_ctx->cfg_data->ulp_flags |= +BNXT_ULP_APP_SOCKET_DIRECT ; + } }if (!found) { BNXT_TF_DBG(ERR, "APP ID %d, Device ID: 0x%x not supported.\n",
@@ -832,7 +839,7 @@ ulp_ctx_init(struct bnxt *bp, }BNXT_TF_DBG (DEBUG ,"Ulp initialized with app id %d\n" , bp->app_id); - rc =bnxt_ulp_cntxt_app_caps_init (bp->ulp_ctx, bp->app_id, devid); + rc =bnxt_ulp_cntxt_app_caps_init (bp, bp->app_id, devid);if (rc) {BNXT_TF_DBG (ERR ,"Unable to set caps for app(%x)/dev(%x)\n" , bp->app_id, devid);
drivers/net/bnxt/tf_ulp/bnxt_ulp.h +5 -1
@@ -13,6 +13,7 @@#include "rte_version.h" #include "rte_ethdev.h" +#include "bnxt.h" #include "ulp_template_db_enum.h" #include "ulp_tun.h" #include "bnxt_tf_common.h"
@@ -33,12 +34,15 @@#define BNXT_ULP_APP_DEV_UNSUPPORTED 0x4#define BNXT_ULP_HIGH_AVAIL_ENABLED 0x8#define BNXT_ULP_APP_UNICAST_ONLY 0x10 +#define BNXT_ULP_APP_SOCKET_DIRECT 0x20 +#define ULP_VF_REP_IS_ENABLED (flag) ((flag) & BNXT_ULP_VF_REP_ENABLED)#define ULP_SHARED_SESSION_IS_ENABLED (flag) ((flag) &\ BNXT_ULP_SHARED_SESSION_ENABLED)#define ULP_APP_DEV_UNSUPPORTED_ENABLED (flag) ((flag) &\ BNXT_ULP_APP_DEV_UNSUPPORTED)#define ULP_HIGH_AVAIL_IS_ENABLED (flag) ((flag) & BNXT_ULP_HIGH_AVAIL_ENABLED) +#define ULP_SOCKET_DIRECT_IS_ENABLED (flag) ((flag) & BNXT_ULP_APP_SOCKET_DIRECT)enum bnxt_ulp_flow_mem_type {BNXT_ULP_FLOW_MEM_TYPE_INT =0 ,
@@ -287,7 +291,7 @@ struct bnxt_ulp_app_capabilities_info *bnxt_ulp_app_cap_list_get (uint32_t *num_entries);int32_t -bnxt_ulp_cntxt_app_caps_init (struct bnxt_ulp_context *ulp_ctx, +bnxt_ulp_cntxt_app_caps_init (struct bnxt *bp,uint8_t app_id,uint32_t dev_id); struct bnxt_ulp_resource_resv_info *
drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c +8 -2
@@ -115,9 +115,11 @@ bnxt_ulp_init_mapper_params(struct bnxt_ulp_mapper_create_parms *mapper_cparms,ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_FLOW_SIG_ID , params->flow_sig_id); +if (bnxt_ulp_cntxt_ptr2_ulp_flags_get (params->ulp_ctx, &ulp_flags)) +return ; +/* update the WC Priority flag */ -if (!bnxt_ulp_cntxt_ptr2_ulp_flags_get (params->ulp_ctx, &ulp_flags) && -ULP_HIGH_AVAIL_IS_ENABLED (ulp_flags)) { +if (ULP_HIGH_AVAIL_IS_ENABLED (ulp_flags)) {enum ulp_ha_mgr_region region =ULP_HA_REGION_LOW ;int32_t rc;
@@ -129,6 +131,10 @@ bnxt_ulp_init_mapper_params(struct bnxt_ulp_mapper_create_parms *mapper_cparms,BNXT_ULP_CF_IDX_WC_IS_HA_HIGH_REG , 1); } + +/* Update the socket direct flag */ +if (ULP_SOCKET_DIRECT_IS_ENABLED (ulp_flags)) +ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_SOCKET_DIRECT ,1 ); }/* Function to create the rte flow. */
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +5 -3
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Thu Aug 26 17:43:36 2021 */ +/* date: Thu Sep 9 11:11:05 2021 */ #ifndef ULP_TEMPLATE_DB_H_ #define ULP_TEMPLATE_DB_H_
@@ -211,7 +211,8 @@ enum bnxt_ulp_cf_idx {BNXT_ULP_CF_IDX_OI_VLAN_FB_VID =71 ,BNXT_ULP_CF_IDX_IO_VLAN_FB_VID =72 ,BNXT_ULP_CF_IDX_II_VLAN_FB_VID =73 , -BNXT_ULP_CF_IDX_LAST =74 +BNXT_ULP_CF_IDX_SOCKET_DIRECT =74 , +BNXT_ULP_CF_IDX_LAST =75 }; enum bnxt_ulp_cond_list_opc {
@@ -582,7 +583,8 @@ enum bnxt_ulp_template_type {enum bnxt_ulp_app_cap {BNXT_ULP_APP_CAP_SHARED_EN =0x00000001 ,BNXT_ULP_APP_CAP_HOT_UPGRADE_EN =0x00000002 , -BNXT_ULP_APP_CAP_UNICAST_ONLY =0x00000004 +BNXT_ULP_APP_CAP_UNICAST_ONLY =0x00000004 , +BNXT_ULP_APP_CAP_SOCKET_DIRECT =0x00000008 };enum bnxt_ulp_fdb_resource_flags {
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +3 -2
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Thu Aug 26 17:43:36 2021 */ +/* date: Thu Sep 9 11:11:05 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -347,7 +347,8 @@ struct bnxt_ulp_app_capabilities_info ulp_app_cap_info_list[] = { .device_id = BNXT_ULP_DEVICE_ID_THOR, .flags =BNXT_ULP_APP_CAP_SHARED_EN |BNXT_ULP_APP_CAP_HOT_UPGRADE_EN | -BNXT_ULP_APP_CAP_UNICAST_ONLY +BNXT_ULP_APP_CAP_UNICAST_ONLY | +BNXT_ULP_APP_CAP_SOCKET_DIRECT }, { .app_id = 2,
Signature · 1 line
2.17.1
PATCH v2 6/19 net/bnxt: enable wildcard match for ingress flows
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
Enabled wildcard match support for ipv4 ingress flows.
--- .../generic_templates/ulp_template_db_class.c | 1986 ++++++++--------- .../generic_templates/ulp_template_db_enum.h | 4 +- .../ulp_template_db_thor_class.c | 251 +-- 3 files changed, 1118 insertions(+), 1123 deletions(-)
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_class.c +993 -993
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Fri Aug 6 11:15:47 2021 */ +/* date: Thu Sep 16 13:12:05 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -1016,7 +1016,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55dd, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1031,7 +1031,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1df1, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 4104, + .flow_sig_id = 4104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1047,7 +1047,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e55, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1063,7 +1063,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0649, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 6152, + .flow_sig_id = 6152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1080,7 +1080,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1011, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1095,7 +1095,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_40e9, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 16392, + .flow_sig_id = 16392UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1111,7 +1111,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e99, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1127,7 +1127,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_06ad, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 24584, + .flow_sig_id = 24584UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1144,7 +1144,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_38c7, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1160,7 +1160,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_00fb, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32776, + .flow_sig_id = 32776UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1177,7 +1177,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_24d3, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1194,7 +1194,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_559b, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32840, + .flow_sig_id = 32840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1212,7 +1212,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5003, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1229,7 +1229,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1837, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1247,7 +1247,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3bef, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1265,7 +1265,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0403, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49224, + .flow_sig_id = 49224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1284,7 +1284,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3d3f, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1300,7 +1300,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0543, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131080, + .flow_sig_id = 131080UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1317,7 +1317,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_292b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1334,7 +1334,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_59e3, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131144, + .flow_sig_id = 131144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1352,7 +1352,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5d3b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1369,7 +1369,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_254f, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196616, + .flow_sig_id = 196616UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1387,7 +1387,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4917, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1405,7 +1405,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_113b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196680, + .flow_sig_id = 196680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1424,7 +1424,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55fd, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1440,7 +1440,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1dd1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 4104, + .flow_sig_id = 4104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1457,7 +1457,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e75, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1474,7 +1474,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0669, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 6152, + .flow_sig_id = 6152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1492,7 +1492,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1ba1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1509,7 +1509,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c69, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 12296, + .flow_sig_id = 12296UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1527,7 +1527,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0439, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1545,7 +1545,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_34e1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 14344, + .flow_sig_id = 14344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1564,7 +1564,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0465, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1581,7 +1581,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_352d, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 20488, + .flow_sig_id = 20488UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1599,7 +1599,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55b1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1617,7 +1617,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1da5, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 22536, + .flow_sig_id = 22536UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1636,7 +1636,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_32fd, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1654,7 +1654,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_63a5, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 28680, + .flow_sig_id = 28680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1673,7 +1673,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1b75, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1692,7 +1692,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c3d, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 30728, + .flow_sig_id = 30728UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1712,7 +1712,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1031, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1728,7 +1728,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_40c9, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 16392, + .flow_sig_id = 16392UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1745,7 +1745,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3eb9, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1762,7 +1762,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_068d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 24584, + .flow_sig_id = 24584UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1780,7 +1780,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5039, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1797,7 +1797,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_180d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1815,7 +1815,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15fd, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1833,7 +1833,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_46b5, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 57352, + .flow_sig_id = 57352UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1852,7 +1852,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_303d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1869,7 +1869,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_60f5, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 81928, + .flow_sig_id = 81928UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1887,7 +1887,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ea5, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1905,7 +1905,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2689, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 90120, + .flow_sig_id = 90120UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1924,7 +1924,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0771, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1942,7 +1942,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3809, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 114696, + .flow_sig_id = 114696UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1961,7 +1961,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_35f9, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1980,7 +1980,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66b1, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 122888, + .flow_sig_id = 122888UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2000,7 +2000,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_559d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2016,7 +2016,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1db1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 4104, + .flow_sig_id = 4104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2033,7 +2033,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e15, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2050,7 +2050,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0609, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 6152, + .flow_sig_id = 6152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2068,7 +2068,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1bc1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2085,7 +2085,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c09, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 12296, + .flow_sig_id = 12296UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2103,7 +2103,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0459, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2121,7 +2121,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3481, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 14344, + .flow_sig_id = 14344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2140,7 +2140,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0405, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2157,7 +2157,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_354d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 20488, + .flow_sig_id = 20488UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2175,7 +2175,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55d1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2193,7 +2193,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1dc5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 22536, + .flow_sig_id = 22536UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2212,7 +2212,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_329d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2230,7 +2230,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_63c5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 28680, + .flow_sig_id = 28680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2249,7 +2249,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1b15, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2268,7 +2268,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c5d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 30728, + .flow_sig_id = 30728UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2288,7 +2288,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1051, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2304,7 +2304,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_40a9, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 16392, + .flow_sig_id = 16392UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2321,7 +2321,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3ed9, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2338,7 +2338,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_06ed, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 24584, + .flow_sig_id = 24584UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2356,7 +2356,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5059, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2373,7 +2373,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_186d, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2391,7 +2391,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_159d, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2409,7 +2409,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_46d5, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 57352, + .flow_sig_id = 57352UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2428,7 +2428,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_305d, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2445,7 +2445,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6095, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 81928, + .flow_sig_id = 81928UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2463,7 +2463,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ec5, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2481,7 +2481,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_26e9, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 90120, + .flow_sig_id = 90120UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2500,7 +2500,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0711, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2518,7 +2518,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3869, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 114696, + .flow_sig_id = 114696UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2537,7 +2537,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3599, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2556,7 +2556,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66d1, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 122888, + .flow_sig_id = 122888UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2576,7 +2576,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_38e7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2593,7 +2593,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_00db, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32776, + .flow_sig_id = 32776UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2611,7 +2611,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_24f3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2629,7 +2629,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55bb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32840, + .flow_sig_id = 32840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2648,7 +2648,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5023, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2666,7 +2666,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1817, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2685,7 +2685,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3bcf, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2704,7 +2704,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0423, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49224, + .flow_sig_id = 49224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2724,7 +2724,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_58e3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2742,7 +2742,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_20d7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98312, + .flow_sig_id = 98312UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2761,7 +2761,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_448f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2780,7 +2780,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0ce3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98376, + .flow_sig_id = 98376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2800,7 +2800,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_076b, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2819,7 +2819,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3813, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114696, + .flow_sig_id = 114696UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2839,7 +2839,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5bcb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2859,7 +2859,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_243f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114760, + .flow_sig_id = 114760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2880,7 +2880,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_144b, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2898,7 +2898,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4573, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163848, + .flow_sig_id = 163848UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2917,7 +2917,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0057, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2936,7 +2936,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_311f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163912, + .flow_sig_id = 163912UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2956,7 +2956,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2b87, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2975,7 +2975,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c4f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180232, + .flow_sig_id = 180232UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2995,7 +2995,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1793, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3015,7 +3015,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_485b, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180296, + .flow_sig_id = 180296UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3036,7 +3036,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3447, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3055,7 +3055,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_650f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229384, + .flow_sig_id = 229384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3075,7 +3075,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2053, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3095,7 +3095,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_511b, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229448, + .flow_sig_id = 229448UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3116,7 +3116,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4b83, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3136,7 +3136,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_13f7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245768, + .flow_sig_id = 245768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3157,7 +3157,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_37af, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3178,7 +3178,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6857, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245832, + .flow_sig_id = 245832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3200,7 +3200,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3d1f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3217,7 +3217,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0563, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131080, + .flow_sig_id = 131080UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3235,7 +3235,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_290b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3253,7 +3253,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_59c3, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131144, + .flow_sig_id = 131144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3272,7 +3272,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5d1b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3290,7 +3290,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_256f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196616, + .flow_sig_id = 196616UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3309,7 +3309,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4937, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3328,7 +3328,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_111b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196680, + .flow_sig_id = 196680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3348,7 +3348,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5f4b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3366,7 +3366,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_275f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393224, + .flow_sig_id = 393224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3385,7 +3385,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4b67, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3404,7 +3404,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_134b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393288, + .flow_sig_id = 393288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3424,7 +3424,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1683, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3443,7 +3443,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_475b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458760, + .flow_sig_id = 458760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3463,7 +3463,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_02bf, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3483,7 +3483,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3377, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458824, + .flow_sig_id = 458824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3504,7 +3504,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_19db, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3522,7 +3522,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4a93, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655368, + .flow_sig_id = 655368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3541,7 +3541,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_05f7, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3560,7 +3560,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_368f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655432, + .flow_sig_id = 655432UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3580,7 +3580,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39c7, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3599,7 +3599,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_022b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720904, + .flow_sig_id = 720904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3619,7 +3619,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_25f3, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3639,7 +3639,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_568b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720968, + .flow_sig_id = 720968UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3660,7 +3660,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3c37, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3679,7 +3679,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_041b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917512, + .flow_sig_id = 917512UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3699,7 +3699,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2823, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3719,7 +3719,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_58fb, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917576, + .flow_sig_id = 917576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3740,7 +3740,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c33, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3760,7 +3760,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2407, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983048, + .flow_sig_id = 983048UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3781,7 +3781,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_482f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3802,7 +3802,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1033, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983112, + .flow_sig_id = 983112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3824,7 +3824,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3887, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3841,7 +3841,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_00bb, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32776, + .flow_sig_id = 32776UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3859,7 +3859,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2493, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3877,7 +3877,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55db, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32840, + .flow_sig_id = 32840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3896,7 +3896,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5043, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3914,7 +3914,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1877, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3933,7 +3933,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3baf, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3952,7 +3952,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0443, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49224, + .flow_sig_id = 49224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3972,7 +3972,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5883, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3990,7 +3990,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_20b7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98312, + .flow_sig_id = 98312UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4009,7 +4009,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_44ef, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4028,7 +4028,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0c83, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98376, + .flow_sig_id = 98376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4048,7 +4048,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_070b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4067,7 +4067,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3873, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114696, + .flow_sig_id = 114696UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4087,7 +4087,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5bab, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4107,7 +4107,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_245f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114760, + .flow_sig_id = 114760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4128,7 +4128,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_142b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4146,7 +4146,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4513, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163848, + .flow_sig_id = 163848UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4165,7 +4165,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0037, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4184,7 +4184,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_317f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163912, + .flow_sig_id = 163912UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4204,7 +4204,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2be7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4223,7 +4223,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c2f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180232, + .flow_sig_id = 180232UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4243,7 +4243,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_17f3, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4263,7 +4263,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_483b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180296, + .flow_sig_id = 180296UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4284,7 +4284,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3427, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4303,7 +4303,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_656f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229384, + .flow_sig_id = 229384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4323,7 +4323,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2033, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4343,7 +4343,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_517b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229448, + .flow_sig_id = 229448UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4364,7 +4364,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4be3, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4384,7 +4384,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1397, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245768, + .flow_sig_id = 245768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4405,7 +4405,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_37cf, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4426,7 +4426,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6837, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245832, + .flow_sig_id = 245832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4448,7 +4448,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3d7f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4465,7 +4465,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0503, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131080, + .flow_sig_id = 131080UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4483,7 +4483,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_296b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4501,7 +4501,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_59a3, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131144, + .flow_sig_id = 131144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4520,7 +4520,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5d7b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4538,7 +4538,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_250f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196616, + .flow_sig_id = 196616UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4557,7 +4557,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4957, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4576,7 +4576,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_117b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196680, + .flow_sig_id = 196680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4596,7 +4596,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5f2b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4614,7 +4614,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_273f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393224, + .flow_sig_id = 393224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4633,7 +4633,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4b07, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4652,7 +4652,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_132b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393288, + .flow_sig_id = 393288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4672,7 +4672,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_16e3, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4691,7 +4691,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_473b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458760, + .flow_sig_id = 458760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4711,7 +4711,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_02df, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4731,7 +4731,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3317, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458824, + .flow_sig_id = 458824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4752,7 +4752,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_19bb, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4770,7 +4770,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4af3, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655368, + .flow_sig_id = 655368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4789,7 +4789,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0597, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4808,7 +4808,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_36ef, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655432, + .flow_sig_id = 655432UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4828,7 +4828,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39a7, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4847,7 +4847,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_024b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720904, + .flow_sig_id = 720904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4867,7 +4867,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2593, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4887,7 +4887,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_56eb, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720968, + .flow_sig_id = 720968UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4908,7 +4908,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3c57, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4927,7 +4927,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_047b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917512, + .flow_sig_id = 917512UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4947,7 +4947,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2843, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4967,7 +4967,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_589b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917576, + .flow_sig_id = 917576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4988,7 +4988,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c53, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -5008,7 +5008,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2467, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983048, + .flow_sig_id = 983048UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -5029,7 +5029,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_484f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -5050,7 +5050,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1053, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983112, + .flow_sig_id = 983112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -5072,7 +5072,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ce1, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5086,7 +5086,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4579, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5101,7 +5101,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1735, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5115,7 +5115,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_45bd, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5130,7 +5130,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3feb, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5145,7 +5145,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2bf7, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5161,7 +5161,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5727, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5177,7 +5177,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4333, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5194,7 +5194,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4453, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5209,7 +5209,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_304f, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5225,7 +5225,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_645f, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5241,7 +5241,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_504b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5258,7 +5258,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5cc1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5273,7 +5273,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4559, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5289,7 +5289,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2285, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5305,7 +5305,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b1d, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5322,7 +5322,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b49, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5338,7 +5338,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c95, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5355,7 +5355,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39c1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5372,7 +5372,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2259, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5390,7 +5390,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1715, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5405,7 +5405,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_459d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5421,7 +5421,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_571d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5437,7 +5437,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1cd1, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5454,7 +5454,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3711, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5470,7 +5470,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6599, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5487,7 +5487,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e55, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5504,7 +5504,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3cdd, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5522,7 +5522,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ca1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5537,7 +5537,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4539, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5553,7 +5553,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_22e5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5569,7 +5569,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b7d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5586,7 +5586,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b29, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5602,7 +5602,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5cf5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5619,7 +5619,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39a1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5636,7 +5636,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2239, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5654,7 +5654,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1775, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5669,7 +5669,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_45fd, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5685,7 +5685,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_577d, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5701,7 +5701,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1cb1, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5718,7 +5718,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3771, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5734,7 +5734,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_65f9, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5751,7 +5751,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e35, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5768,7 +5768,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3cbd, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5786,7 +5786,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3fcb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5802,7 +5802,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2bd7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5819,7 +5819,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5707, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5836,7 +5836,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4313, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5854,7 +5854,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5fc7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5871,7 +5871,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4bd3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5889,7 +5889,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e4f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5907,7 +5907,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_632f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5926,7 +5926,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1baf, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5943,7 +5943,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_07bb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5961,7 +5961,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_32eb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5979,7 +5979,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1ef7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5998,7 +5998,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3bab, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6016,7 +6016,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_27b7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6035,7 +6035,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_52e7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6054,7 +6054,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3ef3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6074,7 +6074,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4473, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6090,7 +6090,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_306f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6107,7 +6107,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_647f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6124,7 +6124,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_506b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6142,7 +6142,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66af, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6159,7 +6159,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_525b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6177,7 +6177,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1de7, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6195,7 +6195,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0993, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6214,7 +6214,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_213f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6231,7 +6231,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0d2b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6249,7 +6249,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_413b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6267,7 +6267,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2cd7, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6286,7 +6286,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_436b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6304,7 +6304,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2f07, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6323,7 +6323,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6317, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6342,7 +6342,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4f03, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6362,7 +6362,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3fab, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6378,7 +6378,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2bb7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6395,7 +6395,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5767, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6412,7 +6412,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4373, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6430,7 +6430,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5fa7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6447,7 +6447,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4bb3, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6465,7 +6465,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e2f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6483,7 +6483,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_634f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6502,7 +6502,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1bcf, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6519,7 +6519,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_07db, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6537,7 +6537,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_328b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6555,7 +6555,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1e97, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6574,7 +6574,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3bcb, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6592,7 +6592,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_27d7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6611,7 +6611,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5287, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6630,7 +6630,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e93, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6650,7 +6650,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4413, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6666,7 +6666,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_300f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6683,7 +6683,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_641f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6700,7 +6700,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_500b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6718,7 +6718,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66cf, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6735,7 +6735,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_523b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6753,7 +6753,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1d87, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6771,7 +6771,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_09f3, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6790,7 +6790,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_215f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6807,7 +6807,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0d4b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6825,7 +6825,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_415b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6843,7 +6843,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2cb7, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6862,7 +6862,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_430b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6880,7 +6880,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2f67, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6899,7 +6899,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6377, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6918,7 +6918,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4f63, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6938,7 +6938,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29b5, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -6953,7 +6953,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29ad, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -6968,7 +6968,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29b7, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -6984,7 +6984,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1583, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7001,7 +7001,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29af, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7017,7 +7017,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_159b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7034,7 +7034,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2995, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7050,7 +7050,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_298d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7066,7 +7066,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29f5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7082,7 +7082,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29ed, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7098,7 +7098,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2997, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7115,7 +7115,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15a3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7133,7 +7133,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_298f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7150,7 +7150,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15bb, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7168,7 +7168,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29f7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7185,7 +7185,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15c3, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7203,7 +7203,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29ef, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7220,7 +7220,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15db, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7238,7 +7238,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1151, .class_tid = 1, .hdr_sig_id = 12, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 3, .app_sig = 0, .hdr_sig = { .bits =
@@ -7255,7 +7255,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_315d, .class_tid = 1, .hdr_sig_id = 12, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 3, .app_sig = 0, .hdr_sig = { .bits =
@@ -7273,7 +7273,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3612, .class_tid = 2, .hdr_sig_id = 0, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -7292,7 +7292,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66da, .class_tid = 2, .hdr_sig_id = 0, - .flow_sig_id = 81928, + .flow_sig_id = 81928UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -7312,7 +7312,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e082, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1313792, + .flow_sig_id = 1313792UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7332,7 +7332,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ab46, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1321984, + .flow_sig_id = 1321984UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7353,7 +7353,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c82a, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 3410944, + .flow_sig_id = 3410944UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7374,7 +7374,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f9a2, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 3419136, + .flow_sig_id = 3419136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7396,7 +7396,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d8ce, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 538184704, + .flow_sig_id = 538184704UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7417,7 +7417,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a2d2, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 538192896, + .flow_sig_id = 538192896UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7439,7 +7439,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c076, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 540281856, + .flow_sig_id = 540281856UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7461,7 +7461,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f1ee, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 540290048, + .flow_sig_id = 540290048UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7484,7 +7484,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a96e, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1075055616, + .flow_sig_id = 1075055616UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7505,7 +7505,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dae6, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1075063808, + .flow_sig_id = 1075063808UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7527,7 +7527,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c7aa, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1077152768, + .flow_sig_id = 1077152768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7549,7 +7549,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c26e, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1077160960, + .flow_sig_id = 1077160960UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7572,7 +7572,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a0fa, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1611926528, + .flow_sig_id = 1611926528UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7594,7 +7594,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d272, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1611934720, + .flow_sig_id = 1611934720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7617,7 +7617,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_fff6, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1614023680, + .flow_sig_id = 1614023680UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7640,7 +7640,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e16e, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1614031872, + .flow_sig_id = 1614031872UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7664,7 +7664,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e165, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 1313792, + .flow_sig_id = 1313792UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7684,7 +7684,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_aaa1, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 1321984, + .flow_sig_id = 1321984UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7705,7 +7705,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c9cd, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 3410944, + .flow_sig_id = 3410944UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7726,7 +7726,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f845, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 3419136, + .flow_sig_id = 3419136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7748,7 +7748,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_90f9, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 2148797440, + .flow_sig_id = 2148797440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7769,7 +7769,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c371, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 2148805632, + .flow_sig_id = 2148805632UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7791,7 +7791,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e19d, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 2150894592, + .flow_sig_id = 2150894592UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7813,7 +7813,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d015, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 2150902784, + .flow_sig_id = 2150902784UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7836,7 +7836,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8c09, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 4296281088, + .flow_sig_id = 4296281088UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7857,7 +7857,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_be89, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 4296289280, + .flow_sig_id = 4296289280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7879,7 +7879,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ddad, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 4298378240, + .flow_sig_id = 4298378240UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7901,7 +7901,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cc2d, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 4298386432, + .flow_sig_id = 4298386432UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
Lines of this file are not shown. View the raw message.
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +2 -2
Lines of this file are not shown. View the raw message.
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c +123 -128
251 lines not on this page · raw message
The rest of this diff is not shown. View the raw message.
Signature · 1 line
2.17.1
Part of the diff is not shown here. View the raw message.
PATCH v2 7/19 net/bnxt: support inner IP header for GRE tunnel flows
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
This change allows adding IP header matches for GRE flows that does not specify outer IP header in the flow match pattern.
--- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 7 ++++--- drivers/net/bnxt/tf_ulp/ulp_template_struct.h | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-)
drivers/net/bnxt/tf_ulp/ulp_rte_parser.c +4 -3
@@ -1119,7 +1119,8 @@ ulp_rte_ipv4_hdr_handler(const struct rte_flow_item *item,/* Set the ipv4 header bitmap and computed l3 header bitmaps */ if (ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV4 ) || -ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV6 )) { +ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV6 ) || +ULP_COMP_FLD_IDX_RD (params,BNXT_ULP_CF_IDX_L3_TUN )) {ULP_BITMAP_SET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_I_IPV4 );ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_I_L3 ,1 ); inner_flag =1 ;
@@ -1245,7 +1246,8 @@ ulp_rte_ipv6_hdr_handler(const struct rte_flow_item *item,/* Set the ipv6 header bitmap and computed l3 header bitmaps */ if (ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV4 ) || -ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV6 )) { +ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV6 ) || +ULP_COMP_FLD_IDX_RD (params,BNXT_ULP_CF_IDX_L3_TUN )) {ULP_BITMAP_SET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_I_IPV6 );ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_I_L3 ,1 ); inner_flag =1 ;
@@ -2127,7 +2129,6 @@ ulp_rte_vxlan_decap_act_handler(const struct rte_flow_action *action_item BNXT_ULP_ACT_BIT_VXLAN_DECAP);/* Update computational field with tunnel decap info */ ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_L3_TUN_DECAP ,1 ); -ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_L3_TUN ,1 );return BNXT_TF_RC_SUCCESS ; }
drivers/net/bnxt/tf_ulp/ulp_template_struct.h +1 -1
@@ -27,7 +27,7 @@#define BNXT_ULP_PROTO_HDR_UDP_NUM 4#define BNXT_ULP_PROTO_HDR_TCP_NUM 9#define BNXT_ULP_PROTO_HDR_VXLAN_NUM 4 -#define BNXT_ULP_PROTO_HDR_GRE_NUM 6 +#define BNXT_ULP_PROTO_HDR_GRE_NUM 2#define BNXT_ULP_PROTO_HDR_ICMP_NUM 5#define BNXT_ULP_PROTO_HDR_MAX 128#define BNXT_ULP_PROTO_HDR_ENCAP_MAX 64
Signature · 1 line
2.17.1
PATCH v2 8/19 net/bnxt: get TruFlow version
In reply to Venkat DuvvuruFrom: Jay Ding <[email protected]>
Implement tf_get_version that returns TruFlow version numbers and CFA resources capbilities.
--- drivers/net/bnxt/hsi_struct_def_dpdk.h | 15 ++-- drivers/net/bnxt/tf_core/tf_core.c | 29 ++++++++ drivers/net/bnxt/tf_core/tf_core.h | 75 ++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_device.h | 50 ++++++++++++++ drivers/net/bnxt/tf_core/tf_device_p4.c | 65 +++++++++++++++++- drivers/net/bnxt/tf_core/tf_device_p4.h | 79 +++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_device_p58.c | 65 +++++++++++++++++- drivers/net/bnxt/tf_core/tf_device_p58.h | 87 ++++++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_msg.c | 35 ++++++++++ drivers/net/bnxt/tf_core/tf_msg.h | 19 ++++++ 10 files changed, 513 insertions(+), 6 deletions(-)
drivers/net/bnxt/hsi_struct_def_dpdk.h +11 -4
@@ -1058,8 +1058,8 @@ struct hwrm_err_output {#define HWRM_VERSION_MINOR 10#define HWRM_VERSION_UPDATE 2/* non-zero means beta version */ -#define HWRM_VERSION_RSVD 55 -#define HWRM_VERSION_STR "1.10.2.55" +#define HWRM_VERSION_RSVD 58 +#define HWRM_VERSION_STR "1.10.2.58"/**************** * hwrm_ver_get *
@@ -45178,7 +45178,7 @@ struct hwrm_tf_version_get_input {uint64_t resp_addr; } __rte_packed; -/* hwrm_tf_version_get_output (size:128b/16B) */ +/* hwrm_tf_version_get_output (size:256b/32B) */ struct hwrm_tf_version_get_output {/* The specific error status for the command. */ uint16_t error_code;
@@ -45195,7 +45195,14 @@ struct hwrm_tf_version_get_output {/* Version Update number. */ uint8_t update;/* unused. */ -uint8_t unused0[4 ]; +uint8_t unused0[5 ]; +/* +* This field is used to indicate device's capabilities and +* configurations. +*/ +uint64_t dev_caps_cfg; +/* unused. */ +uint8_t unused1[7 ];/* * This field is used in Output records to indicate that the output * is completely written to RAM. This field should be read as '1'
drivers/net/bnxt/tf_core/tf_core.c +29 -0
@@ -1802,3 +1802,32 @@ int tf_get_session_info(struct tf *tfp,return 0 ; } + +int tf_get_version (struct tf *tfp, +struct tf_get_version_parms *parms) +{ +int rc; +struct tf_dev_info dev; + +TF_CHECK_PARMS2 (tfp, parms); + +/* This function can be called before open session, filter +* out any non-supported device types on the Core side. +*/ +if (parms->device_type !=TF_DEVICE_TYPE_WH && + parms->device_type !=TF_DEVICE_TYPE_THOR && + parms->device_type !=TF_DEVICE_TYPE_SR ) { +TFP_DRV_LOG (ERR , +"Unsupported device type %d\n" , + parms->device_type); +return -ENOTSUP ; + } + +tf_dev_bind_ops (parms->device_type, &dev); + + rc =tf_msg_get_version (parms->bp, &dev, parms); +if (rc) +return rc; + +return 0 ; +}
drivers/net/bnxt/tf_core/tf_core.h +75 -0
79 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device.h +50 -0
72 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p4.c +64 -1
81 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p4.h +79 -0
83 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p58.c +64 -1
87 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p58.h +87 -0
91 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_msg.c +35 -0
@@ -2306,3 +2306,38 @@ tf_msg_set_if_tbl_entry(struct tf *tfp,return 0 ; } + +int +tf_msg_get_version (struct bnxt *bp, +struct tf_dev_info *dev, +struct tf_get_version_parms *params) + +{ +int rc; +struct hwrm_tf_version_get_input req = {0 }; +struct hwrm_tf_version_get_output resp = {0 }; +struct tfp_send_msg_parms parms = {0 }; + +/* Populate the request */ + parms.tf_type =HWRM_TF_VERSION_GET , + parms.req_data = (uint32_t *)&req; + parms.req_size =sizeof (req); + parms.resp_data = (uint32_t *)&resp; + parms.resp_size =sizeof (resp); + parms.mailbox = dev->ops->tf_dev_get_mailbox (); + + rc =tfp_send_msg_direct (bp, + &parms); + + params->major = resp.major; + params->minor = resp.minor; + params->update = resp.update; + + dev->ops->tf_dev_map_hcapi_caps (resp.dev_caps_cfg, + ¶ms->dev_ident_caps, + ¶ms->dev_tcam_caps, + ¶ms->dev_tbl_caps, + ¶ms->dev_em_caps); + +return rc; +}
drivers/net/bnxt/tf_core/tf_msg.h +19 -0
@@ -738,4 +738,23 @@ int tf_msg_set_if_tbl_entry(struct tf *tfp,int tf_msg_get_if_tbl_entry (struct tf *tfp,struct tf_if_tbl_get_parms *params); +/** +* Send get version request to the firmware. +* +* [in] bp +* Pointer to bnxt handle +* +* [in] dev +* Pointer to the associated device +* +* [in/out] parms +* Pointer to the version info parameter +* +* Returns: +* 0 on Success else internal Truflow error +*/ +int +tf_msg_get_version (struct bnxt *bp, +struct tf_dev_info *dev, +struct tf_get_version_parms *parms);#endif /* _TF_MSG_H_ */
Signature · 1 line
2.17.1
PATCH v2 9/19 net/bnxt: increase flow scale for Thor
In reply to Venkat DuvvuruFrom: Shahaji Bhosle <[email protected]>
* Updated defines and data types to allow 256 VFRs.
* Increased the encap record cache to support 256 to 4K entries. So VxLAN connections can be scaled to 4K entries.
--- drivers/net/bnxt/bnxt.h | 6 +++++- drivers/net/bnxt/bnxt_cpr.c | 2 +- drivers/net/bnxt/bnxt_ethdev.c | 18 +++++++++--------- drivers/net/bnxt/bnxt_reps.c | 3 +-- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 2 +- .../generic_templates/ulp_template_db_tbl.c | 8 ++++---- drivers/net/bnxt/tf_ulp/ulp_def_rules.c | 6 +++--- 7 files changed, 24 insertions(+), 21 deletions(-)
drivers/net/bnxt/bnxt.h +5 -1
@@ -240,7 +240,11 @@ struct bnxt_parent_info {struct bnxt_pf_info {#define BNXT_FIRST_PF_FID 1#define BNXT_MAX_VFS (bp) ((bp)->pf->max_vfs) -#define BNXT_MAX_VF_REPS 64 +#define BNXT_MAX_VF_REPS_WH 64 +#define BNXT_MAX_VF_REPS_TH 256 +#define BNXT_MAX_VF_REPS (bp) \ + (BNXT_CHIP_P5(bp) ? BNXT_MAX_VF_REPS_TH : \ + BNXT_MAX_VF_REPS_WH)#define BNXT_TOTAL_VFS (bp) ((bp)->pf->total_vfs)#define BNXT_FIRST_VF_FID 128#define BNXT_PF_RINGS_USED (bp) bnxt_get_num_queues(bp)
drivers/net/bnxt/bnxt_cpr.c +1 -1
@@ -74,7 +74,7 @@ bnxt_process_default_vnic_change(struct bnxt *bp,BNXT_DEFAULT_VNIC_CHANGE_VF_ID_SFT ;PMD_DRV_LOG (INFO ,"async event received vf_id 0x%x\n" , vf_fid); -for (vf_id =0 ; vf_id <BNXT_MAX_VF_REPS ; vf_id++) { +for (vf_id =0 ; vf_id <BNXT_MAX_VF_REPS (bp); vf_id++) { eth_dev = bp->rep_info[vf_id].vfr_eth_dev;if (!eth_dev)continue ;
drivers/net/bnxt/bnxt_ethdev.c +9 -9
@@ -1179,7 +1179,7 @@ void bnxt_print_link_info(struct rte_eth_dev *eth_dev)struct rte_eth_link *link = ð_dev->data->dev_link;if (link->link_status) - PMD_DRV_LOG(INFO, "Port %d Link Up - speed %u Mbps - %s\n", + PMD_DRV_LOG(DEBUG, "Port %d Link Up - speed %u Mbps - %s\n", eth_dev->data->port_id, (uint32_t)link->link_speed, (link->link_duplex == ETH_LINK_FULL_DUPLEX) ?
@@ -6034,7 +6034,7 @@ static int bnxt_init_rep_info(struct bnxt *bp)return 0 ; bp->rep_info =rte_zmalloc ("bnxt_rep_info" , -sizeof (bp->rep_info[0 ]) *BNXT_MAX_VF_REPS , +sizeof (bp->rep_info[0 ]) *BNXT_MAX_VF_REPS (bp),0 );if (!bp->rep_info) {PMD_DRV_LOG (ERR ,"Failed to alloc memory for rep info\n" );
@@ -6076,7 +6076,9 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev, {struct rte_eth_dev *vf_rep_eth_dev;char name[RTE_ETH_NAME_MAX_LEN ]; -struct bnxt *backing_bp; +struct bnxt *backing_bp = backing_eth_dev->data->dev_private; +uint16_t max_vf_reps =BNXT_MAX_VF_REPS (backing_bp); +uint16_t num_rep;int i, ret =0 ;struct rte_kvargs *kvlist =NULL ;
@@ -6089,9 +6091,9 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev,return -ENOTSUP ; } num_rep = eth_da->nb_representor_ports; -if (num_rep >BNXT_MAX_VF_REPS ) { +if (num_rep > max_vf_reps) {PMD_DRV_LOG (ERR ,"nb_representor_ports = %d > %d MAX VF REPS\n" , - num_rep,BNXT_MAX_VF_REPS ); + num_rep, max_vf_reps);return -EINVAL ; }
@@ -6102,8 +6104,6 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev,return -EINVAL ; } - backing_bp = backing_eth_dev->data->dev_private; -if (!(BNXT_PF (backing_bp) ||BNXT_VF_IS_TRUSTED (backing_bp))) {PMD_DRV_LOG (ERR ,"Not a PF or trusted VF. No Representor support\n" );
@@ -6123,9 +6123,9 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev, .parent_dev = backing_eth_dev }; -if (representor.vf_id >=BNXT_MAX_VF_REPS ) { +if (representor.vf_id >= max_vf_reps) {PMD_DRV_LOG (ERR ,"VF-Rep id %d >= %d MAX VF ID\n" , - representor.vf_id,BNXT_MAX_VF_REPS ); + representor.vf_id, max_vf_reps);continue ; }
drivers/net/bnxt/bnxt_reps.c +1 -2
@@ -210,7 +210,6 @@ int bnxt_representor_init(struct rte_eth_dev *eth_dev, void *params) eth_dev->data->dev_link.link_status = link->link_status; eth_dev->data->dev_link.link_autoneg = link->link_autoneg; -PMD_DRV_LOG (INFO ,"calling bnxt_print_link_info\n" );bnxt_print_link_info (eth_dev); PMD_DRV_LOG(INFO,
@@ -821,7 +820,7 @@ int bnxt_rep_stop_all(struct bnxt *bp)if (!bp->rep_info)return 0 ; -for (vf_id =0 ; vf_id <BNXT_MAX_VF_REPS ; vf_id++) { +for (vf_id =0 ; vf_id <BNXT_MAX_VF_REPS (bp); vf_id++) { rep_eth_dev = bp->rep_info[vf_id].vfr_eth_dev;if (!rep_eth_dev)continue ;
drivers/net/bnxt/tf_ulp/bnxt_ulp.h +1 -1
@@ -262,7 +262,7 @@ bnxt_ulp_cntxt_ptr2_ulp_flags_get(struct bnxt_ulp_context *ulp_ctx, uint32_t *flags);int32_t -bnxt_ulp_get_df_rule_info (uint8_t port_id,struct bnxt_ulp_context *ulp_ctx, +bnxt_ulp_get_df_rule_info (uint16_t port_id,struct bnxt_ulp_context *ulp_ctx,struct bnxt_ulp_df_rule_info *info); struct bnxt_ulp_vfr_rule_info*
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +4 -4
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Thu Sep 9 11:11:05 2021 */ +/* date: Thu Sep 16 11:49:55 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -164,12 +164,12 @@ struct bnxt_ulp_generic_tbl_params ulp_generic_tbl_params[] = { }, [BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_REC_CACHE <<1 |BNXT_ULP_DIRECTION_EGRESS ] = { - .name ="INGRESS GEN_TABLE_VXLAN_ENCAP_REC_CACHE" , - .result_num_entries =256 , + .name ="EGRESS GEN_TABLE_VXLAN_ENCAP_REC_CACHE" , + .result_num_entries =4096 , .result_num_bytes =6 , .key_num_bytes =17 , .num_buckets =8 , - .hash_tbl_entries =1024 , + .hash_tbl_entries =16384 , .result_byte_order =BNXT_ULP_BYTE_ORDER_LE } };
drivers/net/bnxt/tf_ulp/ulp_def_rules.c +3 -3
@@ -441,7 +441,7 @@ void bnxt_ulp_destroy_df_rules(struct bnxt *bp, bool global) {struct bnxt_ulp_df_rule_info *info; -uint8_t port_id; +uint16_t port_id;if (!BNXT_TRUFLOW_EN (bp) ||BNXT_ETH_DEV_IS_REPRESENTOR (bp->eth_dev))
@@ -505,7 +505,7 @@ int32_t bnxt_ulp_create_df_rules(struct bnxt *bp) {struct bnxt_ulp_df_rule_info *info; -uint8_t port_id; +uint16_t port_id;int rc =0 ; if (!BNXT_TRUFLOW_EN(bp) ||
@@ -562,7 +562,7 @@ bnxt_ulp_create_vfr_default_rules(struct rte_eth_dev *vfr_ethdev)struct rte_eth_dev *parent_dev = vfr->parent_dev;struct bnxt *bp = parent_dev->data->dev_private;uint16_t vfr_port_id = vfr_ethdev->data->port_id; -uint8_t port_id; +uint16_t port_id;int rc;if (!bp || !BNXT_TRUFLOW_EN (bp))
Signature · 1 line
2.17.1
PATCH v2 10/19 net/bnxt: remove accumulation of stats devargs argument
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
The accumulation of flow counters is not determined by the application device arguments instead it is dictated by the platform capabilities whether to do software based accumulation or not.
--- drivers/net/bnxt/bnxt.h | 3 -- drivers/net/bnxt/bnxt_ethdev.c | 53 ---------------------------- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 8 ----- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 1 - drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c | 12 +++---- 5 files changed, 4 insertions(+), 73 deletions(-)
drivers/net/bnxt/bnxt.h +0 -3
@@ -718,11 +718,8 @@ struct bnxt {uint32_t flags2;#define BNXT_FLAGS2_PTP_TIMESYNC_ENABLED BIT(0)#define BNXT_FLAGS2_PTP_ALARM_SCHEDULED BIT(1) -#define BNXT_FLAGS2_ACCUM_STATS_EN BIT(2)#define BNXT_P5_PTP_TIMESYNC_ENABLED (bp) \ ((bp)->flags2 & BNXT_FLAGS2_PTP_TIMESYNC_ENABLED) -#define BNXT_ACCUM_STATS_EN (bp) \ - ((bp)->flags2 & BNXT_FLAGS2_ACCUM_STATS_EN)uint16_t chip_num;#define CHIP_NUM_58818 0xd818
drivers/net/bnxt/bnxt_ethdev.c +0 -53
83 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/bnxt_ulp.c +0 -8
@@ -1490,14 +1490,6 @@ bnxt_ulp_port_init(struct bnxt *bp) goto jump_to_error; } -/* set the accumulation of the stats */ -if (BNXT_ACCUM_STATS_EN (bp)) - bp->ulp_ctx->cfg_data->accum_stats = true; - -BNXT_TF_DBG (DEBUG ,"BNXT Port:%d ULP port init, accum_stats:%d\n" , - bp->eth_dev->data->port_id, - bp->ulp_ctx->cfg_data->accum_stats); -/* set the unicast mode */ if (bnxt_ulp_cntxt_ptr2_ulp_flags_get (bp->ulp_ctx, &ulp_flags)) {BNXT_TF_DBG (ERR ,"Error in getting ULP context flags\n" );
drivers/net/bnxt/tf_ulp/bnxt_ulp.h +0 -1
@@ -92,7 +92,6 @@ struct bnxt_ulp_data {#define BNXT_ULP_TUN_ENTRY_INVALID -1#define BNXT_ULP_MAX_TUN_CACHE_ENTRIES 16struct bnxt_tun_cache_entry tun_tbl[BNXT_ULP_MAX_TUN_CACHE_ENTRIES ]; -bool accum_stats;uint8_t app_id;uint8_t num_shared_clients;struct bnxt_flow_app_tun_ent app_tun[BNXT_ULP_MAX_TUN_CACHE_ENTRIES ];
drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c +4 -8
@@ -396,21 +396,17 @@ static int ulp_get_single_flow_stat(struct bnxt_ulp_context *ctxt,return rc; } -/* TBD - Get PKT/BYTE COUNT SHIFT/MASK from Template */ +/* PKT/BYTE COUNT SHIFT/MASK are device specific */ sw_cntr_indx = hw_cntr_id - fc_info->shadow_hw_tbl[dir].start_idx; sw_acc_tbl_entry = &fc_info->sw_acc_tbl[dir][sw_cntr_indx]; +/* Some dpdk applications may accumulate the flow counters while some * may not. In cases where the application is accumulating the counters * the PMD need not do the accumulation itself and viceversa to report * the correct flow counters. */ -if (ctxt->cfg_data->accum_stats) { - sw_acc_tbl_entry->pkt_count +=FLOW_CNTR_PKTS (stats, dparms); - sw_acc_tbl_entry->byte_count +=FLOW_CNTR_BYTES (stats, dparms); - }else { - sw_acc_tbl_entry->pkt_count =FLOW_CNTR_PKTS (stats, dparms); - sw_acc_tbl_entry->byte_count =FLOW_CNTR_BYTES (stats, dparms); - } + sw_acc_tbl_entry->pkt_count +=FLOW_CNTR_PKTS (stats, dparms); + sw_acc_tbl_entry->byte_count +=FLOW_CNTR_BYTES (stats, dparms);/* Update the parent counters if it is child flow */ if (sw_acc_tbl_entry->pc_flow_idx &FLOW_CNTR_PC_FLOW_VALID ) {
Signature · 1 line
2.17.1
PATCH v2 11/19 net/bnxt: fix clang compiler warnings
In reply to Venkat DuvvuruFrom: Shahaji Bhosle <[email protected]>
Typecast flow_item type, action_item type and the ENUMs to uint32_t before comparing.
--- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
drivers/net/bnxt/tf_ulp/ulp_rte_parser.c +4 -4
@@ -137,10 +137,10 @@ bnxt_ulp_rte_parser_hdr_parse(const struct rte_flow_item pattern[],/* Parse all the items in the pattern */ while (item && item->type !=RTE_FLOW_ITEM_TYPE_END ) { -if (item->type >= (uint32_t ) + if (item->type >= (typeof(item->type))BNXT_RTE_FLOW_ITEM_TYPE_END ) {if (item->type >= - (uint32_t )BNXT_RTE_FLOW_ITEM_TYPE_LAST ) + (typeof(item->type))BNXT_RTE_FLOW_ITEM_TYPE_LAST) goto hdr_parser_error;/* get the header information */ hdr_info = &ulp_vendor_hdr_info[item->type -
@@ -186,9 +186,9 @@ bnxt_ulp_rte_parser_act_parse(const struct rte_flow_action actions[],/* Parse all the items in the pattern */ while (action_item && action_item->type !=RTE_FLOW_ACTION_TYPE_END ) {if (action_item->type >= - (uint32_t )BNXT_RTE_FLOW_ACTION_TYPE_END ) { + (typeof(action_item->type))BNXT_RTE_FLOW_ACTION_TYPE_END) {if (action_item->type >= - (uint32_t )BNXT_RTE_FLOW_ACTION_TYPE_LAST ) + (typeof(action_item->type))BNXT_RTE_FLOW_ACTION_TYPE_LAST) goto act_parser_error;/* get the header information from bnxt actinfo table */ hdr_info = &ulp_vendor_act_info[action_item->type -
Signature · 1 line
2.17.1
PATCH v2 12/19 net/bnxt: updated the log messages
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
Some of the error level log messages are made debug level messages. When Truflow is not enabled then Truflow init error messages are moved to debug level instead.
--- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 24 ++++++++++++------------ drivers/net/bnxt/tf_ulp/ulp_def_rules.c | 2 +- drivers/net/bnxt/tf_ulp/ulp_flow_db.c | 2 +- drivers/net/bnxt/tf_ulp/ulp_mark_mgr.c | 2 +- 4 files changed, 15 insertions(+), 15 deletions(-)
drivers/net/bnxt/tf_ulp/bnxt_ulp.c +12 -12
@@ -1396,16 +1396,16 @@ bnxt_ulp_port_init(struct bnxt *bp)uint32_t ulp_flags;int32_t rc =0 ; -if (!BNXT_PF (bp) && !BNXT_VF_IS_TRUSTED (bp)) { -BNXT_TF_DBG (ERR , -"Skip ulp init for port: %d, not a TVF or PF\n" , +if (!BNXT_TRUFLOW_EN (bp)) { +BNXT_TF_DBG (DEBUG , +"Skip ulp init for port: %d, TF is not enabled\n" , bp->eth_dev->data->port_id);return rc; } -if (!BNXT_TRUFLOW_EN (bp)) { -BNXT_TF_DBG (ERR , -"Skip ulp init for port: %d, truflow is not enabled\n" , +if (!BNXT_PF (bp) && !BNXT_VF_IS_TRUSTED (bp)) { +BNXT_TF_DBG (DEBUG , +"Skip ulp init for port: %d, not a TVF or PF\n" , bp->eth_dev->data->port_id);return rc; }
@@ -1520,16 +1520,16 @@ bnxt_ulp_port_deinit(struct bnxt *bp)struct rte_pci_device *pci_dev;struct rte_pci_addr *pci_addr; -if (!BNXT_PF (bp) && !BNXT_VF_IS_TRUSTED (bp)) { -BNXT_TF_DBG (ERR , -"Skip ULP deinit port:%d, not a TVF or PF\n" , +if (!BNXT_TRUFLOW_EN (bp)) { +BNXT_TF_DBG (DEBUG , +"Skip ULP deinit for port:%d, TF is not enabled\n" , bp->eth_dev->data->port_id);return ; } -if (!BNXT_TRUFLOW_EN (bp)) { -BNXT_TF_DBG (ERR , -"Skip ULP deinit for port:%d, truflow is not enabled\n" , +if (!BNXT_PF (bp) && !BNXT_VF_IS_TRUSTED (bp)) { +BNXT_TF_DBG (DEBUG , +"Skip ULP deinit port:%d, not a TVF or PF\n" , bp->eth_dev->data->port_id);return ; }
drivers/net/bnxt/tf_ulp/ulp_def_rules.c +1 -1
@@ -323,7 +323,7 @@ ulp_default_flow_create(struct rte_eth_dev *eth_dev, ulp_ctx =bnxt_ulp_eth_dev_ptr2_cntxt_get (eth_dev);if (!ulp_ctx) {BNXT_TF_DBG (ERR , -"ULP context is not initialized. Failed to create dflt flow.\n" ); +"ULP is not init'ed. Fail to create dflt flow.\n" );return -EINVAL ; }
drivers/net/bnxt/tf_ulp/ulp_flow_db.c +1 -1
@@ -470,7 +470,7 @@ ulp_flow_db_init(struct bnxt_ulp_context *ulp_ctxt) }/* All good so return. */ -BNXT_TF_DBG (INFO ,"FlowDB initialized with %d flows.\n" , +BNXT_TF_DBG (DEBUG ,"FlowDB initialized with %d flows.\n" , flow_tbl->num_flows);return 0 ; error_free:
drivers/net/bnxt/tf_ulp/ulp_mark_mgr.c +1 -1
@@ -116,7 +116,7 @@ ulp_mark_db_init(struct bnxt_ulp_context *ctxt) mark_tbl->gfid_mask = (mark_tbl->gfid_num_entries /2 ) -1 ; mark_tbl->gfid_type_bit = (mark_tbl->gfid_num_entries /2 ); -BNXT_TF_DBG (DEBUG ,"GFID Max = 0x%08x\nGFID MASK = 0x%08x\n" , +BNXT_TF_DBG (DEBUG ,"GFID Max = 0x%08x GFID MASK = 0x%08x\n" , mark_tbl->gfid_num_entries -1 , mark_tbl->gfid_mask);
Signature · 1 line
2.17.1
PATCH v2 13/19 net/bnxt: add support for socket redirect feature
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
Added support for socket redirect feature. This feature allows to ignore the incoming interface and use other fields in the packet to identify the flow and forward.
--- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 2 + drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c | 23 +- .../generic_templates/ulp_template_db_enum.h | 71 +- .../generic_templates/ulp_template_db_tbl.c | 3917 +++++++++++++---- .../ulp_template_db_thor_act.c | 150 +- .../ulp_template_db_thor_class.c | 660 +-- .../ulp_template_db_wh_plus_act.c | 242 +- .../ulp_template_db_wh_plus_class.c | 222 +- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 5 + 9 files changed, 3699 insertions(+), 1593 deletions(-)
drivers/net/bnxt/tf_ulp/bnxt_ulp.c +2 -0
@@ -340,6 +340,8 @@ bnxt_ulp_cntxt_app_caps_init(struct bnxt *bp,if (BNXT_MULTIROOT_EN (bp)) ulp_ctx->cfg_data->ulp_flags |=BNXT_ULP_APP_SOCKET_DIRECT ; +BNXT_TF_DBG (DEBUG , +"Socket Direct feature is enabled" ); } }if (!found) {
drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c +21 -2
@@ -133,8 +133,27 @@ bnxt_ulp_init_mapper_params(struct bnxt_ulp_mapper_create_parms *mapper_cparms, }/* Update the socket direct flag */ -if (ULP_SOCKET_DIRECT_IS_ENABLED (ulp_flags)) -ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_SOCKET_DIRECT ,1 ); +if (ULP_BITMAP_ISSET (params->hdr_bitmap.bits, +BNXT_ULP_HDR_BIT_SVIF_IGNORE )) { +uint32_t ifindex; +uint16_t vport; + +/* Get the port db ifindex */ +if (ulp_port_db_dev_port_to_ulp_index (params->ulp_ctx, + params->port_id, + &ifindex)) { +BNXT_TF_DBG (ERR ,"Invalid port id %u\n" , + params->port_id); +return ; + } +/* Update the phy port of the other interface */ +if (ulp_port_db_vport_get (params->ulp_ctx, ifindex, &vport)) { +BNXT_TF_DBG (ERR ,"Invalid port if index %u\n" , ifindex); +return ; + } +ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_SOCKET_DIRECT_VPORT , + (vport ==1 ) ?2 :1 ); + } }/* Function to create the rte flow. */
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +44 -27
119 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +2990 -927
2,844 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_act.c +75 -75
150 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c +330 -330
660 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c +121 -121
242 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_class.c +111 -111
222 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/ulp_rte_parser.c +5 -0
Lines of this file are not shown. View the raw message.
The rest of this diff is not shown. View the raw message.
Signature · 1 line
2.17.1
Part of the diff is not shown here. View the raw message.
PATCH v2 14/19 net/bnxt: delete the VF pair before VF representor alloc
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
When the VF representor interface is created, the VF pair relationship is established between the VF and it is representor. If the pair already exists then the pair needs to be deleted before allocation. This could happen if the application is abruptly killed and restarted. If the deletion of an existing VF rep is not done then hw pipeline is not cleaned and a new allocation shall leave the hw in inconsistent state.
--- drivers/net/bnxt/bnxt_hwrm.c | 28 ++++++++++++++++++++++++++++ drivers/net/bnxt/bnxt_hwrm.h | 1 + drivers/net/bnxt/bnxt_reps.c | 6 ++++++ 3 files changed, 35 insertions(+)
drivers/net/bnxt/bnxt_hwrm.c +28 -0
@@ -6025,6 +6025,34 @@ int bnxt_hwrm_first_vf_id_query(struct bnxt *bp, uint16_t fid,return rc; } +int bnxt_hwrm_cfa_pair_exists (struct bnxt *bp,struct bnxt_representor *rep_bp) +{ +struct hwrm_cfa_pair_info_output *resp = bp->hwrm_cmd_resp_addr; +struct hwrm_cfa_pair_info_input req = {0 }; +int rc =0 ; + +if (!(BNXT_PF (bp) ||BNXT_VF_IS_TRUSTED (bp))) { +PMD_DRV_LOG (DEBUG , +"Not a PF or trusted VF. Command not supported\n" ); +return 0 ; + } + +HWRM_PREP (&req,HWRM_CFA_PAIR_INFO ,BNXT_USE_CHIMP_MB ); +snprintf (req.pair_name,sizeof (req.pair_name),"%svfr%d" , + bp->eth_dev->data->name, rep_bp->vf_id); + req.flags = +rte_cpu_to_le_32 (HWRM_CFA_PAIR_INFO_INPUT_FLAGS_LOOKUP_TYPE ); + + rc =bnxt_hwrm_send_message (bp, &req,sizeof (req),BNXT_USE_CHIMP_MB ); +HWRM_CHECK_RESULT (); +if (rc ==HWRM_ERR_CODE_SUCCESS &&strlen (resp->pair_name)) { +HWRM_UNLOCK (); +return !rc; + } +HWRM_UNLOCK (); +return rc; +} +int bnxt_hwrm_cfa_pair_alloc (struct bnxt *bp,struct bnxt_representor *rep_bp) {struct hwrm_cfa_pair_alloc_output *resp = bp->hwrm_cmd_resp_addr;
drivers/net/bnxt/bnxt_hwrm.h +1 -0
@@ -294,6 +294,7 @@ int bnxt_clear_one_vnic_filter(struct bnxt *bp,void bnxt_free_vf_info (struct bnxt *bp);int bnxt_hwrm_first_vf_id_query (struct bnxt *bp,uint16_t fid,uint16_t *first_vf_id); +int bnxt_hwrm_cfa_pair_exists (struct bnxt *bp,struct bnxt_representor *rep_bp);int bnxt_hwrm_cfa_pair_alloc (struct bnxt *bp,struct bnxt_representor *rep);int bnxt_hwrm_cfa_pair_free (struct bnxt *bp,struct bnxt_representor *rep);int bnxt_hwrm_cfa_adv_flow_mgmt_qcaps (struct bnxt *bp);
drivers/net/bnxt/bnxt_reps.c +6 -0
@@ -315,6 +315,12 @@ static int bnxt_tf_vfr_alloc(struct rte_eth_dev *vfr_ethdev)BNXT_TF_DBG (ERR ,"Invalid arguments\n" );return 0 ; } +/* update the port id so you can backtrack to ethdev */ + vfr->dpdk_port_id = vfr_ethdev->data->port_id; + +/* If pair is present, then delete the pair */ +if (bnxt_hwrm_cfa_pair_exists (parent_bp, vfr)) + (void )bnxt_hwrm_cfa_pair_free (parent_bp, vfr);/* Update the ULP portdata base with the new VFR interface */ rc =ulp_port_db_dev_port_intf_update (parent_bp->ulp_ctx, vfr_ethdev);
Signature · 1 line
2.17.1
PATCH v2 15/19 net/bnxt: add new API TruFlow get SRAM resources
In reply to Venkat DuvvuruFrom: Jay Ding <[email protected]>
Implement tf_get_sram_resources to return SRAM
partition information, including bank count and
SRAM profile number.
--- drivers/net/bnxt/hsi_struct_def_dpdk.h | 11 ++- drivers/net/bnxt/tf_core/tf_core.c | 86 ++++++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_core.h | 63 +++++++++++++++++ drivers/net/bnxt/tf_core/tf_device.h | 20 ++++++ drivers/net/bnxt/tf_core/tf_device_p4.c | 6 +- drivers/net/bnxt/tf_core/tf_device_p58.c | 53 ++++++++++++++- drivers/net/bnxt/tf_core/tf_msg.c | 28 ++------ drivers/net/bnxt/tf_core/tf_msg.h | 6 +- drivers/net/bnxt/tf_core/tf_rm.c | 3 +- drivers/net/bnxt/tf_core/tf_sram_mgr.h | 10 --- 10 files changed, 245 insertions(+), 41 deletions(-)
drivers/net/bnxt/hsi_struct_def_dpdk.h +8 -3
@@ -1058,8 +1058,8 @@ struct hwrm_err_output {#define HWRM_VERSION_MINOR 10#define HWRM_VERSION_UPDATE 2/* non-zero means beta version */ -#define HWRM_VERSION_RSVD 58 -#define HWRM_VERSION_STR "1.10.2.58" +#define HWRM_VERSION_RSVD 64 +#define HWRM_VERSION_STR "1.10.2.64"/**************** * hwrm_ver_get *
@@ -45817,8 +45817,13 @@ struct hwrm_tf_session_resc_qcaps_output {* qcaps_size. */ uint16_t size; +/* +* SRAM profile number that sets the partition of SRAM memory +* between TF and AFM within the 4 internal memory banks (Thor). +*/ +uint8_t sram_profile;/* unused. */ -uint16_t unused0; +uint8_t unused0;/* unused. */ uint8_t unused1[7 ];/*
drivers/net/bnxt/tf_core/tf_core.c +86 -0
89 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_core.h +63 -0
73 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device.h +20 -0
@@ -1081,6 +1081,26 @@ struct tf_dev_ops {uint32_t *tcam_caps, uint32_t *tbl_caps, uint32_t *em_caps); + +/** +* Device specific function that retrieve the sram resource +* +* [in] query +* Point to resources query result +* +* [out] sram_bank_caps +* Pointer to SRAM bank capabilities +* +* [out] dynamic_sram_capable +* Pointer to dynamic sram capable +* +* Returns +* - (0) if successful. +* - (-EINVAL) on failure. +*/ +int (*tf_dev_get_sram_resources)(void *query, +uint32_t *sram_bank_caps, +bool *dynamic_sram_capable); };/**
drivers/net/bnxt/tf_core/tf_device_p4.c +4 -2
@@ -382,7 +382,8 @@ const struct tf_dev_ops tf_dev_ops_p4_init = { .tf_dev_get_global_cfg = NULL, .tf_dev_get_mailbox = tf_dev_p4_get_mailbox, .tf_dev_word_align = NULL, - .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps + .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps, + .tf_dev_get_sram_resources = NULL };/**
@@ -445,5 +446,6 @@ const struct tf_dev_ops tf_dev_ops_p4 = { .tf_dev_get_mailbox = tf_dev_p4_get_mailbox, .tf_dev_word_align = tf_dev_p4_word_align, .tf_dev_cfa_key_hash = hcapi_cfa_p4_key_hash, - .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps + .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps, + .tf_dev_get_sram_resources = NULL };
drivers/net/bnxt/tf_core/tf_device_p58.c +51 -2
69 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_msg.c +6 -22
@@ -380,39 +380,20 @@ tf_msg_session_resc_qcaps(struct tf *tfp,enum tf_dir dir, uint16_t size, struct tf_rm_resc_req_entry *query, - enum tf_rm_resc_resv_strategy *resv_strategy) + enum tf_rm_resc_resv_strategy *resv_strategy, + uint8_t *sram_profile) { int rc;int i;struct tfp_send_msg_parms parms = {0 };struct hwrm_tf_session_resc_qcaps_input req = {0 };struct hwrm_tf_session_resc_qcaps_output resp = {0 }; -uint8_t fw_session_id;struct tf_msg_dma_buf qcaps_buf = {0 };struct tf_rm_resc_req_entry *data;int dma_size; -struct tf_session *tfs; - -/* Retrieve the session information */ - rc =tf_session_get_session_internal (tfp, &tfs); -if (rc) { -TFP_DRV_LOG (ERR , -"Failed to lookup session, rc:%s\n" , -strerror (-rc)); -return rc; - }TF_CHECK_PARMS3 (tfp, query, resv_strategy); - rc =tf_session_get_fw_session_id (tfp, &fw_session_id); -if (rc) { -TFP_DRV_LOG (ERR , -"%s: Unable to lookup FW id, rc:%s\n" , -tf_dir_2_str (dir), -strerror (-rc)); -return rc; - } -/* Prepare DMA buffer */ dma_size = size *sizeof (struct tf_rm_resc_req_entry ); rc =tf_msg_alloc_dma_buf (&qcaps_buf, dma_size);
@@ -420,7 +401,7 @@ tf_msg_session_resc_qcaps(struct tf *tfp,return rc;/* Populate the request */ - req.fw_session_id =tfp_cpu_to_le_32 (fw_session_id); + req.fw_session_id =0 ; req.flags =tfp_cpu_to_le_16 (dir); req.qcaps_size = size; req.qcaps_addr =tfp_cpu_to_le_64 (qcaps_buf.pa_addr);
@@ -460,6 +441,9 @@ tf_msg_session_resc_qcaps(struct tf *tfp, *resv_strategy = resp.flags &HWRM_TF_SESSION_RESC_QCAPS_OUTPUT_FLAGS_SESS_RESV_STRATEGY_MASK ; +if (sram_profile !=NULL ) + *sram_profile = resp.sram_profile; + cleanup:tf_msg_free_dma_buf (&qcaps_buf);
drivers/net/bnxt/tf_core/tf_msg.h +5 -1
@@ -158,6 +158,9 @@ int tf_msg_session_qcfg(struct tf *tfp);* [out] resv_strategy * Pointer to the reservation strategy * +* [out] sram_profile +* Pointer to the sram profile +* * Returns: * 0 on Success else internal Truflow error */
@@ -166,7 +169,8 @@ int tf_msg_session_resc_qcaps(struct tf *tfp,enum tf_dir dir, uint16_t size, struct tf_rm_resc_req_entry *query, - enum tf_rm_resc_resv_strategy *resv_strategy); + enum tf_rm_resc_resv_strategy *resv_strategy, + uint8_t *sram_profile);/** * Sends session HW resource allocation request to TF Firmware
drivers/net/bnxt/tf_core/tf_rm.c +2 -1
@@ -551,7 +551,8 @@ tf_rm_create_db(struct tf *tfp, parms->dir, max_types, query, - &resv_strategy); + &resv_strategy, + NULL);if (rc)return rc;
drivers/net/bnxt/tf_core/tf_sram_mgr.h +0 -10
@@ -28,16 +28,6 @@#define TF_SRAM_MGR_BLOCK_SZ_BYTES 64#define TF_SRAM_MGR_MIN_SLICE_BYTES 8 -/** -* Bank identifier -*/ -enum tf_sram_bank_id { -TF_SRAM_BANK_ID_0 ,/**< SRAM Bank 0 id */ -TF_SRAM_BANK_ID_1 ,/**< SRAM Bank 1 id */ -TF_SRAM_BANK_ID_2 ,/**< SRAM Bank 2 id */ -TF_SRAM_BANK_ID_3 ,/**< SRAM Bank 3 id */ -TF_SRAM_BANK_ID_MAX /**< SRAM Bank index limit */ -};/** * TF slice size.
Signature · 1 line
2.17.1
PATCH v2 16/19 net/bnxt: add TruFlow and AFM SRAM partitioning support
In reply to Venkat DuvvuruFrom: Jay Ding <[email protected]>
Implement set/get_sram_policy which support both rx/tx direction truflow type the specific SRAM bank.
--- drivers/net/bnxt/tf_core/tf_core.c | 82 ++++++ drivers/net/bnxt/tf_core/tf_core.h | 66 ++++- drivers/net/bnxt/tf_core/tf_device.c | 7 +- drivers/net/bnxt/tf_core/tf_device.h | 34 ++- drivers/net/bnxt/tf_core/tf_device_p4.c | 8 +- drivers/net/bnxt/tf_core/tf_device_p58.c | 311 ++++++++++++++++++++++- drivers/net/bnxt/tf_core/tf_device_p58.h | 118 +-------- drivers/net/bnxt/tf_core/tf_tbl.c | 2 +- 8 files changed, 503 insertions(+), 125 deletions(-)
drivers/net/bnxt/tf_core/tf_core.c +82 -0
@@ -1917,3 +1917,85 @@ int tf_query_sram_resources(struct tf *tfp,return 0 ; } + +int tf_set_sram_policy (struct tf *tfp, +struct tf_set_sram_policy_parms *parms) +{ +int rc =0 ; +struct tf_dev_info dev; + +TF_CHECK_PARMS2 (tfp, parms); + +/* This function can be called before open session, filter +* out any non-supported device types on the Core side. +*/ +if (parms->device_type !=TF_DEVICE_TYPE_THOR ) { +TFP_DRV_LOG (ERR , +"Unsupported device type %d\n" , + parms->device_type); +return -ENOTSUP ; + } + +tf_dev_bind_ops (parms->device_type, &dev); + +if (dev.ops->tf_dev_set_sram_policy ==NULL ) { + rc = -EOPNOTSUPP ; +TFP_DRV_LOG (ERR , +"%s: Operation not supported, rc:%s\n" , +tf_dir_2_str (parms->dir), +strerror (-rc)); +return rc; + } + + rc = dev.ops->tf_dev_set_sram_policy (parms->dir, parms->bank_id); +if (rc) { +TFP_DRV_LOG (ERR , +"%s: SRAM policy set failed, rc:%s\n" , +tf_dir_2_str (parms->dir), +strerror (-rc)); +return rc; + } + +return rc; +} + +int tf_get_sram_policy (struct tf *tfp, +struct tf_get_sram_policy_parms *parms) +{ +int rc =0 ; +struct tf_dev_info dev; + +TF_CHECK_PARMS2 (tfp, parms); + +/* This function can be called before open session, filter +* out any non-supported device types on the Core side. +*/ +if (parms->device_type !=TF_DEVICE_TYPE_THOR ) { +TFP_DRV_LOG (ERR , +"Unsupported device type %d\n" , + parms->device_type); +return -ENOTSUP ; + } + +tf_dev_bind_ops (parms->device_type, &dev); + +if (dev.ops->tf_dev_get_sram_policy ==NULL ) { + rc = -EOPNOTSUPP ; +TFP_DRV_LOG (ERR , +"%s: Operation not supported, rc:%s\n" , +tf_dir_2_str (parms->dir), +strerror (-rc)); +return rc; + } + + rc = dev.ops->tf_dev_get_sram_policy (parms->dir, parms->bank_id); +if (rc) { +TFP_DRV_LOG (ERR , +"%s: SRAM policy get failed, rc:%s\n" , +tf_dir_2_str (parms->dir), +strerror (-rc)); +return rc; + } + +return rc; +}
drivers/net/bnxt/tf_core/tf_core.h +65 -1
76 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device.c +5 -2
@@ -415,11 +415,14 @@ tf_dev_bind_p58(struct tf *tfp, } rsv_cnt =tf_dev_reservation_check (TF_TBL_TYPE_MAX , - tf_tbl_p58, + tf_tbl_p58[TF_DIR_RX ], + (uint16_t *)resources->tbl_cnt); + rsv_cnt +=tf_dev_reservation_check (TF_TBL_TYPE_MAX , + tf_tbl_p58[TF_DIR_TX ], (uint16_t *)resources->tbl_cnt);if (rsv_cnt) { tbl_cfg.num_elements =TF_TBL_TYPE_MAX ; - tbl_cfg.cfg = tf_tbl_p58; + tbl_cfg.cfg = tf_tbl_p58[TF_DIR_RX ]; tbl_cfg.resources = resources; rc =tf_tbl_bind (tfp, &tbl_cfg);if (rc) {
drivers/net/bnxt/tf_core/tf_device.h +33 -1
@@ -1083,7 +1083,7 @@ struct tf_dev_ops { uint32_t *em_caps);/** -* Device specific function that retrieve the sram resource +* Device specific function that retrieves the sram resource * * [in] query * Point to resources query result
@@ -1101,6 +1101,38 @@ struct tf_dev_ops {int (*tf_dev_get_sram_resources)(void *query,uint32_t *sram_bank_caps,bool *dynamic_sram_capable); + +/** +* Device specific function that sets the sram policy +* +* [in] dir +* Receive or transmit direction +* +* [in] band_id +* SRAM bank id +* +* Returns +* - (0) if successful. +* - (-EINVAL) on failure. +*/ +int (*tf_dev_set_sram_policy)(enum tf_dir dir, +uint8_t *bank_id); + +/** +* Device specific function that gets the sram policy +* +* [in] dir +* Receive or transmit direction +* +* [in] band_id +* pointer to SRAM bank id +* +* Returns +* - (0) if successful. +* - (-EINVAL) on failure. +*/ +int (*tf_dev_get_sram_policy)(enum tf_dir dir, +uint8_t *bank_id); };/**
drivers/net/bnxt/tf_core/tf_device_p4.c +6 -2
@@ -383,7 +383,9 @@ const struct tf_dev_ops tf_dev_ops_p4_init = { .tf_dev_get_mailbox = tf_dev_p4_get_mailbox, .tf_dev_word_align = NULL, .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps, - .tf_dev_get_sram_resources = NULL + .tf_dev_get_sram_resources = NULL, + .tf_dev_set_sram_policy = NULL, + .tf_dev_get_sram_policy = NULL, };/**
@@ -447,5 +449,7 @@ const struct tf_dev_ops tf_dev_ops_p4 = { .tf_dev_word_align = tf_dev_p4_word_align, .tf_dev_cfa_key_hash = hcapi_cfa_p4_key_hash, .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps, - .tf_dev_get_sram_resources = NULL + .tf_dev_get_sram_resources = NULL, + .tf_dev_set_sram_policy = NULL, + .tf_dev_get_sram_policy = NULL, };
drivers/net/bnxt/tf_core/tf_device_p58.c +309 -2
333 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p58.h +2 -116
130 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_tbl.c +1 -1
@@ -58,10 +58,10 @@ tf_tbl_bind(struct tf *tfp, db_cfg.num_elements = parms->num_elements; db_cfg.module =TF_MODULE_TYPE_TABLE ; db_cfg.num_elements = parms->num_elements; - db_cfg.cfg = parms->cfg;for (d =0 ; d <TF_DIR_MAX ; d++) { db_cfg.dir = d; + db_cfg.cfg = &parms->cfg[d ?TF_TBL_TYPE_MAX :0 ]; db_cfg.alloc_cnt = parms->resources->tbl_cnt[d].cnt; db_cfg.rm_db = (void *)&tbl_db->tbl_db[d]; if (tf_session_is_shared_session(tfs) &&
Signature · 1 line
2.17.1
PATCH v2 17/19 net/bnxt: add Tx TruFlow table config for p4
In reply to Venkat DuvvuruFrom: Jay Ding <[email protected]>
Add TX direction TruFlow table type config to be
compatible with other devices. For P4, the TX cfg
is duplicated from RX.
--- drivers/net/bnxt/tf_core/tf_device.c | 4 +- drivers/net/bnxt/tf_core/tf_device_p4.c | 107 ++++++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_device_p4.h | 58 +------------ 3 files changed, 111 insertions(+), 58 deletions(-)
drivers/net/bnxt/tf_core/tf_device.c +2 -2
@@ -131,11 +131,11 @@ tf_dev_bind_p4(struct tf *tfp, } rsv_cnt =tf_dev_reservation_check (TF_TBL_TYPE_MAX , - tf_tbl_p4, + tf_tbl_p4[TF_DIR_RX ], (uint16_t *)resources->tbl_cnt);if (rsv_cnt) { tbl_cfg.num_elements =TF_TBL_TYPE_MAX ; - tbl_cfg.cfg = tf_tbl_p4; + tbl_cfg.cfg = tf_tbl_p4[TF_DIR_RX ]; tbl_cfg.resources = resources; rc =tf_tbl_bind (tfp, &tbl_cfg);if (rc) {
drivers/net/bnxt/tf_core/tf_device_p4.c +107 -0
113 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p4.h +2 -56
70 lines not on this page · raw message
Signature · 1 line
2.17.1
PATCH v2 18/19 net/bnxt: remove 2-slice WC entries for scale
In reply to Venkat DuvvuruFrom: Mike Baucom <[email protected]>
The type-5 WC IPv6 flows were removed in order to increase the scale for app-id=3. The app no longer supports 2-slice WC entries.
--- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/net/bnxt/tf_ulp/bnxt_ulp.c +2 -2
@@ -461,7 +461,7 @@ ulp_ctx_shared_session_open(struct bnxt *bp, parms.shadow_copy = true; parms.bp = bp; -if (app_id ==0 || app_id ==3 ) +if (app_id ==0 ) parms.wc_num_slices =TF_WC_TCAM_2_SLICE_PER_ROW ;else parms.wc_num_slices =TF_WC_TCAM_1_SLICE_PER_ROW ;
@@ -583,7 +583,7 @@ ulp_ctx_session_open(struct bnxt *bp,return rc; params.bp = bp; -if (app_id ==0 || app_id ==3 ) +if (app_id ==0 ) params.wc_num_slices =TF_WC_TCAM_2_SLICE_PER_ROW ;else params.wc_num_slices =TF_WC_TCAM_1_SLICE_PER_ROW ;
Signature · 1 line
2.17.1
PATCH v2 19/19 net/bnxt: check for mismatch of control and physical port
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
During the parsing of the ingress port ignore for a flow, added check to match the control port and the physical port that is configured to be ignored. If they do not match then the configuration to setup the svif ignore shall fail.
--- drivers/net/bnxt/tf_ulp/ulp_port_db.c | 23 +++++++++++++++++++++++ drivers/net/bnxt/tf_ulp/ulp_port_db.h | 13 +++++++++++++ drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 12 ++++++++++++ 3 files changed, 48 insertions(+)
drivers/net/bnxt/tf_ulp/ulp_port_db.c +23 -0
@@ -679,3 +679,26 @@ ulp_port_db_parent_vnic_get(struct bnxt_ulp_context *ulp_ctxt, }return -EINVAL ; } + +/* +* Api to get the phy port for a given port id. +* +* ulp_ctxt [in] Ptr to ulp context +* port_id [in] device port id +* phy_port [out] phy_port of the dpdk port_id +* +* Returns 0 on success or negative number on failure. +*/ +int32_t +ulp_port_db_phy_port_get (struct bnxt_ulp_context *ulp_ctxt, +uint32_t port_id,uint16_t *phy_port) +{ +struct ulp_func_if_info *info; + + info =ulp_port_db_func_if_info_get (ulp_ctxt, port_id); +if (info) { + *phy_port = info->phy_port_id; +return 0 ; + } +return -EINVAL ; +}
drivers/net/bnxt/tf_ulp/ulp_port_db.h +13 -0
@@ -314,4 +314,17 @@ int32_t ulp_port_db_parent_vnic_get(struct bnxt_ulp_context *ulp_ctxt, uint32_t port_id, uint8_t **vnic); +/* +* Api to get the phy port for a given port id. +* +* ulp_ctxt [in] Ptr to ulp context +* port_id [in] device port id +* phy_port [out] phy_port of the dpdk port_id +* +* Returns 0 on success or negative number on failure. +*/ +int32_t +ulp_port_db_phy_port_get (struct bnxt_ulp_context *ulp_ctxt, +uint32_t port_id,uint16_t *phy_port); +#endif /* _ULP_PORT_DB_H_ */
drivers/net/bnxt/tf_ulp/ulp_rte_parser.c +12 -0
@@ -686,6 +686,18 @@ ulp_rte_phy_port_hdr_handler(const struct rte_flow_item *item,ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_SVIF_FLAG ,rte_be_to_cpu_16 (svif));if (!mask) { +uint32_t port_id =0 ; +uint16_t phy_port =0 ; + +/* Validate the control port */ + port_id =ULP_COMP_FLD_IDX_RD (params, +BNXT_ULP_CF_IDX_DEV_PORT_ID ); +if (ulp_port_db_phy_port_get (params->ulp_ctx, + port_id, &phy_port) || + (uint16_t )port_spec->index != phy_port) { +BNXT_TF_DBG (ERR ,"Mismatch of control and phy_port\n" ); +return BNXT_TF_RC_PARSE_ERR ; + }ULP_BITMAP_SET (params->hdr_bitmap.bits,BNXT_ULP_HDR_BIT_SVIF_IGNORE );memset (hdr_field->mask,0xFF ,sizeof (mask));
Signature · 1 line
2.17.1
v3 cover fixes and enhancements to Truflow
In reply to Venkat DuvvuruEnhancements include:
* Scaling numbers on Thor
* Inner IP header support for GRE tunnel flows
* Enable wildcard match for ingress flows
* Add clear on read for flow stats on Thor
* Add nat support for dest IP and port combination
* Remove 2-slice WC support
* Add support for socket redirect feature
* Add new API TruFlow get SRAM resources
* Remove accumulation of stats devargs argument
* Add TruFlow and AFM SRAM partitioning support
V2:
* Compilation fixes
* Remove 2-slice WC support
* Add support for socket redirect feature
* Add new API TruFlow get SRAM resources
* Remove accumulation of stats devargs argument
* Add TruFlow and AFM SRAM partitioning support
V3:
* Added one more patch (use enum for bank ID)
Farah Smith (1):
net/bnxt: add clear on read support
Jay Ding (5):
net/bnxt: get TruFlow version
net/bnxt: add new API TruFlow get SRAM resources net/bnxt: add TruFlow and AFM SRAM partitioning support net/bnxt: add Tx TruFlow table config for p4 device net/bnxt: use enum for bank ID
Kishore Padmanabha (11):
net/bnxt: add NAT support for dest IP and port combination net/bnxt: add support for multi root capability net/bnxt: fix the out of boundary issue in hash list net/bnxt: add capability option for socket redirect net/bnxt: enable wildcard match for ingress flows net/bnxt: support inner IP header for GRE tunnel flows net/bnxt: remove accumulation of stats devargs argument net/bnxt: updated the log messages
net/bnxt: add support for socket direct feature net/bnxt: delete the VF pair before VF representor alloc net/bnxt: check for mismatch of control and physical port
Mike Baucom (1):
net/bnxt: remove 2-slice WC entries for scale
Shahaji Bhosle (2):
net/bnxt: increase flow scale for Thor
net/bnxt: fix clang compiler warnings
drivers/net/bnxt/bnxt.h | 25 +- drivers/net/bnxt/bnxt_cpr.c | 2 +- drivers/net/bnxt/bnxt_ethdev.c | 274 +- drivers/net/bnxt/bnxt_hwrm.c | 36 + drivers/net/bnxt/bnxt_hwrm.h | 1 + drivers/net/bnxt/bnxt_reps.c | 9 +- drivers/net/bnxt/hsi_struct_def_dpdk.h | 2970 +++++++++++-- drivers/net/bnxt/tf_core/tf_core.c | 197 + drivers/net/bnxt/tf_core/tf_core.h | 202 + drivers/net/bnxt/tf_core/tf_device.c | 11 +- drivers/net/bnxt/tf_core/tf_device.h | 102 + drivers/net/bnxt/tf_core/tf_device_p4.c | 178 +- drivers/net/bnxt/tf_core/tf_device_p4.h | 137 +- drivers/net/bnxt/tf_core/tf_device_p58.c | 421 +- drivers/net/bnxt/tf_core/tf_device_p58.h | 205 +- drivers/net/bnxt/tf_core/tf_msg.c | 87 +- drivers/net/bnxt/tf_core/tf_msg.h | 31 +- drivers/net/bnxt/tf_core/tf_rm.c | 3 +- drivers/net/bnxt/tf_core/tf_sram_mgr.h | 10 - drivers/net/bnxt/tf_core/tf_tbl.c | 83 +- drivers/net/bnxt/tf_core/tf_tbl_sram.c | 13 +- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 58 +- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 9 +- drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c | 29 +- .../generic_templates/ulp_template_db_act.c | 376 +- .../generic_templates/ulp_template_db_class.c | 1986 ++++----- .../generic_templates/ulp_template_db_enum.h | 91 +- .../generic_templates/ulp_template_db_tbl.c | 3946 +++++++++++++---- .../ulp_template_db_thor_act.c | 150 +- .../ulp_template_db_thor_class.c | 909 ++-- .../ulp_template_db_wh_plus_act.c | 336 +- .../ulp_template_db_wh_plus_class.c | 222 +- drivers/net/bnxt/tf_ulp/ulp_def_rules.c | 8 +- drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c | 12 +- drivers/net/bnxt/tf_ulp/ulp_flow_db.c | 2 +- drivers/net/bnxt/tf_ulp/ulp_gen_hash.c | 20 +- drivers/net/bnxt/tf_ulp/ulp_mark_mgr.c | 2 +- drivers/net/bnxt/tf_ulp/ulp_port_db.c | 23 + drivers/net/bnxt/tf_ulp/ulp_port_db.h | 13 + drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 32 +- drivers/net/bnxt/tf_ulp/ulp_template_struct.h | 2 +- 41 files changed, 9292 insertions(+), 3931 deletions(-)
Signature · 1 line
2.17.1
PATCH v3 1/20 net/bnxt: add NAT support for dest IP and port combination
From: Kishore Padmanabha <[email protected]>
* Added support for NAT action for the destination IP and port combination for the Thor platform. This is not supported for Whitney platform.
* Consolidated the encapsulation and NAT entries for scaling flows with NAT actions.
--- .../generic_templates/ulp_template_db_act.c | 376 +++++++++++------- .../generic_templates/ulp_template_db_enum.h | 18 +- .../generic_templates/ulp_template_db_tbl.c | 14 +- .../ulp_template_db_thor_class.c | 2 +- .../ulp_template_db_wh_plus_act.c | 96 +++-- 5 files changed, 317 insertions(+), 189 deletions(-)
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_act.c +236 -140
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Mon May 17 15:30:41 2021 */ +/* date: Wed Aug 25 14:37:06 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -47,59 +47,67 @@ uint16_t ulp_act_sig_tbl[BNXT_ULP_ACT_SIG_TBL_MAX_SZ] = { [BNXT_ULP_ACT_HID_04bc] = 30, [BNXT_ULP_ACT_HID_00a9] = 31, [BNXT_ULP_ACT_HID_020f] = 32, - [BNXT_ULP_ACT_HID_04a9] = 33, - [BNXT_ULP_ACT_HID_01fc] = 34, - [BNXT_ULP_ACT_HID_04be] = 35, - [BNXT_ULP_ACT_HID_00ab] = 36, - [BNXT_ULP_ACT_HID_0211] = 37, - [BNXT_ULP_ACT_HID_04ab] = 38, - [BNXT_ULP_ACT_HID_01fe] = 39, - [BNXT_ULP_ACT_HID_0667] = 40, - [BNXT_ULP_ACT_HID_0254] = 41, - [BNXT_ULP_ACT_HID_03ba] = 42, - [BNXT_ULP_ACT_HID_0654] = 43, - [BNXT_ULP_ACT_HID_03a7] = 44, - [BNXT_ULP_ACT_HID_0669] = 45, - [BNXT_ULP_ACT_HID_0256] = 46, - [BNXT_ULP_ACT_HID_03bc] = 47, - [BNXT_ULP_ACT_HID_0656] = 48, - [BNXT_ULP_ACT_HID_03a9] = 49, - [BNXT_ULP_ACT_HID_021b] = 50, - [BNXT_ULP_ACT_HID_021c] = 51, - [BNXT_ULP_ACT_HID_021e] = 52, - [BNXT_ULP_ACT_HID_063f] = 53, - [BNXT_ULP_ACT_HID_0510] = 54, - [BNXT_ULP_ACT_HID_03c6] = 55, - [BNXT_ULP_ACT_HID_0082] = 56, - [BNXT_ULP_ACT_HID_06bb] = 57, - [BNXT_ULP_ACT_HID_021d] = 58, - [BNXT_ULP_ACT_HID_0641] = 59, - [BNXT_ULP_ACT_HID_0512] = 60, - [BNXT_ULP_ACT_HID_03c8] = 61, - [BNXT_ULP_ACT_HID_0084] = 62, - [BNXT_ULP_ACT_HID_06bd] = 63, - [BNXT_ULP_ACT_HID_06d7] = 64, - [BNXT_ULP_ACT_HID_02c4] = 65, - [BNXT_ULP_ACT_HID_042a] = 66, - [BNXT_ULP_ACT_HID_06c4] = 67, - [BNXT_ULP_ACT_HID_0417] = 68, - [BNXT_ULP_ACT_HID_06d9] = 69, - [BNXT_ULP_ACT_HID_02c6] = 70, - [BNXT_ULP_ACT_HID_042c] = 71, - [BNXT_ULP_ACT_HID_06c6] = 72, - [BNXT_ULP_ACT_HID_0419] = 73, - [BNXT_ULP_ACT_HID_0119] = 74, - [BNXT_ULP_ACT_HID_046f] = 75, - [BNXT_ULP_ACT_HID_05d5] = 76, - [BNXT_ULP_ACT_HID_0106] = 77, - [BNXT_ULP_ACT_HID_05c2] = 78, - [BNXT_ULP_ACT_HID_011b] = 79, - [BNXT_ULP_ACT_HID_0471] = 80, - [BNXT_ULP_ACT_HID_05d7] = 81, - [BNXT_ULP_ACT_HID_0108] = 82, - [BNXT_ULP_ACT_HID_05c4] = 83, - [BNXT_ULP_ACT_HID_00a2] = 84, - [BNXT_ULP_ACT_HID_00a4] = 85 + [BNXT_ULP_ACT_HID_0153] = 33, + [BNXT_ULP_ACT_HID_04a9] = 34, + [BNXT_ULP_ACT_HID_01fc] = 35, + [BNXT_ULP_ACT_HID_04be] = 36, + [BNXT_ULP_ACT_HID_00ab] = 37, + [BNXT_ULP_ACT_HID_0211] = 38, + [BNXT_ULP_ACT_HID_0155] = 39, + [BNXT_ULP_ACT_HID_04ab] = 40, + [BNXT_ULP_ACT_HID_01fe] = 41, + [BNXT_ULP_ACT_HID_0667] = 42, + [BNXT_ULP_ACT_HID_0254] = 43, + [BNXT_ULP_ACT_HID_03ba] = 44, + [BNXT_ULP_ACT_HID_02fe] = 45, + [BNXT_ULP_ACT_HID_0654] = 46, + [BNXT_ULP_ACT_HID_03a7] = 47, + [BNXT_ULP_ACT_HID_0669] = 48, + [BNXT_ULP_ACT_HID_0256] = 49, + [BNXT_ULP_ACT_HID_03bc] = 50, + [BNXT_ULP_ACT_HID_0300] = 51, + [BNXT_ULP_ACT_HID_0656] = 52, + [BNXT_ULP_ACT_HID_03a9] = 53, + [BNXT_ULP_ACT_HID_021b] = 54, + [BNXT_ULP_ACT_HID_021c] = 55, + [BNXT_ULP_ACT_HID_021e] = 56, + [BNXT_ULP_ACT_HID_063f] = 57, + [BNXT_ULP_ACT_HID_0510] = 58, + [BNXT_ULP_ACT_HID_03c6] = 59, + [BNXT_ULP_ACT_HID_0082] = 60, + [BNXT_ULP_ACT_HID_06bb] = 61, + [BNXT_ULP_ACT_HID_021d] = 62, + [BNXT_ULP_ACT_HID_0641] = 63, + [BNXT_ULP_ACT_HID_0512] = 64, + [BNXT_ULP_ACT_HID_03c8] = 65, + [BNXT_ULP_ACT_HID_0084] = 66, + [BNXT_ULP_ACT_HID_06bd] = 67, + [BNXT_ULP_ACT_HID_06d7] = 68, + [BNXT_ULP_ACT_HID_02c4] = 69, + [BNXT_ULP_ACT_HID_042a] = 70, + [BNXT_ULP_ACT_HID_036e] = 71, + [BNXT_ULP_ACT_HID_06c4] = 72, + [BNXT_ULP_ACT_HID_0417] = 73, + [BNXT_ULP_ACT_HID_06d9] = 74, + [BNXT_ULP_ACT_HID_02c6] = 75, + [BNXT_ULP_ACT_HID_042c] = 76, + [BNXT_ULP_ACT_HID_0370] = 77, + [BNXT_ULP_ACT_HID_06c6] = 78, + [BNXT_ULP_ACT_HID_0419] = 79, + [BNXT_ULP_ACT_HID_0119] = 80, + [BNXT_ULP_ACT_HID_046f] = 81, + [BNXT_ULP_ACT_HID_05d5] = 82, + [BNXT_ULP_ACT_HID_0519] = 83, + [BNXT_ULP_ACT_HID_0106] = 84, + [BNXT_ULP_ACT_HID_05c2] = 85, + [BNXT_ULP_ACT_HID_011b] = 86, + [BNXT_ULP_ACT_HID_0471] = 87, + [BNXT_ULP_ACT_HID_05d7] = 88, + [BNXT_ULP_ACT_HID_051b] = 89, + [BNXT_ULP_ACT_HID_0108] = 90, + [BNXT_ULP_ACT_HID_05c4] = 91, + [BNXT_ULP_ACT_HID_00a2] = 92, + [BNXT_ULP_ACT_HID_00a4] = 93 };/* Array for the act matcher list */
@@ -429,22 +437,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { .act_tid = 3 }, [33] = { - .act_hid = BNXT_ULP_ACT_HID_04a9, + .act_hid = BNXT_ULP_ACT_HID_0153, .act_pattern_id = 3, .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_SET_IPV4_DST | -BNXT_ULP_ACT_BIT_SET_TP_SRC |BNXT_ULP_ACT_BIT_SET_TP_DST | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, [34] = { - .act_hid = BNXT_ULP_ACT_HID_01fc, + .act_hid = BNXT_ULP_ACT_HID_04a9, .act_pattern_id = 4, .app_sig = 0, .act_sig = { .bits = -BNXT_ULP_ACT_BIT_SET_IPV4_SRC |BNXT_ULP_ACT_BIT_SET_IPV4_DST |BNXT_ULP_ACT_BIT_SET_TP_SRC | BNXT_ULP_ACT_BIT_SET_TP_DST |
@@ -452,40 +458,63 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { .act_tid = 3 }, [35] = { - .act_hid = BNXT_ULP_ACT_HID_04be, + .act_hid = BNXT_ULP_ACT_HID_01fc, .act_pattern_id = 5, .app_sig = 0, .act_sig = { .bits = -BNXT_ULP_ACT_BIT_COUNT |BNXT_ULP_ACT_BIT_SET_IPV4_SRC | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_SRC | +BNXT_ULP_ACT_BIT_SET_TP_DST | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, [36] = { - .act_hid = BNXT_ULP_ACT_HID_00ab, + .act_hid = BNXT_ULP_ACT_HID_04be, .act_pattern_id = 6, .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_COUNT |BNXT_ULP_ACT_BIT_SET_IPV4_SRC | -BNXT_ULP_ACT_BIT_SET_TP_SRC | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, [37] = { - .act_hid = BNXT_ULP_ACT_HID_0211, + .act_hid = BNXT_ULP_ACT_HID_00ab, .act_pattern_id = 7, .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_COUNT | -BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_IPV4_SRC | +BNXT_ULP_ACT_BIT_SET_TP_SRC | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, [38] = { - .act_hid = BNXT_ULP_ACT_HID_04ab, + .act_hid = BNXT_ULP_ACT_HID_0211, .act_pattern_id = 8, .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid =3 + }, + [39] = { + .act_hid = BNXT_ULP_ACT_HID_0155, + .act_pattern_id = 9, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid =3 + }, + [40] = { + .act_hid = BNXT_ULP_ACT_HID_04ab, + .act_pattern_id = 10, + .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_COUNT | BNXT_ULP_ACT_BIT_SET_IPV4_DST |
@@ -494,9 +523,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [39] = { + [41] = { .act_hid = BNXT_ULP_ACT_HID_01fe, - .act_pattern_id = 9, + .act_pattern_id = 11, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -507,9 +536,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [40] = { + [42] = { .act_hid = BNXT_ULP_ACT_HID_0667, - .act_pattern_id = 10, + .act_pattern_id = 12, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -517,9 +546,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [41] = { + [43] = { .act_hid = BNXT_ULP_ACT_HID_0254, - .act_pattern_id = 11, + .act_pattern_id = 13, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -528,9 +557,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [42] = { + [44] = { .act_hid = BNXT_ULP_ACT_HID_03ba, - .act_pattern_id = 12, + .act_pattern_id = 14, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -538,9 +567,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [43] = { + [45] = { + .act_hid = BNXT_ULP_ACT_HID_02fe, + .act_pattern_id = 15, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_DEC_TTL | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid =3 + }, + [46] = { .act_hid = BNXT_ULP_ACT_HID_0654, - .act_pattern_id = 13, + .act_pattern_id = 16, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -550,9 +590,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [44] = { + [47] = { .act_hid = BNXT_ULP_ACT_HID_03a7, - .act_pattern_id = 14, + .act_pattern_id = 17, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -563,9 +603,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [45] = { + [48] = { .act_hid = BNXT_ULP_ACT_HID_0669, - .act_pattern_id = 15, + .act_pattern_id = 18, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -574,9 +614,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [46] = { + [49] = { .act_hid = BNXT_ULP_ACT_HID_0256, - .act_pattern_id = 16, + .act_pattern_id = 19, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -586,9 +626,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [47] = { + [50] = { .act_hid = BNXT_ULP_ACT_HID_03bc, - .act_pattern_id = 17, + .act_pattern_id = 20, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -597,9 +637,21 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [48] = { + [51] = { + .act_hid = BNXT_ULP_ACT_HID_0300, + .act_pattern_id = 21, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_DEC_TTL | +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid =3 + }, + [52] = { .act_hid = BNXT_ULP_ACT_HID_0656, - .act_pattern_id = 18, + .act_pattern_id = 22, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -610,9 +662,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [49] = { + [53] = { .act_hid = BNXT_ULP_ACT_HID_03a9, - .act_pattern_id = 19, + .act_pattern_id = 23, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -624,7 +676,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid =3 }, - [50] = { + [54] = { .act_hid = BNXT_ULP_ACT_HID_021b, .act_pattern_id = 0, .app_sig = 0,
@@ -632,7 +684,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [51] = { + [55] = { .act_hid = BNXT_ULP_ACT_HID_021c, .act_pattern_id = 1, .app_sig = 0,
@@ -641,7 +693,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [52] = { + [56] = { .act_hid = BNXT_ULP_ACT_HID_021e, .act_pattern_id = 2, .app_sig = 0,
@@ -651,7 +703,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [53] = { + [57] = { .act_hid = BNXT_ULP_ACT_HID_063f, .act_pattern_id = 3, .app_sig = 0,
@@ -662,7 +714,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [54] = { + [58] = { .act_hid = BNXT_ULP_ACT_HID_0510, .act_pattern_id = 4, .app_sig = 0,
@@ -672,7 +724,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [55] = { + [59] = { .act_hid = BNXT_ULP_ACT_HID_03c6, .act_pattern_id = 5, .app_sig = 0,
@@ -681,7 +733,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [56] = { + [60] = { .act_hid = BNXT_ULP_ACT_HID_0082, .act_pattern_id = 6, .app_sig = 0,
@@ -693,7 +745,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [57] = { + [61] = { .act_hid = BNXT_ULP_ACT_HID_06bb, .act_pattern_id = 7, .app_sig = 0,
@@ -704,7 +756,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [58] = { + [62] = { .act_hid = BNXT_ULP_ACT_HID_021d, .act_pattern_id = 8, .app_sig = 0,
@@ -713,7 +765,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [59] = { + [63] = { .act_hid = BNXT_ULP_ACT_HID_0641, .act_pattern_id = 9, .app_sig = 0,
@@ -725,7 +777,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [60] = { + [64] = { .act_hid = BNXT_ULP_ACT_HID_0512, .act_pattern_id = 10, .app_sig = 0,
@@ -736,7 +788,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [61] = { + [65] = { .act_hid = BNXT_ULP_ACT_HID_03c8, .act_pattern_id = 11, .app_sig = 0,
@@ -746,7 +798,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [62] = { + [66] = { .act_hid = BNXT_ULP_ACT_HID_0084, .act_pattern_id = 12, .app_sig = 0,
@@ -759,7 +811,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [63] = { + [67] = { .act_hid = BNXT_ULP_ACT_HID_06bd, .act_pattern_id = 13, .app_sig = 0,
@@ -771,7 +823,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =4 }, - [64] = { + [68] = { .act_hid = BNXT_ULP_ACT_HID_06d7, .act_pattern_id = 0, .app_sig = 0,
@@ -780,7 +832,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [65] = { + [69] = { .act_hid = BNXT_ULP_ACT_HID_02c4, .act_pattern_id = 1, .app_sig = 0,
@@ -790,7 +842,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [66] = { + [70] = { .act_hid = BNXT_ULP_ACT_HID_042a, .act_pattern_id = 2, .app_sig = 0,
@@ -799,10 +851,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [67] = { - .act_hid = BNXT_ULP_ACT_HID_06c4, + [71] = { + .act_hid = BNXT_ULP_ACT_HID_036e, .act_pattern_id = 3, .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid =5 + }, + [72] = { + .act_hid = BNXT_ULP_ACT_HID_06c4, + .act_pattern_id = 4, + .app_sig = 0, .act_sig = { .bits =BNXT_ULP_ACT_BIT_SET_IPV4_DST | BNXT_ULP_ACT_BIT_SET_TP_SRC |
@@ -810,9 +872,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [68] = { + [73] = { .act_hid = BNXT_ULP_ACT_HID_0417, - .act_pattern_id = 4, + .act_pattern_id = 5, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@@ -822,9 +884,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [69] = { + [74] = { .act_hid = BNXT_ULP_ACT_HID_06d9, - .act_pattern_id = 5, + .act_pattern_id = 6, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -832,9 +894,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [70] = { + [75] = { .act_hid = BNXT_ULP_ACT_HID_02c6, - .act_pattern_id = 6, + .act_pattern_id = 7, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -843,9 +905,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [71] = { + [76] = { .act_hid = BNXT_ULP_ACT_HID_042c, - .act_pattern_id = 7, + .act_pattern_id = 8, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -853,9 +915,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [72] = { + [77] = { + .act_hid = BNXT_ULP_ACT_HID_0370, + .act_pattern_id = 9, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid =5 + }, + [78] = { .act_hid = BNXT_ULP_ACT_HID_06c6, - .act_pattern_id = 8, + .act_pattern_id = 10, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -865,9 +938,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [73] = { + [79] = { .act_hid = BNXT_ULP_ACT_HID_0419, - .act_pattern_id = 9, + .act_pattern_id = 11, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT |
@@ -878,9 +951,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [74] = { + [80] = { .act_hid = BNXT_ULP_ACT_HID_0119, - .act_pattern_id = 10, + .act_pattern_id = 12, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -888,9 +961,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [75] = { + [81] = { .act_hid = BNXT_ULP_ACT_HID_046f, - .act_pattern_id = 11, + .act_pattern_id = 13, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -899,9 +972,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [76] = { + [82] = { .act_hid = BNXT_ULP_ACT_HID_05d5, - .act_pattern_id = 12, + .act_pattern_id = 14, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -909,9 +982,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [77] = { + [83] = { + .act_hid = BNXT_ULP_ACT_HID_0519, + .act_pattern_id = 15, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_DEC_TTL | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid =5 + }, + [84] = { .act_hid = BNXT_ULP_ACT_HID_0106, - .act_pattern_id = 13, + .act_pattern_id = 16, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -921,9 +1005,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [78] = { + [85] = { .act_hid = BNXT_ULP_ACT_HID_05c2, - .act_pattern_id = 14, + .act_pattern_id = 17, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -934,9 +1018,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [79] = { + [86] = { .act_hid = BNXT_ULP_ACT_HID_011b, - .act_pattern_id = 15, + .act_pattern_id = 18, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -945,9 +1029,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [80] = { + [87] = { .act_hid = BNXT_ULP_ACT_HID_0471, - .act_pattern_id = 16, + .act_pattern_id = 19, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -957,9 +1041,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [81] = { + [88] = { .act_hid = BNXT_ULP_ACT_HID_05d7, - .act_pattern_id = 17, + .act_pattern_id = 20, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -968,9 +1052,21 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [82] = { + [89] = { + .act_hid = BNXT_ULP_ACT_HID_051b, + .act_pattern_id = 21, + .app_sig = 0, + .act_sig = { .bits = +BNXT_ULP_ACT_BIT_DEC_TTL | +BNXT_ULP_ACT_BIT_COUNT | +BNXT_ULP_ACT_BIT_SET_IPV4_DST | +BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid =5 + }, + [90] = { .act_hid = BNXT_ULP_ACT_HID_0108, - .act_pattern_id = 18, + .act_pattern_id = 22, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -981,9 +1077,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [83] = { + [91] = { .act_hid = BNXT_ULP_ACT_HID_05c4, - .act_pattern_id = 19, + .act_pattern_id = 23, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL |
@@ -995,7 +1091,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =5 }, - [84] = { + [92] = { .act_hid = BNXT_ULP_ACT_HID_00a2, .act_pattern_id = 0, .app_sig = 0,
@@ -1004,7 +1100,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid =6 }, - [85] = { + [93] = { .act_hid = BNXT_ULP_ACT_HID_00a4, .act_pattern_id = 1, .app_sig = 0,
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +13 -5
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Fri Aug 20 17:59:14 2021 */ +/* date: Thu Aug 26 17:43:36 2021 */ #ifndef ULP_TEMPLATE_DB_H_ #define ULP_TEMPLATE_DB_H_
@@ -20,7 +20,7 @@#define BNXT_ULP_CLASS_HID_SHFTL 28#define BNXT_ULP_CLASS_HID_MASK 65535#define BNXT_ULP_ACT_SIG_TBL_MAX_SZ 2048 -#define BNXT_ULP_ACT_MATCH_LIST_MAX_SZ 86 +#define BNXT_ULP_ACT_MATCH_LIST_MAX_SZ 94#define BNXT_ULP_ACT_HID_LOW_PRIME 7919#define BNXT_ULP_ACT_HID_HIGH_PRIME 3793#define BNXT_ULP_ACT_HID_SHFTR 27
@@ -29,7 +29,7 @@#define BNXT_ULP_APP_RESOURCE_RESV_LIST_MAX_SZ 8#define BNXT_ULP_GLB_RESOURCE_TBL_MAX_SZ 110#define BNXT_ULP_APP_GLB_RESOURCE_TBL_MAX_SZ 50 -#define BNXT_ULP_RESOURCE_RESV_LIST_MAX_SZ 278 +#define BNXT_ULP_RESOURCE_RESV_LIST_MAX_SZ 277#define BNXT_ULP_APP_CAP_TBL_MAX_SZ 8#define BNXT_ULP_COND_GOTO_REJECT 1023#define BNXT_ULP_COND_GOTO_RF 0x10000
@@ -50,11 +50,11 @@#define ULP_THOR_CLASS_RESULT_FIELD_LIST_SIZE 1313#define ULP_THOR_CLASS_COND_LIST_SIZE 55#define ULP_WH_PLUS_ACT_TMPL_LIST_SIZE 7 -#define ULP_WH_PLUS_ACT_TBL_LIST_SIZE 35 +#define ULP_WH_PLUS_ACT_TBL_LIST_SIZE 37#define ULP_WH_PLUS_ACT_KEY_INFO_LIST_SIZE 2#define ULP_WH_PLUS_ACT_IDENT_LIST_SIZE 1#define ULP_WH_PLUS_ACT_RESULT_FIELD_LIST_SIZE 536 -#define ULP_WH_PLUS_ACT_COND_LIST_SIZE 39 +#define ULP_WH_PLUS_ACT_COND_LIST_SIZE 41#define ULP_THOR_ACT_TMPL_LIST_SIZE 7#define ULP_THOR_ACT_TBL_LIST_SIZE 36#define ULP_THOR_ACT_KEY_INFO_LIST_SIZE 16
@@ -2224,21 +2224,25 @@ enum bnxt_ulp_act_hid { BNXT_ULP_ACT_HID_04bc =0x04bc , BNXT_ULP_ACT_HID_00a9 =0x00a9 , BNXT_ULP_ACT_HID_020f =0x020f , +BNXT_ULP_ACT_HID_0153 =0x0153 , BNXT_ULP_ACT_HID_04a9 =0x04a9 , BNXT_ULP_ACT_HID_01fc =0x01fc , BNXT_ULP_ACT_HID_04be =0x04be , BNXT_ULP_ACT_HID_00ab =0x00ab ,BNXT_ULP_ACT_HID_0211 =0x0211 , +BNXT_ULP_ACT_HID_0155 =0x0155 , BNXT_ULP_ACT_HID_04ab =0x04ab , BNXT_ULP_ACT_HID_01fe =0x01fe ,BNXT_ULP_ACT_HID_0667 =0x0667 ,BNXT_ULP_ACT_HID_0254 =0x0254 , BNXT_ULP_ACT_HID_03ba =0x03ba , + BNXT_ULP_ACT_HID_02fe =0x02fe ,BNXT_ULP_ACT_HID_0654 =0x0654 , BNXT_ULP_ACT_HID_03a7 =0x03a7 ,BNXT_ULP_ACT_HID_0669 =0x0669 ,BNXT_ULP_ACT_HID_0256 =0x0256 , BNXT_ULP_ACT_HID_03bc =0x03bc , +BNXT_ULP_ACT_HID_0300 =0x0300 ,BNXT_ULP_ACT_HID_0656 =0x0656 , BNXT_ULP_ACT_HID_03a9 =0x03a9 , BNXT_ULP_ACT_HID_021b = 0x021b,
@@ -2258,21 +2262,25 @@ enum bnxt_ulp_act_hid { BNXT_ULP_ACT_HID_06d7 =0x06d7 , BNXT_ULP_ACT_HID_02c4 =0x02c4 , BNXT_ULP_ACT_HID_042a =0x042a , + BNXT_ULP_ACT_HID_036e =0x036e , BNXT_ULP_ACT_HID_06c4 =0x06c4 ,BNXT_ULP_ACT_HID_0417 =0x0417 , BNXT_ULP_ACT_HID_06d9 =0x06d9 , BNXT_ULP_ACT_HID_02c6 =0x02c6 , BNXT_ULP_ACT_HID_042c =0x042c , +BNXT_ULP_ACT_HID_0370 =0x0370 , BNXT_ULP_ACT_HID_06c6 =0x06c6 ,BNXT_ULP_ACT_HID_0419 =0x0419 ,BNXT_ULP_ACT_HID_0119 =0x0119 , BNXT_ULP_ACT_HID_046f =0x046f , BNXT_ULP_ACT_HID_05d5 =0x05d5 , +BNXT_ULP_ACT_HID_0519 =0x0519 ,BNXT_ULP_ACT_HID_0106 =0x0106 , BNXT_ULP_ACT_HID_05c2 =0x05c2 , BNXT_ULP_ACT_HID_011b =0x011b ,BNXT_ULP_ACT_HID_0471 =0x0471 , BNXT_ULP_ACT_HID_05d7 =0x05d7 , + BNXT_ULP_ACT_HID_051b =0x051b ,BNXT_ULP_ACT_HID_0108 =0x0108 , BNXT_ULP_ACT_HID_05c4 =0x05c4 , BNXT_ULP_ACT_HID_00a2 = 0x00a2,
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +3 -11
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Tue Aug 17 12:16:42 2021 */ +/* date: Thu Aug 26 17:43:36 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -2121,7 +2121,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count =64 + .count =2048 }, { .app_id = 0,
@@ -2249,7 +2249,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count =64 + .count =2048 }, { .app_id = 0,
@@ -2263,14 +2263,6 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_MODIFY_64B, - .count =32 - }, - { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type =TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW , .count = 272
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c +1 -1
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Fri Aug 20 18:05:25 2021 */ +/* date: Wed Aug 25 16:41:37 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c +64 -32
293 lines not on this page · raw message
Signature · 1 line
2.17.1
PATCH v3 2/20 net/bnxt: add support for multi root capability
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
Update driver to read the multi root capability and ignore pci address check while creating ulp session when multi root capability is enabled in the hardware. DPDK HSI version updated from 1.10.1.70 to 1.10.2.54.
--- drivers/net/bnxt/bnxt.h | 3 + drivers/net/bnxt/bnxt_hwrm.c | 8 + drivers/net/bnxt/hsi_struct_def_dpdk.h | 2682 +++++++++++++++++++++--- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 10 +- 4 files changed, 2407 insertions(+), 296 deletions(-)
drivers/net/bnxt/bnxt.h +3 -0
@@ -723,6 +723,9 @@ struct bnxt {uint16_t chip_num;#define CHIP_NUM_58818 0xd818#define BNXT_CHIP_SR2 (bp) ((bp)->chip_num == CHIP_NUM_58818) +#define BNXT_FLAGS2_MULTIROOT_EN BIT(4) +#define BNXT_MULTIROOT_EN (bp) \ + ((bp)->flags2 & BNXT_FLAGS2_MULTIROOT_EN)uint32_t fw_cap;#define BNXT_FW_CAP_HOT_RESET BIT(0)
drivers/net/bnxt/bnxt_hwrm.c +8 -0
@@ -3394,6 +3394,7 @@ int bnxt_hwrm_parent_pf_qcfg(struct bnxt *bp) {struct hwrm_func_qcfg_input req = {0 };struct hwrm_func_qcfg_output *resp = bp->hwrm_cmd_resp_addr; +uint16_t flags;int rc;if (!BNXT_VF_IS_TRUSTED (bp))
@@ -3417,6 +3418,13 @@ int bnxt_hwrm_parent_pf_qcfg(struct bnxt *bp) bp->parent->fid =rte_le_to_cpu_16 (resp->fid); bp->parent->port_id =rte_le_to_cpu_16 (resp->port_id); + flags =rte_le_to_cpu_16 (resp->flags); +/* check for the multi-root support */ +if (flags &HWRM_FUNC_QCFG_OUTPUT_FLAGS_MULTI_ROOT ) { + bp->flags2 |=BNXT_FLAGS2_MULTIROOT_EN ; +PMD_DRV_LOG (DEBUG ,"PF enabled with multi root capability\n" ); + } +HWRM_UNLOCK ();return 0 ;
drivers/net/bnxt/hsi_struct_def_dpdk.h +2390 -292
2,971 lines not on this page · raw message
The rest of this diff is not shown. View the raw message.
Signature · 1 line
2.17.1
Part of the diff is not shown here. View the raw message.
PATCH v3 3/20 net/bnxt: fix the out of boundary issue in hash list
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
The number of hash bucket list calculation is fixed and added check to limit the out of boundary condition
--- drivers/net/bnxt/tf_ulp/ulp_gen_hash.c | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-)
drivers/net/bnxt/tf_ulp/ulp_gen_hash.c +14 -6
@@ -16,20 +16,21 @@ int32_t ulp_bit_alloc_list_alloc(struct bit_alloc_list *blist, {uint64_t bentry;uint32_t idx =0 , jdx =0 ; +uint32_t bsize_64 = blist->bsize /ULP_64B_IN_BYTES ;/* Iterate all numbers that have all 1's */ do { bentry = blist->bdata[idx++]; - }while (bentry ==-1UL && idx < blist->bsize); + }while (bentry ==-1UL && idx <= bsize_64); -if (idx < blist->bsize) { +if (idx <= bsize_64) {if (bentry) jdx =__builtin_clzl (~bentry); *index = ((idx -1 ) *ULP_INDEX_BITMAP_SIZE ) + jdx;ULP_INDEX_BITMAP_SET (blist->bdata[(idx -1 )], jdx);return 0 ; } - jdx = (uint32_t )(blist->bsize *ULP_INDEX_BITMAP_SIZE ); + jdx = (uint32_t )(bsize_64 *ULP_INDEX_BITMAP_SIZE );BNXT_TF_DBG (ERR ,"bit allocator is full reached max:%x\n" , jdx);return -1 ; }
@@ -39,9 +40,10 @@ int32_t ulp_bit_alloc_list_dealloc(struct bit_alloc_list *blist, uint32_t index) {uint32_t idx =0 , jdx; +uint32_t bsize_64 = blist->bsize /ULP_64B_IN_BYTES ; idx = index /ULP_INDEX_BITMAP_SIZE ; -if (idx >= blist->bsize) { +if (idx >= bsize_64) {BNXT_TF_DBG (ERR ,"invalid bit index %x:%x\n" , idx, blist->bsize);return -EINVAL ;
@@ -127,7 +129,8 @@ ulp_gen_hash_tbl_list_init(struct ulp_hash_create_params *cparams, hash_tbl->hash_mask = size -1 ;/* allocate the memory for the bit allocator */ - size = (cparams->num_key_entries /sizeof (uint64_t )) +1 ; + size = (cparams->num_key_entries /sizeof (uint64_t )); + size =ULP_BYTE_ROUND_OFF_8 (size); hash_tbl->bit_list.bsize = size; hash_tbl->bit_list.bdata =rte_zmalloc ("Generic hash bit alloc" , size,ULP_BUFFER_ALIGN_64_BYTE );
@@ -311,7 +314,12 @@ ulp_gen_hash_tbl_list_add(struct ulp_gen_hash_tbl *hash_tbl,BNXT_TF_DBG (ERR ,"Error in bit list alloc\n" );return -ENOMEM ; } - +if (key_index > hash_tbl->num_key_entries) { +BNXT_TF_DBG (ERR ,"reached max size %u:%u\n" , key_index, + hash_tbl->num_key_entries); +ulp_bit_alloc_list_dealloc (&hash_tbl->bit_list, key_index); +return -ENOMEM ; + }/* Update the hash entry */ ULP_HASH_BUCKET_MARK_INUSE (bucket, (uint16_t )key_index);
Signature · 1 line
2.17.1
PATCH v3 4/20 net/bnxt: add clear on read support
In reply to Venkat DuvvuruFrom: Farah Smith <[email protected]>
Add clear on read stats support for Thor. Currently, the flow stats are not cleared after they are read from the FW. This patch adds support for clear on read. Since clear on read support is added for flow stats in Thor, the flow accumulation is enabled on Thor as well.
--- drivers/net/bnxt/hsi_struct_def_dpdk.h | 34 ++++++++++++++++++++------ drivers/net/bnxt/tf_core/tf_msg.c | 24 +++++++++++++++--- drivers/net/bnxt/tf_core/tf_msg.h | 6 +++-- drivers/net/bnxt/tf_core/tf_tbl.c | 6 +++-- drivers/net/bnxt/tf_core/tf_tbl_sram.c | 13 ++++++++-- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 3 ++- 6 files changed, 67 insertions(+), 19 deletions(-)
drivers/net/bnxt/hsi_struct_def_dpdk.h +26 -8
@@ -1058,8 +1058,8 @@ struct hwrm_err_output {#define HWRM_VERSION_MINOR 10#define HWRM_VERSION_UPDATE 2/* non-zero means beta version */ -#define HWRM_VERSION_RSVD 54 -#define HWRM_VERSION_STR "1.10.2.54" +#define HWRM_VERSION_RSVD 55 +#define HWRM_VERSION_STR "1.10.2.55"/**************** * hwrm_ver_get *
@@ -46253,13 +46253,22 @@ struct hwrm_tf_tbl_type_get_input {/* Control flags. */ uint16_t flags;/* Indicates the flow direction. */ -#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR UINT32_C(0x1) +#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR \ + UINT32_C(0x1)/* If this bit set to 0, then it indicates rx flow. */ -#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) +#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_RX \ + UINT32_C(0x0)/* If this bit is set to 1, then it indicates tx flow. */ -#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) +#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX \ + UINT32_C(0x1)#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX +/* +* When set use the special access register access to clear +* the table entry on read. +*/ +#define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_CLEAR_ON_READ \ + UINT32_C(0x2)/* unused. */ uint8_t unused0[2 ];/*
@@ -48489,13 +48498,22 @@ struct hwrm_tf_tbl_type_bulk_get_input {/* Control flags. */ uint16_t flags;/* Indicates the flow direction. */ -#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR UINT32_C(0x1) +#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR \ + UINT32_C(0x1)/* If this bit set to 0, then it indicates rx flow. */ -#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) +#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_RX \ + UINT32_C(0x0)/* If this bit is set to 1, then it indicates tx flow. */ -#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) +#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX \ + UINT32_C(0x1)#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX +/* +* When set use the special access register access to clear +* the table entries on read. +*/ +#define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_CLEAR_ON_READ \ + UINT32_C(0x2)/* unused. */ uint8_t unused0[2 ];/*
drivers/net/bnxt/tf_core/tf_msg.c +20 -4
@@ -1851,7 +1851,8 @@ tf_msg_get_tbl_entry(struct tf *tfp,uint16_t hcapi_type, uint16_t size, uint8_t *data, - uint32_t index) + uint32_t index, + bool clear_on_read) { int rc;struct hwrm_tf_tbl_type_get_input req = {0 };
@@ -1860,6 +1861,7 @@ tf_msg_get_tbl_entry(struct tf *tfp,uint8_t fw_session_id;struct tf_dev_info *dev;struct tf_session *tfs; +uint32_t flags =0 ;/* Retrieve the session information */ rc =tf_session_get_session_internal (tfp, &tfs);
@@ -1889,10 +1891,16 @@ tf_msg_get_tbl_entry(struct tf *tfp, strerror(-rc));return rc; } + flags = (dir ==TF_DIR_TX ? +HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX : +HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_RX ); + +if (clear_on_read) + flags |=HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_CLEAR_ON_READ ;/* Populate the request */ req.fw_session_id =tfp_cpu_to_le_32 (fw_session_id); - req.flags =tfp_cpu_to_le_16 (dir); + req.flags =tfp_cpu_to_le_16 (flags); req.type =tfp_cpu_to_le_32 (hcapi_type); req.index =tfp_cpu_to_le_32 (index);
@@ -2105,7 +2113,8 @@ tf_msg_bulk_get_tbl_entry(struct tf *tfp,uint32_t starting_idx, uint16_t num_entries, uint16_t entry_sz_in_bytes, - uint64_t physical_mem_addr) + uint64_t physical_mem_addr, + bool clear_on_read) { int rc;struct tfp_send_msg_parms parms = {0 };
@@ -2115,6 +2124,7 @@ tf_msg_bulk_get_tbl_entry(struct tf *tfp,uint8_t fw_session_id;struct tf_dev_info *dev;struct tf_session *tfs; +uint32_t flags =0 ;/* Retrieve the session information */ rc =tf_session_get_session (tfp, &tfs);
@@ -2144,10 +2154,16 @@ tf_msg_bulk_get_tbl_entry(struct tf *tfp, strerror(-rc));return rc; } + flags = (dir ==TF_DIR_TX ? +HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX : +HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_RX ); + +if (clear_on_read) + flags |=HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_CLEAR_ON_READ ;/* Populate the request */ req.fw_session_id =tfp_cpu_to_le_32 (fw_session_id); - req.flags =tfp_cpu_to_le_16 (dir); + req.flags =tfp_cpu_to_le_16 (flags); req.type =tfp_cpu_to_le_32 (hcapi_type); req.start_index =tfp_cpu_to_le_32 (starting_idx); req.num_entries =tfp_cpu_to_le_32 (num_entries);
drivers/net/bnxt/tf_core/tf_msg.h +4 -2
@@ -652,7 +652,8 @@ int tf_msg_get_tbl_entry(struct tf *tfp,uint16_t hcapi_type, uint16_t size, uint8_t *data, - uint32_t index); + uint32_t index, + bool clear_on_read);/* HWRM Tunneled messages */
@@ -704,7 +705,8 @@ int tf_msg_bulk_get_tbl_entry(struct tf *tfp,uint32_t starting_idx, uint16_t num_entries, uint16_t entry_sz_in_bytes, - uint64_t physical_mem_addr); + uint64_t physical_mem_addr, + bool clear_on_read);/** * Sends Set message of a IF Table Type element to the firmware.
drivers/net/bnxt/tf_core/tf_tbl.c +4 -2
@@ -441,7 +441,8 @@ tf_tbl_get(struct tf *tfp, hcapi_type, parms->data_sz_in_bytes, parms->data, - parms->idx); + parms->idx, + false);if (rc) { TFP_DRV_LOG(ERR, "%s, Get failed, type:%s, rc:%s\n",
@@ -526,7 +527,8 @@ tf_tbl_bulk_get(struct tf *tfp, parms->starting_idx, parms->num_entries, parms->entry_sz_in_bytes, - parms->physical_mem_addr); + parms->physical_mem_addr, + false);if (rc) { TFP_DRV_LOG(ERR, "%s, Bulk get failed, type:%s, rc:%s\n",
drivers/net/bnxt/tf_core/tf_tbl_sram.c +11 -2
@@ -539,6 +539,7 @@ tf_tbl_sram_get(struct tf *tfp,struct tf_tbl_sram_get_info_parms iparms = {0 };struct tf_sram_mgr_is_allocated_parms aparms = {0 };void *sram_handle =NULL ; +bool clear_on_read = false;TF_CHECK_PARMS3 (tfp, parms, parms->data);
@@ -608,6 +609,8 @@ tf_tbl_sram_get(struct tf *tfp, strerror(-rc));return rc; } +if (parms->type ==TF_TBL_TYPE_ACT_STATS_64 ) + clear_on_read = true;/* Get the entry */ rc = tf_msg_get_tbl_entry(tfp,
@@ -615,7 +618,8 @@ tf_tbl_sram_get(struct tf *tfp, hcapi_type, parms->data_sz_in_bytes, parms->data, - parms->idx); + parms->idx, + clear_on_read);if (rc) { TFP_DRV_LOG(ERR, "%s, Get failed, type:%s, rc:%s\n",
@@ -643,6 +647,7 @@ tf_tbl_sram_bulk_get(struct tf *tfp,struct tf_sram_mgr_is_allocated_parms aparms = {0 };bool allocated = false;void *sram_handle =NULL ; +bool clear_on_read = false;TF_CHECK_PARMS2 (tfp, parms);
@@ -728,6 +733,9 @@ tf_tbl_sram_bulk_get(struct tf *tfp,return rc; } +if (parms->type ==TF_TBL_TYPE_ACT_STATS_64 ) + clear_on_read = true; +/* Get the entries */ rc = tf_msg_bulk_get_tbl_entry(tfp, parms->dir,
@@ -735,7 +743,8 @@ tf_tbl_sram_bulk_get(struct tf *tfp, parms->starting_idx, parms->num_entries, parms->entry_sz_in_bytes, - parms->physical_mem_addr); + parms->physical_mem_addr, + clear_on_read);if (rc) { TFP_DRV_LOG(ERR, "%s, Bulk get failed, type:%s, rc:%s\n",
drivers/net/bnxt/tf_ulp/bnxt_ulp.c +2 -1
@@ -1483,7 +1483,8 @@ bnxt_ulp_port_init(struct bnxt *bp) goto jump_to_error; } -if (devid !=BNXT_ULP_DEVICE_ID_THOR &&BNXT_ACCUM_STATS_EN (bp)) +/* set the accumulation of the stats */ +if (BNXT_ACCUM_STATS_EN (bp)) bp->ulp_ctx->cfg_data->accum_stats = true; BNXT_TF_DBG(DEBUG, "BNXT Port:%d ULP port init, accum_stats:%d\n",
Signature · 1 line
2.17.1
PATCH v3 5/20 net/bnxt: add capability option for socket redirect
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
Added support for socket redirect feature capability so applications can enable or disable this feature. This patch contains the template changes.
--- drivers/net/bnxt/bnxt.h | 13 -- drivers/net/bnxt/bnxt_ethdev.c | 203 ------------------ drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 11 +- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 6 +- drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c | 10 +- .../generic_templates/ulp_template_db_enum.h | 8 +- .../generic_templates/ulp_template_db_tbl.c | 5 +- 7 files changed, 30 insertions(+), 226 deletions(-)
drivers/net/bnxt/bnxt.h +0 -13
@@ -1054,19 +1054,6 @@ int32_t bnxt_ulp_create_vfr_default_rules(struct rte_eth_dev *vfr_ethdev);int32_t bnxt_ulp_delete_vfr_default_rules (struct bnxt_representor *vfr); -void bnxt_get_iface_mac (uint16_t port,enum bnxt_ulp_intf_type type, -uint8_t *mac,uint8_t *parent_mac); -uint16_t bnxt_get_vnic_id (uint16_t port,enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_parent_vnic_id (uint16_t port,enum bnxt_ulp_intf_type type); -struct bnxt *bnxt_get_bp (uint16_t port); -uint16_t bnxt_get_svif (uint16_t port_id,bool func_svif, -enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_fw_func_id (uint16_t port,enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_parif (uint16_t port,enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_phy_port_id (uint16_t port); -uint16_t bnxt_get_vport (uint16_t port); -enum bnxt_ulp_intf_type -bnxt_get_interface_type (uint16_t port);int bnxt_rep_dev_start_op (struct rte_eth_dev *eth_dev);void bnxt_cancel_fc_thread (struct bnxt *bp);
drivers/net/bnxt/bnxt_ethdev.c +0 -203
209 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/bnxt_ulp.c +9 -2
@@ -301,13 +301,14 @@ bnxt_ulp_tf_shared_session_resources_get(struct bnxt_ulp_context *ulp_ctx, }int32_t -bnxt_ulp_cntxt_app_caps_init (struct bnxt_ulp_context *ulp_ctx, +bnxt_ulp_cntxt_app_caps_init (struct bnxt *bp,uint8_t app_id,uint32_t dev_id) {struct bnxt_ulp_app_capabilities_info *info;uint32_t num =0 ;uint16_t i;bool found = false; +struct bnxt_ulp_context *ulp_ctx = bp->ulp_ctx;if (ULP_APP_DEV_UNSUPPORTED_ENABLED (ulp_ctx->cfg_data->ulp_flags)) { BNXT_TF_DBG(ERR, "APP ID %d, Device ID: 0x%x not supported.\n",
@@ -334,6 +335,12 @@ bnxt_ulp_cntxt_app_caps_init(struct bnxt_ulp_context *ulp_ctx,if (info[i].flags &BNXT_ULP_APP_CAP_UNICAST_ONLY ) ulp_ctx->cfg_data->ulp_flags |=BNXT_ULP_APP_UNICAST_ONLY ; +if (info[i].flags &BNXT_ULP_APP_CAP_SOCKET_DIRECT ) { +/* Enable socket direction only if MR is enabled in fw*/ +if (BNXT_MULTIROOT_EN (bp)) + ulp_ctx->cfg_data->ulp_flags |= +BNXT_ULP_APP_SOCKET_DIRECT ; + } }if (!found) { BNXT_TF_DBG(ERR, "APP ID %d, Device ID: 0x%x not supported.\n",
@@ -832,7 +839,7 @@ ulp_ctx_init(struct bnxt *bp, }BNXT_TF_DBG (DEBUG ,"Ulp initialized with app id %d\n" , bp->app_id); - rc =bnxt_ulp_cntxt_app_caps_init (bp->ulp_ctx, bp->app_id, devid); + rc =bnxt_ulp_cntxt_app_caps_init (bp, bp->app_id, devid);if (rc) {BNXT_TF_DBG (ERR ,"Unable to set caps for app(%x)/dev(%x)\n" , bp->app_id, devid);
drivers/net/bnxt/tf_ulp/bnxt_ulp.h +5 -1
@@ -13,6 +13,7 @@#include "rte_version.h" #include "rte_ethdev.h" +#include "bnxt.h" #include "ulp_template_db_enum.h" #include "ulp_tun.h" #include "bnxt_tf_common.h"
@@ -33,12 +34,15 @@#define BNXT_ULP_APP_DEV_UNSUPPORTED 0x4#define BNXT_ULP_HIGH_AVAIL_ENABLED 0x8#define BNXT_ULP_APP_UNICAST_ONLY 0x10 +#define BNXT_ULP_APP_SOCKET_DIRECT 0x20 +#define ULP_VF_REP_IS_ENABLED (flag) ((flag) & BNXT_ULP_VF_REP_ENABLED)#define ULP_SHARED_SESSION_IS_ENABLED (flag) ((flag) &\ BNXT_ULP_SHARED_SESSION_ENABLED)#define ULP_APP_DEV_UNSUPPORTED_ENABLED (flag) ((flag) &\ BNXT_ULP_APP_DEV_UNSUPPORTED)#define ULP_HIGH_AVAIL_IS_ENABLED (flag) ((flag) & BNXT_ULP_HIGH_AVAIL_ENABLED) +#define ULP_SOCKET_DIRECT_IS_ENABLED (flag) ((flag) & BNXT_ULP_APP_SOCKET_DIRECT)enum bnxt_ulp_flow_mem_type {BNXT_ULP_FLOW_MEM_TYPE_INT =0 ,
@@ -287,7 +291,7 @@ struct bnxt_ulp_app_capabilities_info *bnxt_ulp_app_cap_list_get (uint32_t *num_entries);int32_t -bnxt_ulp_cntxt_app_caps_init (struct bnxt_ulp_context *ulp_ctx, +bnxt_ulp_cntxt_app_caps_init (struct bnxt *bp,uint8_t app_id,uint32_t dev_id); struct bnxt_ulp_resource_resv_info *
drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c +8 -2
@@ -115,9 +115,11 @@ bnxt_ulp_init_mapper_params(struct bnxt_ulp_mapper_create_parms *mapper_cparms,ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_FLOW_SIG_ID , params->flow_sig_id); +if (bnxt_ulp_cntxt_ptr2_ulp_flags_get (params->ulp_ctx, &ulp_flags)) +return ; +/* update the WC Priority flag */ -if (!bnxt_ulp_cntxt_ptr2_ulp_flags_get (params->ulp_ctx, &ulp_flags) && -ULP_HIGH_AVAIL_IS_ENABLED (ulp_flags)) { +if (ULP_HIGH_AVAIL_IS_ENABLED (ulp_flags)) {enum ulp_ha_mgr_region region =ULP_HA_REGION_LOW ;int32_t rc;
@@ -129,6 +131,10 @@ bnxt_ulp_init_mapper_params(struct bnxt_ulp_mapper_create_parms *mapper_cparms,BNXT_ULP_CF_IDX_WC_IS_HA_HIGH_REG , 1); } + +/* Update the socket direct flag */ +if (ULP_SOCKET_DIRECT_IS_ENABLED (ulp_flags)) +ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_SOCKET_DIRECT ,1 ); }/* Function to create the rte flow. */
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +5 -3
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Thu Aug 26 17:43:36 2021 */ +/* date: Thu Sep 9 11:11:05 2021 */ #ifndef ULP_TEMPLATE_DB_H_ #define ULP_TEMPLATE_DB_H_
@@ -211,7 +211,8 @@ enum bnxt_ulp_cf_idx {BNXT_ULP_CF_IDX_OI_VLAN_FB_VID =71 ,BNXT_ULP_CF_IDX_IO_VLAN_FB_VID =72 ,BNXT_ULP_CF_IDX_II_VLAN_FB_VID =73 , -BNXT_ULP_CF_IDX_LAST =74 +BNXT_ULP_CF_IDX_SOCKET_DIRECT =74 , +BNXT_ULP_CF_IDX_LAST =75 }; enum bnxt_ulp_cond_list_opc {
@@ -582,7 +583,8 @@ enum bnxt_ulp_template_type {enum bnxt_ulp_app_cap {BNXT_ULP_APP_CAP_SHARED_EN =0x00000001 ,BNXT_ULP_APP_CAP_HOT_UPGRADE_EN =0x00000002 , -BNXT_ULP_APP_CAP_UNICAST_ONLY =0x00000004 +BNXT_ULP_APP_CAP_UNICAST_ONLY =0x00000004 , +BNXT_ULP_APP_CAP_SOCKET_DIRECT =0x00000008 };enum bnxt_ulp_fdb_resource_flags {
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +3 -2
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Thu Aug 26 17:43:36 2021 */ +/* date: Thu Sep 9 11:11:05 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -347,7 +347,8 @@ struct bnxt_ulp_app_capabilities_info ulp_app_cap_info_list[] = { .device_id = BNXT_ULP_DEVICE_ID_THOR, .flags =BNXT_ULP_APP_CAP_SHARED_EN |BNXT_ULP_APP_CAP_HOT_UPGRADE_EN | -BNXT_ULP_APP_CAP_UNICAST_ONLY +BNXT_ULP_APP_CAP_UNICAST_ONLY | +BNXT_ULP_APP_CAP_SOCKET_DIRECT }, { .app_id = 2,
Signature · 1 line
2.17.1
PATCH v3 6/20 net/bnxt: enable wildcard match for ingress flows
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
Enabled wildcard match support for ipv4 ingress flows.
--- .../generic_templates/ulp_template_db_class.c | 1986 ++++++++--------- .../generic_templates/ulp_template_db_enum.h | 4 +- .../ulp_template_db_thor_class.c | 251 +-- 3 files changed, 1118 insertions(+), 1123 deletions(-)
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_class.c +993 -993
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Fri Aug 6 11:15:47 2021 */ +/* date: Thu Sep 16 13:12:05 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -1016,7 +1016,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55dd, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1031,7 +1031,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1df1, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 4104, + .flow_sig_id = 4104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1047,7 +1047,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e55, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1063,7 +1063,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0649, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 6152, + .flow_sig_id = 6152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1080,7 +1080,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1011, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1095,7 +1095,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_40e9, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 16392, + .flow_sig_id = 16392UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1111,7 +1111,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e99, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1127,7 +1127,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_06ad, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 24584, + .flow_sig_id = 24584UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1144,7 +1144,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_38c7, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1160,7 +1160,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_00fb, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32776, + .flow_sig_id = 32776UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1177,7 +1177,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_24d3, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1194,7 +1194,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_559b, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32840, + .flow_sig_id = 32840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1212,7 +1212,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5003, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1229,7 +1229,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1837, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1247,7 +1247,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3bef, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1265,7 +1265,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0403, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49224, + .flow_sig_id = 49224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1284,7 +1284,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3d3f, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1300,7 +1300,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0543, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131080, + .flow_sig_id = 131080UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1317,7 +1317,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_292b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1334,7 +1334,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_59e3, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131144, + .flow_sig_id = 131144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1352,7 +1352,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5d3b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1369,7 +1369,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_254f, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196616, + .flow_sig_id = 196616UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1387,7 +1387,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4917, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1405,7 +1405,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_113b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196680, + .flow_sig_id = 196680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1424,7 +1424,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55fd, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1440,7 +1440,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1dd1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 4104, + .flow_sig_id = 4104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1457,7 +1457,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e75, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1474,7 +1474,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0669, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 6152, + .flow_sig_id = 6152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1492,7 +1492,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1ba1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1509,7 +1509,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c69, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 12296, + .flow_sig_id = 12296UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1527,7 +1527,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0439, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1545,7 +1545,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_34e1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 14344, + .flow_sig_id = 14344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1564,7 +1564,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0465, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1581,7 +1581,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_352d, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 20488, + .flow_sig_id = 20488UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1599,7 +1599,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55b1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1617,7 +1617,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1da5, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 22536, + .flow_sig_id = 22536UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1636,7 +1636,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_32fd, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1654,7 +1654,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_63a5, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 28680, + .flow_sig_id = 28680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1673,7 +1673,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1b75, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1692,7 +1692,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c3d, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 30728, + .flow_sig_id = 30728UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1712,7 +1712,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1031, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1728,7 +1728,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_40c9, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 16392, + .flow_sig_id = 16392UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1745,7 +1745,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3eb9, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1762,7 +1762,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_068d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 24584, + .flow_sig_id = 24584UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1780,7 +1780,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5039, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1797,7 +1797,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_180d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1815,7 +1815,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15fd, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1833,7 +1833,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_46b5, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 57352, + .flow_sig_id = 57352UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1852,7 +1852,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_303d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1869,7 +1869,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_60f5, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 81928, + .flow_sig_id = 81928UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1887,7 +1887,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ea5, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1905,7 +1905,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2689, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 90120, + .flow_sig_id = 90120UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1924,7 +1924,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0771, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1942,7 +1942,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3809, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 114696, + .flow_sig_id = 114696UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1961,7 +1961,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_35f9, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -1980,7 +1980,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66b1, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 122888, + .flow_sig_id = 122888UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2000,7 +2000,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_559d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2016,7 +2016,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1db1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 4104, + .flow_sig_id = 4104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2033,7 +2033,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e15, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2050,7 +2050,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0609, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 6152, + .flow_sig_id = 6152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2068,7 +2068,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1bc1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2085,7 +2085,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c09, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 12296, + .flow_sig_id = 12296UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2103,7 +2103,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0459, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2121,7 +2121,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3481, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 14344, + .flow_sig_id = 14344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2140,7 +2140,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0405, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2157,7 +2157,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_354d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 20488, + .flow_sig_id = 20488UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2175,7 +2175,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55d1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2193,7 +2193,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1dc5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 22536, + .flow_sig_id = 22536UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2212,7 +2212,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_329d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2230,7 +2230,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_63c5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 28680, + .flow_sig_id = 28680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2249,7 +2249,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1b15, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2268,7 +2268,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c5d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 30728, + .flow_sig_id = 30728UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2288,7 +2288,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1051, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2304,7 +2304,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_40a9, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 16392, + .flow_sig_id = 16392UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2321,7 +2321,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3ed9, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2338,7 +2338,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_06ed, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 24584, + .flow_sig_id = 24584UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2356,7 +2356,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5059, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2373,7 +2373,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_186d, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2391,7 +2391,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_159d, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2409,7 +2409,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_46d5, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 57352, + .flow_sig_id = 57352UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2428,7 +2428,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_305d, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2445,7 +2445,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6095, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 81928, + .flow_sig_id = 81928UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2463,7 +2463,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ec5, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2481,7 +2481,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_26e9, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 90120, + .flow_sig_id = 90120UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2500,7 +2500,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0711, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2518,7 +2518,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3869, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 114696, + .flow_sig_id = 114696UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2537,7 +2537,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3599, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2556,7 +2556,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66d1, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 122888, + .flow_sig_id = 122888UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2576,7 +2576,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_38e7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2593,7 +2593,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_00db, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32776, + .flow_sig_id = 32776UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2611,7 +2611,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_24f3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2629,7 +2629,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55bb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32840, + .flow_sig_id = 32840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2648,7 +2648,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5023, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2666,7 +2666,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1817, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2685,7 +2685,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3bcf, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2704,7 +2704,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0423, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49224, + .flow_sig_id = 49224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2724,7 +2724,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_58e3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2742,7 +2742,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_20d7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98312, + .flow_sig_id = 98312UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2761,7 +2761,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_448f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2780,7 +2780,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0ce3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98376, + .flow_sig_id = 98376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2800,7 +2800,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_076b, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2819,7 +2819,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3813, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114696, + .flow_sig_id = 114696UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2839,7 +2839,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5bcb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2859,7 +2859,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_243f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114760, + .flow_sig_id = 114760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2880,7 +2880,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_144b, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2898,7 +2898,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4573, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163848, + .flow_sig_id = 163848UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2917,7 +2917,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0057, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2936,7 +2936,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_311f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163912, + .flow_sig_id = 163912UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2956,7 +2956,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2b87, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2975,7 +2975,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c4f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180232, + .flow_sig_id = 180232UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -2995,7 +2995,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1793, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3015,7 +3015,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_485b, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180296, + .flow_sig_id = 180296UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3036,7 +3036,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3447, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3055,7 +3055,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_650f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229384, + .flow_sig_id = 229384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3075,7 +3075,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2053, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3095,7 +3095,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_511b, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229448, + .flow_sig_id = 229448UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3116,7 +3116,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4b83, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3136,7 +3136,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_13f7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245768, + .flow_sig_id = 245768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3157,7 +3157,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_37af, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3178,7 +3178,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6857, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245832, + .flow_sig_id = 245832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3200,7 +3200,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3d1f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3217,7 +3217,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0563, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131080, + .flow_sig_id = 131080UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3235,7 +3235,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_290b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3253,7 +3253,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_59c3, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131144, + .flow_sig_id = 131144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3272,7 +3272,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5d1b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3290,7 +3290,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_256f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196616, + .flow_sig_id = 196616UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3309,7 +3309,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4937, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3328,7 +3328,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_111b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196680, + .flow_sig_id = 196680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3348,7 +3348,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5f4b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3366,7 +3366,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_275f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393224, + .flow_sig_id = 393224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3385,7 +3385,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4b67, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3404,7 +3404,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_134b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393288, + .flow_sig_id = 393288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3424,7 +3424,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1683, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3443,7 +3443,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_475b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458760, + .flow_sig_id = 458760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3463,7 +3463,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_02bf, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3483,7 +3483,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3377, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458824, + .flow_sig_id = 458824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3504,7 +3504,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_19db, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3522,7 +3522,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4a93, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655368, + .flow_sig_id = 655368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3541,7 +3541,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_05f7, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3560,7 +3560,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_368f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655432, + .flow_sig_id = 655432UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3580,7 +3580,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39c7, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3599,7 +3599,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_022b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720904, + .flow_sig_id = 720904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3619,7 +3619,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_25f3, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3639,7 +3639,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_568b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720968, + .flow_sig_id = 720968UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3660,7 +3660,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3c37, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3679,7 +3679,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_041b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917512, + .flow_sig_id = 917512UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3699,7 +3699,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2823, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3719,7 +3719,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_58fb, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917576, + .flow_sig_id = 917576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3740,7 +3740,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c33, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3760,7 +3760,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2407, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983048, + .flow_sig_id = 983048UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3781,7 +3781,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_482f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3802,7 +3802,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1033, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983112, + .flow_sig_id = 983112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3824,7 +3824,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3887, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3841,7 +3841,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_00bb, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32776, + .flow_sig_id = 32776UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3859,7 +3859,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2493, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3877,7 +3877,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55db, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32840, + .flow_sig_id = 32840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3896,7 +3896,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5043, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3914,7 +3914,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1877, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3933,7 +3933,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3baf, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3952,7 +3952,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0443, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49224, + .flow_sig_id = 49224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3972,7 +3972,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5883, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -3990,7 +3990,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_20b7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98312, + .flow_sig_id = 98312UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4009,7 +4009,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_44ef, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4028,7 +4028,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0c83, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98376, + .flow_sig_id = 98376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4048,7 +4048,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_070b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4067,7 +4067,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3873, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114696, + .flow_sig_id = 114696UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4087,7 +4087,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5bab, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4107,7 +4107,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_245f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114760, + .flow_sig_id = 114760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4128,7 +4128,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_142b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4146,7 +4146,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4513, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163848, + .flow_sig_id = 163848UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4165,7 +4165,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0037, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4184,7 +4184,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_317f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163912, + .flow_sig_id = 163912UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4204,7 +4204,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2be7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4223,7 +4223,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c2f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180232, + .flow_sig_id = 180232UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4243,7 +4243,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_17f3, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4263,7 +4263,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_483b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180296, + .flow_sig_id = 180296UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4284,7 +4284,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3427, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4303,7 +4303,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_656f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229384, + .flow_sig_id = 229384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4323,7 +4323,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2033, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4343,7 +4343,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_517b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229448, + .flow_sig_id = 229448UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4364,7 +4364,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4be3, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4384,7 +4384,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1397, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245768, + .flow_sig_id = 245768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4405,7 +4405,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_37cf, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4426,7 +4426,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6837, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245832, + .flow_sig_id = 245832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4448,7 +4448,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3d7f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4465,7 +4465,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0503, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131080, + .flow_sig_id = 131080UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4483,7 +4483,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_296b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4501,7 +4501,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_59a3, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131144, + .flow_sig_id = 131144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4520,7 +4520,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5d7b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4538,7 +4538,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_250f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196616, + .flow_sig_id = 196616UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4557,7 +4557,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4957, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4576,7 +4576,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_117b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196680, + .flow_sig_id = 196680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4596,7 +4596,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5f2b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4614,7 +4614,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_273f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393224, + .flow_sig_id = 393224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4633,7 +4633,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4b07, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4652,7 +4652,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_132b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393288, + .flow_sig_id = 393288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4672,7 +4672,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_16e3, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4691,7 +4691,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_473b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458760, + .flow_sig_id = 458760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4711,7 +4711,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_02df, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4731,7 +4731,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3317, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458824, + .flow_sig_id = 458824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4752,7 +4752,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_19bb, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4770,7 +4770,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4af3, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655368, + .flow_sig_id = 655368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4789,7 +4789,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0597, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4808,7 +4808,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_36ef, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655432, + .flow_sig_id = 655432UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4828,7 +4828,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39a7, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4847,7 +4847,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_024b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720904, + .flow_sig_id = 720904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4867,7 +4867,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2593, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4887,7 +4887,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_56eb, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720968, + .flow_sig_id = 720968UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4908,7 +4908,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3c57, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4927,7 +4927,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_047b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917512, + .flow_sig_id = 917512UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4947,7 +4947,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2843, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4967,7 +4967,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_589b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917576, + .flow_sig_id = 917576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -4988,7 +4988,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c53, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -5008,7 +5008,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2467, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983048, + .flow_sig_id = 983048UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -5029,7 +5029,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_484f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -5050,7 +5050,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1053, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983112, + .flow_sig_id = 983112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -5072,7 +5072,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ce1, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5086,7 +5086,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4579, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5101,7 +5101,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1735, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5115,7 +5115,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_45bd, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5130,7 +5130,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3feb, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5145,7 +5145,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2bf7, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5161,7 +5161,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5727, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5177,7 +5177,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4333, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5194,7 +5194,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4453, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5209,7 +5209,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_304f, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5225,7 +5225,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_645f, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5241,7 +5241,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_504b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5258,7 +5258,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5cc1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5273,7 +5273,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4559, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5289,7 +5289,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2285, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5305,7 +5305,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b1d, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5322,7 +5322,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b49, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5338,7 +5338,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c95, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5355,7 +5355,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39c1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5372,7 +5372,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2259, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5390,7 +5390,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1715, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5405,7 +5405,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_459d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5421,7 +5421,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_571d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5437,7 +5437,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1cd1, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5454,7 +5454,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3711, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5470,7 +5470,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6599, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5487,7 +5487,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e55, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5504,7 +5504,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3cdd, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5522,7 +5522,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ca1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5537,7 +5537,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4539, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5553,7 +5553,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_22e5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5569,7 +5569,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b7d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5586,7 +5586,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b29, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5602,7 +5602,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5cf5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5619,7 +5619,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39a1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5636,7 +5636,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2239, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5654,7 +5654,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1775, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5669,7 +5669,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_45fd, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5685,7 +5685,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_577d, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5701,7 +5701,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1cb1, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5718,7 +5718,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3771, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5734,7 +5734,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_65f9, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5751,7 +5751,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e35, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5768,7 +5768,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3cbd, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5786,7 +5786,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3fcb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5802,7 +5802,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2bd7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5819,7 +5819,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5707, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5836,7 +5836,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4313, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5854,7 +5854,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5fc7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5871,7 +5871,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4bd3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5889,7 +5889,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e4f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5907,7 +5907,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_632f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5926,7 +5926,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1baf, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5943,7 +5943,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_07bb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5961,7 +5961,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_32eb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5979,7 +5979,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1ef7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -5998,7 +5998,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3bab, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6016,7 +6016,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_27b7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6035,7 +6035,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_52e7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6054,7 +6054,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3ef3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6074,7 +6074,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4473, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6090,7 +6090,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_306f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6107,7 +6107,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_647f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6124,7 +6124,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_506b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6142,7 +6142,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66af, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6159,7 +6159,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_525b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6177,7 +6177,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1de7, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6195,7 +6195,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0993, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6214,7 +6214,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_213f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6231,7 +6231,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0d2b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6249,7 +6249,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_413b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6267,7 +6267,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2cd7, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6286,7 +6286,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_436b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6304,7 +6304,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2f07, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6323,7 +6323,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6317, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6342,7 +6342,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4f03, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6362,7 +6362,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3fab, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6378,7 +6378,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2bb7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6395,7 +6395,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5767, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6412,7 +6412,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4373, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6430,7 +6430,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5fa7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6447,7 +6447,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4bb3, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6465,7 +6465,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e2f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6483,7 +6483,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_634f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6502,7 +6502,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1bcf, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6519,7 +6519,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_07db, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6537,7 +6537,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_328b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6555,7 +6555,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1e97, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6574,7 +6574,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3bcb, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6592,7 +6592,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_27d7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6611,7 +6611,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5287, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6630,7 +6630,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e93, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6650,7 +6650,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4413, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6666,7 +6666,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_300f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6683,7 +6683,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_641f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6700,7 +6700,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_500b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6718,7 +6718,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66cf, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6735,7 +6735,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_523b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6753,7 +6753,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1d87, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6771,7 +6771,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_09f3, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6790,7 +6790,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_215f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6807,7 +6807,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0d4b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6825,7 +6825,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_415b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6843,7 +6843,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2cb7, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6862,7 +6862,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_430b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6880,7 +6880,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2f67, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6899,7 +6899,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6377, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6918,7 +6918,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4f63, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -6938,7 +6938,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29b5, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -6953,7 +6953,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29ad, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -6968,7 +6968,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29b7, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -6984,7 +6984,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1583, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7001,7 +7001,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29af, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7017,7 +7017,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_159b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7034,7 +7034,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2995, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7050,7 +7050,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_298d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7066,7 +7066,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29f5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7082,7 +7082,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29ed, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7098,7 +7098,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2997, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7115,7 +7115,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15a3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7133,7 +7133,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_298f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7150,7 +7150,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15bb, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7168,7 +7168,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29f7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7185,7 +7185,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15c3, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7203,7 +7203,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29ef, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7220,7 +7220,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15db, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits =
@@ -7238,7 +7238,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1151, .class_tid = 1, .hdr_sig_id = 12, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 3, .app_sig = 0, .hdr_sig = { .bits =
@@ -7255,7 +7255,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_315d, .class_tid = 1, .hdr_sig_id = 12, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 3, .app_sig = 0, .hdr_sig = { .bits =
@@ -7273,7 +7273,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3612, .class_tid = 2, .hdr_sig_id = 0, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -7292,7 +7292,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66da, .class_tid = 2, .hdr_sig_id = 0, - .flow_sig_id = 81928, + .flow_sig_id = 81928UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits =
@@ -7312,7 +7312,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e082, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1313792, + .flow_sig_id = 1313792UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7332,7 +7332,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ab46, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1321984, + .flow_sig_id = 1321984UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7353,7 +7353,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c82a, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 3410944, + .flow_sig_id = 3410944UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7374,7 +7374,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f9a2, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 3419136, + .flow_sig_id = 3419136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7396,7 +7396,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d8ce, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 538184704, + .flow_sig_id = 538184704UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7417,7 +7417,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a2d2, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 538192896, + .flow_sig_id = 538192896UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7439,7 +7439,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c076, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 540281856, + .flow_sig_id = 540281856UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7461,7 +7461,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f1ee, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 540290048, + .flow_sig_id = 540290048UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7484,7 +7484,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a96e, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1075055616, + .flow_sig_id = 1075055616UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7505,7 +7505,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dae6, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1075063808, + .flow_sig_id = 1075063808UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7527,7 +7527,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c7aa, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1077152768, + .flow_sig_id = 1077152768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7549,7 +7549,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c26e, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1077160960, + .flow_sig_id = 1077160960UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7572,7 +7572,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a0fa, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1611926528, + .flow_sig_id = 1611926528UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7594,7 +7594,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d272, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1611934720, + .flow_sig_id = 1611934720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7617,7 +7617,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_fff6, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1614023680, + .flow_sig_id = 1614023680UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7640,7 +7640,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e16e, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1614031872, + .flow_sig_id = 1614031872UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7664,7 +7664,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e165, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 1313792, + .flow_sig_id = 1313792UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7684,7 +7684,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_aaa1, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 1321984, + .flow_sig_id = 1321984UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7705,7 +7705,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c9cd, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 3410944, + .flow_sig_id = 3410944UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7726,7 +7726,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f845, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 3419136, + .flow_sig_id = 3419136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7748,7 +7748,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_90f9, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 2148797440, + .flow_sig_id = 2148797440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7769,7 +7769,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c371, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 2148805632, + .flow_sig_id = 2148805632UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7791,7 +7791,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e19d, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 2150894592, + .flow_sig_id = 2150894592UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7813,7 +7813,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d015, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 2150902784, + .flow_sig_id = 2150902784UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7836,7 +7836,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8c09, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 4296281088, + .flow_sig_id = 4296281088UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7857,7 +7857,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_be89, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 4296289280, + .flow_sig_id = 4296289280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7879,7 +7879,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ddad, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 4298378240, + .flow_sig_id = 4298378240UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
@@ -7901,7 +7901,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cc2d, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 4298386432, + .flow_sig_id = 4298386432UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits =
Lines of this file are not shown. View the raw message.
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +2 -2
Lines of this file are not shown. View the raw message.
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c +123 -128
251 lines not on this page · raw message
The rest of this diff is not shown. View the raw message.
Signature · 1 line
2.17.1
Part of the diff is not shown here. View the raw message.
PATCH v3 7/20 net/bnxt: support inner IP header for GRE tunnel flows
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
This change allows adding IP header matches for GRE flows that does not specify outer IP header in the flow match pattern.
--- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 7 ++++--- drivers/net/bnxt/tf_ulp/ulp_template_struct.h | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-)
drivers/net/bnxt/tf_ulp/ulp_rte_parser.c +4 -3
@@ -1119,7 +1119,8 @@ ulp_rte_ipv4_hdr_handler(const struct rte_flow_item *item,/* Set the ipv4 header bitmap and computed l3 header bitmaps */ if (ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV4 ) || -ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV6 )) { +ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV6 ) || +ULP_COMP_FLD_IDX_RD (params,BNXT_ULP_CF_IDX_L3_TUN )) {ULP_BITMAP_SET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_I_IPV4 );ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_I_L3 ,1 ); inner_flag =1 ;
@@ -1245,7 +1246,8 @@ ulp_rte_ipv6_hdr_handler(const struct rte_flow_item *item,/* Set the ipv6 header bitmap and computed l3 header bitmaps */ if (ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV4 ) || -ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV6 )) { +ULP_BITMAP_ISSET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_O_IPV6 ) || +ULP_COMP_FLD_IDX_RD (params,BNXT_ULP_CF_IDX_L3_TUN )) {ULP_BITMAP_SET (hdr_bitmap->bits,BNXT_ULP_HDR_BIT_I_IPV6 );ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_I_L3 ,1 ); inner_flag =1 ;
@@ -2127,7 +2129,6 @@ ulp_rte_vxlan_decap_act_handler(const struct rte_flow_action *action_item BNXT_ULP_ACT_BIT_VXLAN_DECAP);/* Update computational field with tunnel decap info */ ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_L3_TUN_DECAP ,1 ); -ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_L3_TUN ,1 );return BNXT_TF_RC_SUCCESS ; }
drivers/net/bnxt/tf_ulp/ulp_template_struct.h +1 -1
@@ -27,7 +27,7 @@#define BNXT_ULP_PROTO_HDR_UDP_NUM 4#define BNXT_ULP_PROTO_HDR_TCP_NUM 9#define BNXT_ULP_PROTO_HDR_VXLAN_NUM 4 -#define BNXT_ULP_PROTO_HDR_GRE_NUM 6 +#define BNXT_ULP_PROTO_HDR_GRE_NUM 2#define BNXT_ULP_PROTO_HDR_ICMP_NUM 5#define BNXT_ULP_PROTO_HDR_MAX 128#define BNXT_ULP_PROTO_HDR_ENCAP_MAX 64
Signature · 1 line
2.17.1
PATCH v3 8/20 net/bnxt: get TruFlow version
In reply to Venkat DuvvuruFrom: Jay Ding <[email protected]>
Implement tf_get_version that returns TruFlow version numbers and CFA resources capbilities.
--- drivers/net/bnxt/hsi_struct_def_dpdk.h | 15 ++-- drivers/net/bnxt/tf_core/tf_core.c | 29 ++++++++ drivers/net/bnxt/tf_core/tf_core.h | 75 ++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_device.h | 50 ++++++++++++++ drivers/net/bnxt/tf_core/tf_device_p4.c | 65 +++++++++++++++++- drivers/net/bnxt/tf_core/tf_device_p4.h | 79 +++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_device_p58.c | 65 +++++++++++++++++- drivers/net/bnxt/tf_core/tf_device_p58.h | 87 ++++++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_msg.c | 35 ++++++++++ drivers/net/bnxt/tf_core/tf_msg.h | 19 ++++++ 10 files changed, 513 insertions(+), 6 deletions(-)
drivers/net/bnxt/hsi_struct_def_dpdk.h +11 -4
@@ -1058,8 +1058,8 @@ struct hwrm_err_output {#define HWRM_VERSION_MINOR 10#define HWRM_VERSION_UPDATE 2/* non-zero means beta version */ -#define HWRM_VERSION_RSVD 55 -#define HWRM_VERSION_STR "1.10.2.55" +#define HWRM_VERSION_RSVD 58 +#define HWRM_VERSION_STR "1.10.2.58"/**************** * hwrm_ver_get *
@@ -45178,7 +45178,7 @@ struct hwrm_tf_version_get_input {uint64_t resp_addr; } __rte_packed; -/* hwrm_tf_version_get_output (size:128b/16B) */ +/* hwrm_tf_version_get_output (size:256b/32B) */ struct hwrm_tf_version_get_output {/* The specific error status for the command. */ uint16_t error_code;
@@ -45195,7 +45195,14 @@ struct hwrm_tf_version_get_output {/* Version Update number. */ uint8_t update;/* unused. */ -uint8_t unused0[4 ]; +uint8_t unused0[5 ]; +/* +* This field is used to indicate device's capabilities and +* configurations. +*/ +uint64_t dev_caps_cfg; +/* unused. */ +uint8_t unused1[7 ];/* * This field is used in Output records to indicate that the output * is completely written to RAM. This field should be read as '1'
drivers/net/bnxt/tf_core/tf_core.c +29 -0
@@ -1802,3 +1802,32 @@ int tf_get_session_info(struct tf *tfp,return 0 ; } + +int tf_get_version (struct tf *tfp, +struct tf_get_version_parms *parms) +{ +int rc; +struct tf_dev_info dev; + +TF_CHECK_PARMS2 (tfp, parms); + +/* This function can be called before open session, filter +* out any non-supported device types on the Core side. +*/ +if (parms->device_type !=TF_DEVICE_TYPE_WH && + parms->device_type !=TF_DEVICE_TYPE_THOR && + parms->device_type !=TF_DEVICE_TYPE_SR ) { +TFP_DRV_LOG (ERR , +"Unsupported device type %d\n" , + parms->device_type); +return -ENOTSUP ; + } + +tf_dev_bind_ops (parms->device_type, &dev); + + rc =tf_msg_get_version (parms->bp, &dev, parms); +if (rc) +return rc; + +return 0 ; +}
drivers/net/bnxt/tf_core/tf_core.h +75 -0
79 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device.h +50 -0
72 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p4.c +64 -1
81 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p4.h +79 -0
83 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p58.c +64 -1
87 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device_p58.h +87 -0
91 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_msg.c +35 -0
@@ -2306,3 +2306,38 @@ tf_msg_set_if_tbl_entry(struct tf *tfp,return 0 ; } + +int +tf_msg_get_version (struct bnxt *bp, +struct tf_dev_info *dev, +struct tf_get_version_parms *params) + +{ +int rc; +struct hwrm_tf_version_get_input req = {0 }; +struct hwrm_tf_version_get_output resp = {0 }; +struct tfp_send_msg_parms parms = {0 }; + +/* Populate the request */ + parms.tf_type =HWRM_TF_VERSION_GET , + parms.req_data = (uint32_t *)&req; + parms.req_size =sizeof (req); + parms.resp_data = (uint32_t *)&resp; + parms.resp_size =sizeof (resp); + parms.mailbox = dev->ops->tf_dev_get_mailbox (); + + rc =tfp_send_msg_direct (bp, + &parms); + + params->major = resp.major; + params->minor = resp.minor; + params->update = resp.update; + + dev->ops->tf_dev_map_hcapi_caps (resp.dev_caps_cfg, + ¶ms->dev_ident_caps, + ¶ms->dev_tcam_caps, + ¶ms->dev_tbl_caps, + ¶ms->dev_em_caps); + +return rc; +}
drivers/net/bnxt/tf_core/tf_msg.h +19 -0
@@ -738,4 +738,23 @@ int tf_msg_set_if_tbl_entry(struct tf *tfp,int tf_msg_get_if_tbl_entry (struct tf *tfp,struct tf_if_tbl_get_parms *params); +/** +* Send get version request to the firmware. +* +* [in] bp +* Pointer to bnxt handle +* +* [in] dev +* Pointer to the associated device +* +* [in/out] parms +* Pointer to the version info parameter +* +* Returns: +* 0 on Success else internal Truflow error +*/ +int +tf_msg_get_version (struct bnxt *bp, +struct tf_dev_info *dev, +struct tf_get_version_parms *parms);#endif /* _TF_MSG_H_ */
Signature · 1 line
2.17.1
PATCH v3 9/20 net/bnxt: increase flow scale for Thor
In reply to Venkat DuvvuruFrom: Shahaji Bhosle <[email protected]>
* Updated defines and data types to allow 256 VFRs.
* Increased the encap record cache to support 256 to 4K entries. So VxLAN connections can be scaled to 4K entries.
--- drivers/net/bnxt/bnxt.h | 6 +++++- drivers/net/bnxt/bnxt_cpr.c | 2 +- drivers/net/bnxt/bnxt_ethdev.c | 18 +++++++++--------- drivers/net/bnxt/bnxt_reps.c | 3 +-- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 2 +- .../generic_templates/ulp_template_db_tbl.c | 8 ++++---- drivers/net/bnxt/tf_ulp/ulp_def_rules.c | 6 +++--- 7 files changed, 24 insertions(+), 21 deletions(-)
drivers/net/bnxt/bnxt.h +5 -1
@@ -240,7 +240,11 @@ struct bnxt_parent_info {struct bnxt_pf_info {#define BNXT_FIRST_PF_FID 1#define BNXT_MAX_VFS (bp) ((bp)->pf->max_vfs) -#define BNXT_MAX_VF_REPS 64 +#define BNXT_MAX_VF_REPS_WH 64 +#define BNXT_MAX_VF_REPS_TH 256 +#define BNXT_MAX_VF_REPS (bp) \ + (BNXT_CHIP_P5(bp) ? BNXT_MAX_VF_REPS_TH : \ + BNXT_MAX_VF_REPS_WH)#define BNXT_TOTAL_VFS (bp) ((bp)->pf->total_vfs)#define BNXT_FIRST_VF_FID 128#define BNXT_PF_RINGS_USED (bp) bnxt_get_num_queues(bp)
drivers/net/bnxt/bnxt_cpr.c +1 -1
@@ -74,7 +74,7 @@ bnxt_process_default_vnic_change(struct bnxt *bp,BNXT_DEFAULT_VNIC_CHANGE_VF_ID_SFT ;PMD_DRV_LOG (INFO ,"async event received vf_id 0x%x\n" , vf_fid); -for (vf_id =0 ; vf_id <BNXT_MAX_VF_REPS ; vf_id++) { +for (vf_id =0 ; vf_id <BNXT_MAX_VF_REPS (bp); vf_id++) { eth_dev = bp->rep_info[vf_id].vfr_eth_dev;if (!eth_dev)continue ;
drivers/net/bnxt/bnxt_ethdev.c +9 -9
@@ -1179,7 +1179,7 @@ void bnxt_print_link_info(struct rte_eth_dev *eth_dev)struct rte_eth_link *link = ð_dev->data->dev_link;if (link->link_status) - PMD_DRV_LOG(INFO, "Port %d Link Up - speed %u Mbps - %s\n", + PMD_DRV_LOG(DEBUG, "Port %d Link Up - speed %u Mbps - %s\n", eth_dev->data->port_id, (uint32_t)link->link_speed, (link->link_duplex == ETH_LINK_FULL_DUPLEX) ?
@@ -6034,7 +6034,7 @@ static int bnxt_init_rep_info(struct bnxt *bp)return 0 ; bp->rep_info =rte_zmalloc ("bnxt_rep_info" , -sizeof (bp->rep_info[0 ]) *BNXT_MAX_VF_REPS , +sizeof (bp->rep_info[0 ]) *BNXT_MAX_VF_REPS (bp),0 );if (!bp->rep_info) {PMD_DRV_LOG (ERR ,"Failed to alloc memory for rep info\n" );
@@ -6076,7 +6076,9 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev, {struct rte_eth_dev *vf_rep_eth_dev;char name[RTE_ETH_NAME_MAX_LEN ]; -struct bnxt *backing_bp; +struct bnxt *backing_bp = backing_eth_dev->data->dev_private; +uint16_t max_vf_reps =BNXT_MAX_VF_REPS (backing_bp); +uint16_t num_rep;int i, ret =0 ;struct rte_kvargs *kvlist =NULL ;
@@ -6089,9 +6091,9 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev,return -ENOTSUP ; } num_rep = eth_da->nb_representor_ports; -if (num_rep >BNXT_MAX_VF_REPS ) { +if (num_rep > max_vf_reps) {PMD_DRV_LOG (ERR ,"nb_representor_ports = %d > %d MAX VF REPS\n" , - num_rep,BNXT_MAX_VF_REPS ); + num_rep, max_vf_reps);return -EINVAL ; }
@@ -6102,8 +6104,6 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev,return -EINVAL ; } - backing_bp = backing_eth_dev->data->dev_private; -if (!(BNXT_PF (backing_bp) ||BNXT_VF_IS_TRUSTED (backing_bp))) {PMD_DRV_LOG (ERR ,"Not a PF or trusted VF. No Representor support\n" );
@@ -6123,9 +6123,9 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev, .parent_dev = backing_eth_dev }; -if (representor.vf_id >=BNXT_MAX_VF_REPS ) { +if (representor.vf_id >= max_vf_reps) {PMD_DRV_LOG (ERR ,"VF-Rep id %d >= %d MAX VF ID\n" , - representor.vf_id,BNXT_MAX_VF_REPS ); + representor.vf_id, max_vf_reps);continue ; }
drivers/net/bnxt/bnxt_reps.c +1 -2
@@ -210,7 +210,6 @@ int bnxt_representor_init(struct rte_eth_dev *eth_dev, void *params) eth_dev->data->dev_link.link_status = link->link_status; eth_dev->data->dev_link.link_autoneg = link->link_autoneg; -PMD_DRV_LOG (INFO ,"calling bnxt_print_link_info\n" );bnxt_print_link_info (eth_dev); PMD_DRV_LOG(INFO,
@@ -821,7 +820,7 @@ int bnxt_rep_stop_all(struct bnxt *bp)if (!bp->rep_info)return 0 ; -for (vf_id =0 ; vf_id <BNXT_MAX_VF_REPS ; vf_id++) { +for (vf_id =0 ; vf_id <BNXT_MAX_VF_REPS (bp); vf_id++) { rep_eth_dev = bp->rep_info[vf_id].vfr_eth_dev;if (!rep_eth_dev)continue ;
drivers/net/bnxt/tf_ulp/bnxt_ulp.h +1 -1
@@ -262,7 +262,7 @@ bnxt_ulp_cntxt_ptr2_ulp_flags_get(struct bnxt_ulp_context *ulp_ctx, uint32_t *flags);int32_t -bnxt_ulp_get_df_rule_info (uint8_t port_id,struct bnxt_ulp_context *ulp_ctx, +bnxt_ulp_get_df_rule_info (uint16_t port_id,struct bnxt_ulp_context *ulp_ctx,struct bnxt_ulp_df_rule_info *info); struct bnxt_ulp_vfr_rule_info*
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +4 -4
@@ -3,7 +3,7 @@* All rights reserved. */ -/* date: Thu Sep 9 11:11:05 2021 */ +/* date: Thu Sep 16 11:49:55 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h"
@@ -164,12 +164,12 @@ struct bnxt_ulp_generic_tbl_params ulp_generic_tbl_params[] = { }, [BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_REC_CACHE <<1 |BNXT_ULP_DIRECTION_EGRESS ] = { - .name ="INGRESS GEN_TABLE_VXLAN_ENCAP_REC_CACHE" , - .result_num_entries =256 , + .name ="EGRESS GEN_TABLE_VXLAN_ENCAP_REC_CACHE" , + .result_num_entries =4096 , .result_num_bytes =6 , .key_num_bytes =17 , .num_buckets =8 , - .hash_tbl_entries =1024 , + .hash_tbl_entries =16384 , .result_byte_order =BNXT_ULP_BYTE_ORDER_LE } };
drivers/net/bnxt/tf_ulp/ulp_def_rules.c +3 -3
@@ -441,7 +441,7 @@ void bnxt_ulp_destroy_df_rules(struct bnxt *bp, bool global) {struct bnxt_ulp_df_rule_info *info; -uint8_t port_id; +uint16_t port_id;if (!BNXT_TRUFLOW_EN (bp) ||BNXT_ETH_DEV_IS_REPRESENTOR (bp->eth_dev))
@@ -505,7 +505,7 @@ int32_t bnxt_ulp_create_df_rules(struct bnxt *bp) {struct bnxt_ulp_df_rule_info *info; -uint8_t port_id; +uint16_t port_id;int rc =0 ; if (!BNXT_TRUFLOW_EN(bp) ||
@@ -562,7 +562,7 @@ bnxt_ulp_create_vfr_default_rules(struct rte_eth_dev *vfr_ethdev)struct rte_eth_dev *parent_dev = vfr->parent_dev;struct bnxt *bp = parent_dev->data->dev_private;uint16_t vfr_port_id = vfr_ethdev->data->port_id; -uint8_t port_id; +uint16_t port_id;int rc;if (!bp || !BNXT_TRUFLOW_EN (bp))
Signature · 1 line
2.17.1
PATCH v3 10/20 net/bnxt: remove accumulation of stats devargs argument
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
The accumulation of flow counters is not determined by the application device arguments instead it is dictated by the platform capabilities whether to do software based accumulation or not.
--- drivers/net/bnxt/bnxt.h | 3 -- drivers/net/bnxt/bnxt_ethdev.c | 53 ---------------------------- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 8 ----- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 1 - drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c | 12 +++---- 5 files changed, 4 insertions(+), 73 deletions(-)
drivers/net/bnxt/bnxt.h +0 -3
@@ -718,11 +718,8 @@ struct bnxt {uint32_t flags2;#define BNXT_FLAGS2_PTP_TIMESYNC_ENABLED BIT(0)#define BNXT_FLAGS2_PTP_ALARM_SCHEDULED BIT(1) -#define BNXT_FLAGS2_ACCUM_STATS_EN BIT(2)#define BNXT_P5_PTP_TIMESYNC_ENABLED (bp) \ ((bp)->flags2 & BNXT_FLAGS2_PTP_TIMESYNC_ENABLED) -#define BNXT_ACCUM_STATS_EN (bp) \ - ((bp)->flags2 & BNXT_FLAGS2_ACCUM_STATS_EN)uint16_t chip_num;#define CHIP_NUM_58818 0xd818
drivers/net/bnxt/bnxt_ethdev.c +0 -53
83 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/bnxt_ulp.c +0 -8
@@ -1490,14 +1490,6 @@ bnxt_ulp_port_init(struct bnxt *bp) goto jump_to_error; } -/* set the accumulation of the stats */ -if (BNXT_ACCUM_STATS_EN (bp)) - bp->ulp_ctx->cfg_data->accum_stats = true; - -BNXT_TF_DBG (DEBUG ,"BNXT Port:%d ULP port init, accum_stats:%d\n" , - bp->eth_dev->data->port_id, - bp->ulp_ctx->cfg_data->accum_stats); -/* set the unicast mode */ if (bnxt_ulp_cntxt_ptr2_ulp_flags_get (bp->ulp_ctx, &ulp_flags)) {BNXT_TF_DBG (ERR ,"Error in getting ULP context flags\n" );
drivers/net/bnxt/tf_ulp/bnxt_ulp.h +0 -1
@@ -92,7 +92,6 @@ struct bnxt_ulp_data {#define BNXT_ULP_TUN_ENTRY_INVALID -1#define BNXT_ULP_MAX_TUN_CACHE_ENTRIES 16struct bnxt_tun_cache_entry tun_tbl[BNXT_ULP_MAX_TUN_CACHE_ENTRIES ]; -bool accum_stats;uint8_t app_id;uint8_t num_shared_clients;struct bnxt_flow_app_tun_ent app_tun[BNXT_ULP_MAX_TUN_CACHE_ENTRIES ];
drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c +4 -8
@@ -396,21 +396,17 @@ static int ulp_get_single_flow_stat(struct bnxt_ulp_context *ctxt,return rc; } -/* TBD - Get PKT/BYTE COUNT SHIFT/MASK from Template */ +/* PKT/BYTE COUNT SHIFT/MASK are device specific */ sw_cntr_indx = hw_cntr_id - fc_info->shadow_hw_tbl[dir].start_idx; sw_acc_tbl_entry = &fc_info->sw_acc_tbl[dir][sw_cntr_indx]; +/* Some dpdk applications may accumulate the flow counters while some * may not. In cases where the application is accumulating the counters * the PMD need not do the accumulation itself and viceversa to report * the correct flow counters. */ -if (ctxt->cfg_data->accum_stats) { - sw_acc_tbl_entry->pkt_count +=FLOW_CNTR_PKTS (stats, dparms); - sw_acc_tbl_entry->byte_count +=FLOW_CNTR_BYTES (stats, dparms); - }else { - sw_acc_tbl_entry->pkt_count =FLOW_CNTR_PKTS (stats, dparms); - sw_acc_tbl_entry->byte_count =FLOW_CNTR_BYTES (stats, dparms); - } + sw_acc_tbl_entry->pkt_count +=FLOW_CNTR_PKTS (stats, dparms); + sw_acc_tbl_entry->byte_count +=FLOW_CNTR_BYTES (stats, dparms);/* Update the parent counters if it is child flow */ if (sw_acc_tbl_entry->pc_flow_idx &FLOW_CNTR_PC_FLOW_VALID ) {
Signature · 1 line
2.17.1
PATCH v3 11/20 net/bnxt: fix clang compiler warnings
In reply to Venkat DuvvuruFrom: Shahaji Bhosle <[email protected]>
Typecast flow_item type, action_item type and the ENUMs to uint32_t before comparing.
--- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
drivers/net/bnxt/tf_ulp/ulp_rte_parser.c +4 -4
@@ -137,10 +137,10 @@ bnxt_ulp_rte_parser_hdr_parse(const struct rte_flow_item pattern[],/* Parse all the items in the pattern */ while (item && item->type !=RTE_FLOW_ITEM_TYPE_END ) { -if (item->type >= (uint32_t ) + if (item->type >= (typeof(item->type))BNXT_RTE_FLOW_ITEM_TYPE_END ) {if (item->type >= - (uint32_t )BNXT_RTE_FLOW_ITEM_TYPE_LAST ) + (typeof(item->type))BNXT_RTE_FLOW_ITEM_TYPE_LAST) goto hdr_parser_error;/* get the header information */ hdr_info = &ulp_vendor_hdr_info[item->type -
@@ -186,9 +186,9 @@ bnxt_ulp_rte_parser_act_parse(const struct rte_flow_action actions[],/* Parse all the items in the pattern */ while (action_item && action_item->type !=RTE_FLOW_ACTION_TYPE_END ) {if (action_item->type >= - (uint32_t )BNXT_RTE_FLOW_ACTION_TYPE_END ) { + (typeof(action_item->type))BNXT_RTE_FLOW_ACTION_TYPE_END) {if (action_item->type >= - (uint32_t )BNXT_RTE_FLOW_ACTION_TYPE_LAST ) + (typeof(action_item->type))BNXT_RTE_FLOW_ACTION_TYPE_LAST) goto act_parser_error;/* get the header information from bnxt actinfo table */ hdr_info = &ulp_vendor_act_info[action_item->type -
Signature · 1 line
2.17.1
PATCH v3 12/20 net/bnxt: updated the log messages
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
Some of the error level log messages are made debug level messages. When Truflow is not enabled then Truflow init error messages are moved to debug level instead.
--- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 24 ++++++++++++------------ drivers/net/bnxt/tf_ulp/ulp_def_rules.c | 2 +- drivers/net/bnxt/tf_ulp/ulp_flow_db.c | 2 +- drivers/net/bnxt/tf_ulp/ulp_mark_mgr.c | 2 +- 4 files changed, 15 insertions(+), 15 deletions(-)
drivers/net/bnxt/tf_ulp/bnxt_ulp.c +12 -12
@@ -1396,16 +1396,16 @@ bnxt_ulp_port_init(struct bnxt *bp)uint32_t ulp_flags;int32_t rc =0 ; -if (!BNXT_PF (bp) && !BNXT_VF_IS_TRUSTED (bp)) { -BNXT_TF_DBG (ERR , -"Skip ulp init for port: %d, not a TVF or PF\n" , +if (!BNXT_TRUFLOW_EN (bp)) { +BNXT_TF_DBG (DEBUG , +"Skip ulp init for port: %d, TF is not enabled\n" , bp->eth_dev->data->port_id);return rc; } -if (!BNXT_TRUFLOW_EN (bp)) { -BNXT_TF_DBG (ERR , -"Skip ulp init for port: %d, truflow is not enabled\n" , +if (!BNXT_PF (bp) && !BNXT_VF_IS_TRUSTED (bp)) { +BNXT_TF_DBG (DEBUG , +"Skip ulp init for port: %d, not a TVF or PF\n" , bp->eth_dev->data->port_id);return rc; }
@@ -1520,16 +1520,16 @@ bnxt_ulp_port_deinit(struct bnxt *bp)struct rte_pci_device *pci_dev;struct rte_pci_addr *pci_addr; -if (!BNXT_PF (bp) && !BNXT_VF_IS_TRUSTED (bp)) { -BNXT_TF_DBG (ERR , -"Skip ULP deinit port:%d, not a TVF or PF\n" , +if (!BNXT_TRUFLOW_EN (bp)) { +BNXT_TF_DBG (DEBUG , +"Skip ULP deinit for port:%d, TF is not enabled\n" , bp->eth_dev->data->port_id);return ; } -if (!BNXT_TRUFLOW_EN (bp)) { -BNXT_TF_DBG (ERR , -"Skip ULP deinit for port:%d, truflow is not enabled\n" , +if (!BNXT_PF (bp) && !BNXT_VF_IS_TRUSTED (bp)) { +BNXT_TF_DBG (DEBUG , +"Skip ULP deinit port:%d, not a TVF or PF\n" , bp->eth_dev->data->port_id);return ; }
drivers/net/bnxt/tf_ulp/ulp_def_rules.c +1 -1
@@ -323,7 +323,7 @@ ulp_default_flow_create(struct rte_eth_dev *eth_dev, ulp_ctx =bnxt_ulp_eth_dev_ptr2_cntxt_get (eth_dev);if (!ulp_ctx) {BNXT_TF_DBG (ERR , -"ULP context is not initialized. Failed to create dflt flow.\n" ); +"ULP is not init'ed. Fail to create dflt flow.\n" );return -EINVAL ; }
drivers/net/bnxt/tf_ulp/ulp_flow_db.c +1 -1
@@ -470,7 +470,7 @@ ulp_flow_db_init(struct bnxt_ulp_context *ulp_ctxt) }/* All good so return. */ -BNXT_TF_DBG (INFO ,"FlowDB initialized with %d flows.\n" , +BNXT_TF_DBG (DEBUG ,"FlowDB initialized with %d flows.\n" , flow_tbl->num_flows);return 0 ; error_free:
drivers/net/bnxt/tf_ulp/ulp_mark_mgr.c +1 -1
@@ -116,7 +116,7 @@ ulp_mark_db_init(struct bnxt_ulp_context *ctxt) mark_tbl->gfid_mask = (mark_tbl->gfid_num_entries /2 ) -1 ; mark_tbl->gfid_type_bit = (mark_tbl->gfid_num_entries /2 ); -BNXT_TF_DBG (DEBUG ,"GFID Max = 0x%08x\nGFID MASK = 0x%08x\n" , +BNXT_TF_DBG (DEBUG ,"GFID Max = 0x%08x GFID MASK = 0x%08x\n" , mark_tbl->gfid_num_entries -1 , mark_tbl->gfid_mask);
Signature · 1 line
2.17.1
PATCH v3 13/20 net/bnxt: add support for socket direct feature
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
Added support for socket direct feature. This feature allows to ignore the incoming interface and use other fields in the packet to identify the flow and forward.
--- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 2 + drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c | 23 +- .../generic_templates/ulp_template_db_enum.h | 71 +- .../generic_templates/ulp_template_db_tbl.c | 3917 +++++++++++++---- .../ulp_template_db_thor_act.c | 150 +- .../ulp_template_db_thor_class.c | 660 +-- .../ulp_template_db_wh_plus_act.c | 242 +- .../ulp_template_db_wh_plus_class.c | 222 +- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 5 + 9 files changed, 3699 insertions(+), 1593 deletions(-)
drivers/net/bnxt/tf_ulp/bnxt_ulp.c +2 -0
@@ -340,6 +340,8 @@ bnxt_ulp_cntxt_app_caps_init(struct bnxt *bp,if (BNXT_MULTIROOT_EN (bp)) ulp_ctx->cfg_data->ulp_flags |=BNXT_ULP_APP_SOCKET_DIRECT ; +BNXT_TF_DBG (DEBUG , +"Socket Direct feature is enabled" ); } }if (!found) {
drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c +21 -2
@@ -133,8 +133,27 @@ bnxt_ulp_init_mapper_params(struct bnxt_ulp_mapper_create_parms *mapper_cparms, }/* Update the socket direct flag */ -if (ULP_SOCKET_DIRECT_IS_ENABLED (ulp_flags)) -ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_SOCKET_DIRECT ,1 ); +if (ULP_BITMAP_ISSET (params->hdr_bitmap.bits, +BNXT_ULP_HDR_BIT_SVIF_IGNORE )) { +uint32_t ifindex; +uint16_t vport; + +/* Get the port db ifindex */ +if (ulp_port_db_dev_port_to_ulp_index (params->ulp_ctx, + params->port_id, + &ifindex)) { +BNXT_TF_DBG (ERR ,"Invalid port id %u\n" , + params->port_id); +return ; + } +/* Update the phy port of the other interface */ +if (ulp_port_db_vport_get (params->ulp_ctx, ifindex, &vport)) { +BNXT_TF_DBG (ERR ,"Invalid port if index %u\n" , ifindex); +return ; + } +ULP_COMP_FLD_IDX_WR (params,BNXT_ULP_CF_IDX_SOCKET_DIRECT_VPORT , + (vport ==1 ) ?2 :1 ); + } }/* Function to create the rte flow. */
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +44 -27
119 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +2990 -927
2,844 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_act.c +75 -75
150 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c +330 -330
660 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c +121 -121
242 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_class.c +111 -111
222 lines not on this page · raw message
drivers/net/bnxt/tf_ulp/ulp_rte_parser.c +5 -0
Lines of this file are not shown. View the raw message.
The rest of this diff is not shown. View the raw message.
Signature · 1 line
2.17.1
Part of the diff is not shown here. View the raw message.
PATCH v3 14/20 net/bnxt: delete the VF pair before VF representor alloc
In reply to Venkat DuvvuruFrom: Kishore Padmanabha <[email protected]>
When the VF representor interface is created, the VF pair relationship is established between the VF and it is representor. If the pair already exists then the pair needs to be deleted before allocation. This could happen if the application is abruptly killed and restarted. If the deletion of an existing VF rep is not done then hw pipeline is not cleaned and a new allocation shall leave the hw in inconsistent state.
--- drivers/net/bnxt/bnxt_hwrm.c | 28 ++++++++++++++++++++++++++++ drivers/net/bnxt/bnxt_hwrm.h | 1 + drivers/net/bnxt/bnxt_reps.c | 6 ++++++ 3 files changed, 35 insertions(+)
drivers/net/bnxt/bnxt_hwrm.c +28 -0
@@ -6025,6 +6025,34 @@ int bnxt_hwrm_first_vf_id_query(struct bnxt *bp, uint16_t fid,return rc; } +int bnxt_hwrm_cfa_pair_exists (struct bnxt *bp,struct bnxt_representor *rep_bp) +{ +struct hwrm_cfa_pair_info_output *resp = bp->hwrm_cmd_resp_addr; +struct hwrm_cfa_pair_info_input req = {0 }; +int rc =0 ; + +if (!(BNXT_PF (bp) ||BNXT_VF_IS_TRUSTED (bp))) { +PMD_DRV_LOG (DEBUG , +"Not a PF or trusted VF. Command not supported\n" ); +return 0 ; + } + +HWRM_PREP (&req,HWRM_CFA_PAIR_INFO ,BNXT_USE_CHIMP_MB ); +snprintf (req.pair_name,sizeof (req.pair_name),"%svfr%d" , + bp->eth_dev->data->name, rep_bp->vf_id); + req.flags = +rte_cpu_to_le_32 (HWRM_CFA_PAIR_INFO_INPUT_FLAGS_LOOKUP_TYPE ); + + rc =bnxt_hwrm_send_message (bp, &req,sizeof (req),BNXT_USE_CHIMP_MB ); +HWRM_CHECK_RESULT (); +if (rc ==HWRM_ERR_CODE_SUCCESS &&strlen (resp->pair_name)) { +HWRM_UNLOCK (); +return !rc; + } +HWRM_UNLOCK (); +return rc; +} +int bnxt_hwrm_cfa_pair_alloc (struct bnxt *bp,struct bnxt_representor *rep_bp) {struct hwrm_cfa_pair_alloc_output *resp = bp->hwrm_cmd_resp_addr;
drivers/net/bnxt/bnxt_hwrm.h +1 -0
@@ -294,6 +294,7 @@ int bnxt_clear_one_vnic_filter(struct bnxt *bp,void bnxt_free_vf_info (struct bnxt *bp);int bnxt_hwrm_first_vf_id_query (struct bnxt *bp,uint16_t fid,uint16_t *first_vf_id); +int bnxt_hwrm_cfa_pair_exists (struct bnxt *bp,struct bnxt_representor *rep_bp);int bnxt_hwrm_cfa_pair_alloc (struct bnxt *bp,struct bnxt_representor *rep);int bnxt_hwrm_cfa_pair_free (struct bnxt *bp,struct bnxt_representor *rep);int bnxt_hwrm_cfa_adv_flow_mgmt_qcaps (struct bnxt *bp);
drivers/net/bnxt/bnxt_reps.c +6 -0
@@ -315,6 +315,12 @@ static int bnxt_tf_vfr_alloc(struct rte_eth_dev *vfr_ethdev)BNXT_TF_DBG (ERR ,"Invalid arguments\n" );return 0 ; } +/* update the port id so you can backtrack to ethdev */ + vfr->dpdk_port_id = vfr_ethdev->data->port_id; + +/* If pair is present, then delete the pair */ +if (bnxt_hwrm_cfa_pair_exists (parent_bp, vfr)) + (void )bnxt_hwrm_cfa_pair_free (parent_bp, vfr);/* Update the ULP portdata base with the new VFR interface */ rc =ulp_port_db_dev_port_intf_update (parent_bp->ulp_ctx, vfr_ethdev);
Signature · 1 line
2.17.1
PATCH v3 15/20 net/bnxt: add new API TruFlow get SRAM resources
In reply to Venkat DuvvuruFrom: Jay Ding <[email protected]>
Implement tf_get_sram_resources to return SRAM
partition information, including bank count and
SRAM profile number.
--- drivers/net/bnxt/hsi_struct_def_dpdk.h | 11 ++- drivers/net/bnxt/tf_core/tf_core.c | 86 ++++++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_core.h | 63 +++++++++++++++++ drivers/net/bnxt/tf_core/tf_device.h | 20 ++++++ drivers/net/bnxt/tf_core/tf_device_p4.c | 6 +- drivers/net/bnxt/tf_core/tf_device_p58.c | 53 ++++++++++++++- drivers/net/bnxt/tf_core/tf_msg.c | 28 ++------ drivers/net/bnxt/tf_core/tf_msg.h | 6 +- drivers/net/bnxt/tf_core/tf_rm.c | 3 +- drivers/net/bnxt/tf_core/tf_sram_mgr.h | 10 --- 10 files changed, 245 insertions(+), 41 deletions(-)
drivers/net/bnxt/hsi_struct_def_dpdk.h +8 -3
@@ -1058,8 +1058,8 @@ struct hwrm_err_output {#define HWRM_VERSION_MINOR 10#define HWRM_VERSION_UPDATE 2/* non-zero means beta version */ -#define HWRM_VERSION_RSVD 58 -#define HWRM_VERSION_STR "1.10.2.58" +#define HWRM_VERSION_RSVD 64 +#define HWRM_VERSION_STR "1.10.2.64"/**************** * hwrm_ver_get *
@@ -45817,8 +45817,13 @@ struct hwrm_tf_session_resc_qcaps_output {* qcaps_size. */ uint16_t size; +/* +* SRAM profile number that sets the partition of SRAM memory +* between TF and AFM within the 4 internal memory banks (Thor). +*/ +uint8_t sram_profile;/* unused. */ -uint16_t unused0; +uint8_t unused0;/* unused. */ uint8_t unused1[7 ];/*
drivers/net/bnxt/tf_core/tf_core.c +86 -0
89 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_core.h +63 -0
73 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_device.h +20 -0
@@ -1081,6 +1081,26 @@ struct tf_dev_ops {uint32_t *tcam_caps, uint32_t *tbl_caps, uint32_t *em_caps); + +/** +* Device specific function that retrieve the sram resource +* +* [in] query +* Point to resources query result +* +* [out] sram_bank_caps +* Pointer to SRAM bank capabilities +* +* [out] dynamic_sram_capable +* Pointer to dynamic sram capable +* +* Returns +* - (0) if successful. +* - (-EINVAL) on failure. +*/ +int (*tf_dev_get_sram_resources)(void *query, +uint32_t *sram_bank_caps, +bool *dynamic_sram_capable); };/**
drivers/net/bnxt/tf_core/tf_device_p4.c +4 -2
@@ -382,7 +382,8 @@ const struct tf_dev_ops tf_dev_ops_p4_init = { .tf_dev_get_global_cfg = NULL, .tf_dev_get_mailbox = tf_dev_p4_get_mailbox, .tf_dev_word_align = NULL, - .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps + .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps, + .tf_dev_get_sram_resources = NULL };/**
@@ -445,5 +446,6 @@ const struct tf_dev_ops tf_dev_ops_p4 = { .tf_dev_get_mailbox = tf_dev_p4_get_mailbox, .tf_dev_word_align = tf_dev_p4_word_align, .tf_dev_cfa_key_hash = hcapi_cfa_p4_key_hash, - .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps + .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps, + .tf_dev_get_sram_resources = NULL };
drivers/net/bnxt/tf_core/tf_device_p58.c +51 -2
69 lines not on this page · raw message
drivers/net/bnxt/tf_core/tf_msg.c +6 -22
@@ -380,39 +380,20 @@ tf_msg_session_resc_qcaps(struct tf *tfp,enum tf_dir dir, uint16_t size, struct tf_rm_resc_req_entry *query, - enum tf_rm_resc_resv_strategy *resv_strategy) + enum tf_rm_resc_resv_strategy *resv_strategy, + uint8_t *sram_profile) { int rc;int i;struct tfp_send_msg_parms parms = {0 };struct hwrm_tf_session_resc_qcaps_input req = {0 };struct hwrm_tf_session_resc_qcaps_output resp = {0 }; -uint8_t fw_session_id;struct tf_msg_dma_buf qcaps_buf = {0 };struct tf_rm_resc_req_entry *data;int dma_size; -struct tf_session *tfs; - -/* Retrieve the session information */ - rc =tf_session_get_session_internal (tfp, &tfs); -if (rc) { -TFP_DRV_LOG (ERR , -"Failed to lookup session, rc:%s\n" , -strerror (-rc)); -return rc; - }TF_CHECK_PARMS3 (tfp, query, resv_strategy); - rc =tf_session_get_fw_session_id (tfp, &fw_session_id); -if (rc) { -TFP_DRV_LOG (ERR , -"%s: Unable to lookup FW id, rc:%s\n" , -tf_dir_2_str (dir), -strerror (-rc)); -return rc; - } -/* Prepare DMA buffer */ dma_size = size *sizeof (struct tf_rm_resc_req_entry ); rc =tf_msg_alloc_dma_buf (&qcaps_buf, dma_size);
@@ -420,7 +401,7 @@ tf_msg_session_resc_qcaps(struct tf *tfp,return rc;/* Populate the request */ - req.fw_session_id =tfp_cpu_to_le_32 (fw_session_id); + req.fw_session_id =0 ; req.flags =tfp_cpu_to_le_16 (dir); req.qcaps_size = size; req.qcaps_addr =tfp_cpu_to_le_64 (qcaps_buf.pa_addr);
@@ -460,6 +441,9 @@ tf_msg_session_resc_qcaps(struct tf *tfp, *resv_strategy = resp.flags &HWRM_TF_SESSION_RESC_QCAPS_OUTPUT_FLAGS_SESS_RESV_STRATEGY_MASK ; +if (sram_profile !=NULL ) + *sram_profile = resp.sram_profile; + cleanup:tf_msg_free_dma_buf (&qcaps_buf);
drivers/net/bnxt/tf_core/tf_msg.h +5 -1
@@ -158,6 +158,9 @@ int tf_msg_session_qcfg(struct tf *tfp);* [out] resv_strategy * Pointer to the reservation strategy * +* [out] sram_profile +* Pointer to the sram profile +* * Returns: * 0 on Success else internal Truflow error */
@@ -166,7 +169,8 @@ int tf_msg_session_resc_qcaps(struct tf *tfp,enum tf_dir dir, uint16_t size, struct tf_rm_resc_req_entry *query, - enum tf_rm_resc_resv_strategy *resv_strategy); + enum tf_rm_resc_resv_strategy *resv_strategy, + uint8_t *sram_profile);/** * Sends session HW resource allocation request to TF Firmware
drivers/net/bnxt/tf_core/tf_rm.c +2 -1
@@ -551,7 +551,8 @@ tf_rm_create_db(struct tf *tfp, parms->dir, max_types, query, - &resv_strategy); + &resv_strategy, + NULL);if (rc)return rc;
drivers/net/bnxt/tf_core/tf_sram_mgr.h +0 -10
@@ -28,16 +28,6 @@#define TF_SRAM_MGR_BLOCK_SZ_BYTES 64#define TF_SRAM_MGR_MIN_SLICE_BYTES 8 -/** -* Bank identifier -*/ -enum tf_sram_bank_id { -TF_SRAM_BANK_ID_0 ,/**< SRAM Bank 0 id */ -TF_SRAM_BANK_ID_1 ,/**< SRAM Bank 1 id */ -TF_SRAM_BANK_ID_2 ,/**< SRAM Bank 2 id */ -TF_SRAM_BANK_ID_3 ,/**< SRAM Bank 3 id */ -TF_SRAM_BANK_ID_MAX /**< SRAM Bank index limit */ -};/** * TF slice size.
Signature · 1 line
2.17.1