On Sat, Jun 12, 2021 at 5:06 PM Ajit Khaparde wrote: > > This patchset adds flow table management support for > Thor network adapter and introduces enhancements to > the existing flow table management functionality. > > v1->v2: > - Rebased against latest dpdk-next-net-brcm for-next-net branch. > - Fixed typo errors in some of the patches > - Address some issues encountered while applying patches > - Changed log levels for some log messages to debug > - Cleaned up some unused code Patchset applied to the for-next-net branch of dpdk-next-net-brcm. Thanks > > Farah Smith (11): > net/bnxt: add base TRUFLOW support for Thor > net/bnxt: update TRUFLOW resources > net/bnxt: add action SRAM translation > net/bnxt: add 64B SRAM record management with RM > net/bnxt: modify TRUFLOW HWRM messages > net/bnxt: shared TCAM region support > net/bnxt: cleanup logs in session handling paths > net/bnxt: add WC TCAM management support > net/bnxt: add API to get shared table increments > net/bnxt: cleanup WC TCAM shared pool > net/bnxt: add API to clear TCAM regions > > Jay Ding (9): > net/bnxt: check resource reservation in TRUFLOW > net/bnxt: support L2 Context TCAM ops > net/bnxt: add Thor WC TCAM support > net/bnxt: change RM database type > net/bnxt: add shared session support > net/bnxt: update shared session functionality > net/bnxt: modify resource reservation strategy > net/bnxt: refactor host session failure cleanup > net/bnxt: add support for WC TCAM shared session > > Jeffrey Huang (1): > net/bnxt: add CFA folder to HCAPI directory > > Kishore Padmanabha (23): > net/bnxt: add support for generic table processing > net/bnxt: add support for mapper flow database opcodes > net/bnxt: modify TCAM opcode processing > net/bnxt: modify table processing > net/bnxt: add ULP priority opcode processing > net/bnxt: add support to identify duplicate flows > net/bnxt: add conditional goto processing > net/bnxt: set shared handle for generic table > net/bnxt: modify ULP template > net/bnxt: add conditional opcode and L4 port fields > net/bnxt: refactor TRUFLOW processing > net/bnxt: add partial header field processing > net/bnxt: add support for wild card pattern match > net/bnxt: enable extended exact match support > net/bnxt: refactor ULP mapper > net/bnxt: add support for generic hash table > net/bnxt: add support for Thor platform > net/bnxt: refactor flow parser in ULP > net/bnxt: add field opcodes in ULP > net/bnxt: add support for application ID in ULP matcher > net/bnxt: add templates for shared sessions > net/bnxt: add ICMPv6 parser to ULP > net/bnxt: add context list for timers > > Mike Baucom (5): > net/bnxt: add conditional processing of templates > net/bnxt: add shared session support to ULP > net/bnxt: process resource lists before session open > net/bnxt: add HA support in ULP > net/bnxt: add Thor template support > > Peter Spreadborough (4): > net/bnxt: add mailbox selection via dev op > net/bnxt: add support for EM with FKB > net/bnxt: add hashing changes for Thor > net/bnxt: add dpool allocator for EM allocation > > Shahaji Bhosle (1): > net/bnxt: cleanup ULP parser and mapper > > Venkat Duvvuru (4): > net/bnxt: check FW capability to support TRUFLOW > net/bnxt: modify VXLAN decap for multichannel mode > net/bnxt: add support for GRE flows > net/bnxt: reorganize ULP template directory structure > > doc/guides/nics/bnxt.rst | 3 +- > drivers/net/bnxt/bnxt.h | 19 +- > drivers/net/bnxt/bnxt_ethdev.c | 162 +- > drivers/net/bnxt/bnxt_hwrm.c | 7 +- > drivers/net/bnxt/bnxt_util.h | 3 + > drivers/net/bnxt/hcapi/cfa/hcapi_cfa.h | 126 + > drivers/net/bnxt/hcapi/cfa/hcapi_cfa_common.c | 83 + > drivers/net/bnxt/hcapi/cfa/hcapi_cfa_defs.h | 381 + > drivers/net/bnxt/hcapi/cfa/hcapi_cfa_p4.c | 289 + > drivers/net/bnxt/hcapi/cfa/hcapi_cfa_p4.h | 185 + > drivers/net/bnxt/hcapi/cfa/hcapi_cfa_p58.c | 120 + > drivers/net/bnxt/hcapi/cfa/hcapi_cfa_p58.h | 142 + > drivers/net/bnxt/hcapi/cfa/meson.build | 12 + > drivers/net/bnxt/hcapi/cfa_p40_hw.h | 781 - > drivers/net/bnxt/hcapi/cfa_p40_tbl.h | 303 - > drivers/net/bnxt/hcapi/hcapi_cfa.h | 295 - > drivers/net/bnxt/hcapi/hcapi_cfa_defs.h | 672 - > drivers/net/bnxt/hcapi/hcapi_cfa_p4.c | 399 - > drivers/net/bnxt/hcapi/hcapi_cfa_p4.h | 467 - > drivers/net/bnxt/hsi_struct_def_dpdk.h | 250 +- > drivers/net/bnxt/meson.build | 65 +- > drivers/net/bnxt/tf_core/bitalloc.c | 10 +- > drivers/net/bnxt/tf_core/bitalloc.h | 5 +- > drivers/net/bnxt/tf_core/cfa_resource_types.h | 3 +- > drivers/net/bnxt/tf_core/dpool.c | 374 + > drivers/net/bnxt/tf_core/dpool.h | 309 + > drivers/net/bnxt/tf_core/hwrm_tf.h | 195 - > drivers/net/bnxt/tf_core/lookup3.h | 2 +- > drivers/net/bnxt/tf_core/meson.build | 36 + > drivers/net/bnxt/tf_core/tf_core.c | 326 +- > drivers/net/bnxt/tf_core/tf_core.h | 563 +- > drivers/net/bnxt/tf_core/tf_device.c | 530 +- > drivers/net/bnxt/tf_core/tf_device.h | 276 +- > drivers/net/bnxt/tf_core/tf_device_p4.c | 161 +- > drivers/net/bnxt/tf_core/tf_device_p4.h | 203 +- > drivers/net/bnxt/tf_core/tf_device_p45.h | 105 - > drivers/net/bnxt/tf_core/tf_device_p58.c | 372 + > drivers/net/bnxt/tf_core/tf_device_p58.h | 212 + > drivers/net/bnxt/tf_core/tf_em.h | 99 +- > drivers/net/bnxt/tf_core/tf_em_common.c | 332 +- > drivers/net/bnxt/tf_core/tf_em_common.h | 68 +- > .../net/bnxt/tf_core/tf_em_hash_internal.c | 215 + > drivers/net/bnxt/tf_core/tf_em_host.c | 115 +- > drivers/net/bnxt/tf_core/tf_em_internal.c | 376 +- > drivers/net/bnxt/tf_core/tf_ext_flow_handle.h | 15 +- > drivers/net/bnxt/tf_core/tf_identifier.c | 174 +- > drivers/net/bnxt/tf_core/tf_identifier.h | 26 + > drivers/net/bnxt/tf_core/tf_if_tbl.c | 20 +- > drivers/net/bnxt/tf_core/tf_msg.c | 1219 +- > drivers/net/bnxt/tf_core/tf_msg.h | 217 +- > drivers/net/bnxt/tf_core/tf_msg_common.h | 3 - > drivers/net/bnxt/tf_core/tf_rm.c | 834 +- > drivers/net/bnxt/tf_core/tf_rm.h | 143 +- > drivers/net/bnxt/tf_core/tf_session.c | 261 +- > drivers/net/bnxt/tf_core/tf_session.h | 206 +- > drivers/net/bnxt/tf_core/tf_shadow_tbl.c | 785 - > drivers/net/bnxt/tf_core/tf_shadow_tbl.h | 256 - > drivers/net/bnxt/tf_core/tf_shadow_tcam.c | 6 +- > drivers/net/bnxt/tf_core/tf_tbl.c | 656 +- > drivers/net/bnxt/tf_core/tf_tbl.h | 57 +- > drivers/net/bnxt/tf_core/tf_tcam.c | 435 +- > drivers/net/bnxt/tf_core/tf_tcam.h | 30 + > drivers/net/bnxt/tf_core/tf_tcam_shared.c | 1283 + > drivers/net/bnxt/tf_core/tf_tcam_shared.h | 183 + > drivers/net/bnxt/tf_core/tf_util.c | 62 +- > drivers/net/bnxt/tf_core/tf_util.h | 31 +- > drivers/net/bnxt/tf_core/tfp.c | 44 +- > drivers/net/bnxt/tf_core/tfp.h | 61 +- > drivers/net/bnxt/tf_ulp/bnxt_tf_common.h | 2 - > drivers/net/bnxt/tf_ulp/bnxt_tf_pmd_shim.c | 378 + > drivers/net/bnxt/tf_ulp/bnxt_tf_pmd_shim.h | 29 + > drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 943 +- > drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 85 +- > drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c | 74 +- > .../bnxt/tf_ulp/generic_templates/meson.build | 13 + > .../generic_templates/ulp_template_db_act.c | 1017 + > .../generic_templates/ulp_template_db_class.c | 13188 ++++++++++ > .../generic_templates/ulp_template_db_enum.h | 1883 ++ > .../generic_templates/ulp_template_db_field.h | 686 + > .../generic_templates/ulp_template_db_tbl.c | 3335 +++ > .../generic_templates/ulp_template_db_tbl.h | 112 + > .../ulp_template_db_thor_act.c | 225 + > .../ulp_template_db_thor_class.c | 6107 +++++ > .../ulp_template_db_wh_plus_act.c | 4974 ++++ > .../ulp_template_db_wh_plus_class.c | 14270 +++++++++++ > drivers/net/bnxt/tf_ulp/meson.build | 28 + > drivers/net/bnxt/tf_ulp/ulp_def_rules.c | 91 +- > drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c | 171 +- > drivers/net/bnxt/tf_ulp/ulp_fc_mgr.h | 1 + > drivers/net/bnxt/tf_ulp/ulp_flow_db.c | 129 +- > drivers/net/bnxt/tf_ulp/ulp_flow_db.h | 20 +- > drivers/net/bnxt/tf_ulp/ulp_gen_hash.c | 369 + > drivers/net/bnxt/tf_ulp/ulp_gen_hash.h | 166 + > drivers/net/bnxt/tf_ulp/ulp_gen_tbl.c | 417 + > drivers/net/bnxt/tf_ulp/ulp_gen_tbl.h | 171 + > drivers/net/bnxt/tf_ulp/ulp_ha_mgr.c | 637 + > drivers/net/bnxt/tf_ulp/ulp_ha_mgr.h | 67 + > drivers/net/bnxt/tf_ulp/ulp_mapper.c | 3572 ++- > drivers/net/bnxt/tf_ulp/ulp_mapper.h | 59 +- > drivers/net/bnxt/tf_ulp/ulp_mark_mgr.c | 10 +- > drivers/net/bnxt/tf_ulp/ulp_matcher.c | 36 +- > drivers/net/bnxt/tf_ulp/ulp_port_db.c | 140 +- > drivers/net/bnxt/tf_ulp/ulp_port_db.h | 42 + > ...emplate_db_tbl.c => ulp_rte_handler_tbl.c} | 269 +- > drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 1207 +- > drivers/net/bnxt/tf_ulp/ulp_rte_parser.h | 36 +- > drivers/net/bnxt/tf_ulp/ulp_template_db.c | 4622 ---- > drivers/net/bnxt/tf_ulp/ulp_template_db.h | 614 - > drivers/net/bnxt/tf_ulp/ulp_template_db_act.c | 815 - > .../net/bnxt/tf_ulp/ulp_template_db_class.c | 3985 --- > .../net/bnxt/tf_ulp/ulp_template_db_enum.h | 973 - > .../net/bnxt/tf_ulp/ulp_template_db_field.h | 1191 - > .../tf_ulp/ulp_template_db_stingray_act.c | 3305 --- > .../tf_ulp/ulp_template_db_stingray_class.c | 20566 ---------------- > drivers/net/bnxt/tf_ulp/ulp_template_db_tbl.h | 48 - > .../bnxt/tf_ulp/ulp_template_db_wh_plus_act.c | 3304 --- > .../tf_ulp/ulp_template_db_wh_plus_class.c | 20566 ---------------- > .../net/bnxt/tf_ulp/ulp_template_field_db.h | 224 - > drivers/net/bnxt/tf_ulp/ulp_template_struct.h | 192 +- > drivers/net/bnxt/tf_ulp/ulp_tun.c | 192 +- > drivers/net/bnxt/tf_ulp/ulp_tun.h | 33 +- > drivers/net/bnxt/tf_ulp/ulp_utils.c | 339 +- > drivers/net/bnxt/tf_ulp/ulp_utils.h | 153 +- > 123 files changed, 63931 insertions(+), 68808 deletions(-) > create mode 100644 drivers/net/bnxt/hcapi/cfa/hcapi_cfa.h > create mode 100644 drivers/net/bnxt/hcapi/cfa/hcapi_cfa_common.c > create mode 100644 drivers/net/bnxt/hcapi/cfa/hcapi_cfa_defs.h > create mode 100644 drivers/net/bnxt/hcapi/cfa/hcapi_cfa_p4.c > create mode 100644 drivers/net/bnxt/hcapi/cfa/hcapi_cfa_p4.h > create mode 100644 drivers/net/bnxt/hcapi/cfa/hcapi_cfa_p58.c > create mode 100644 drivers/net/bnxt/hcapi/cfa/hcapi_cfa_p58.h > create mode 100644 drivers/net/bnxt/hcapi/cfa/meson.build > delete mode 100644 drivers/net/bnxt/hcapi/cfa_p40_hw.h > delete mode 100644 drivers/net/bnxt/hcapi/cfa_p40_tbl.h > delete mode 100644 drivers/net/bnxt/hcapi/hcapi_cfa.h > delete mode 100644 drivers/net/bnxt/hcapi/hcapi_cfa_defs.h > delete mode 100644 drivers/net/bnxt/hcapi/hcapi_cfa_p4.c > delete mode 100644 drivers/net/bnxt/hcapi/hcapi_cfa_p4.h > create mode 100644 drivers/net/bnxt/tf_core/dpool.c > create mode 100644 drivers/net/bnxt/tf_core/dpool.h > delete mode 100644 drivers/net/bnxt/tf_core/hwrm_tf.h > create mode 100644 drivers/net/bnxt/tf_core/meson.build > delete mode 100644 drivers/net/bnxt/tf_core/tf_device_p45.h > create mode 100644 drivers/net/bnxt/tf_core/tf_device_p58.c > create mode 100644 drivers/net/bnxt/tf_core/tf_device_p58.h > create mode 100644 drivers/net/bnxt/tf_core/tf_em_hash_internal.c > delete mode 100644 drivers/net/bnxt/tf_core/tf_shadow_tbl.c > delete mode 100644 drivers/net/bnxt/tf_core/tf_shadow_tbl.h > create mode 100644 drivers/net/bnxt/tf_core/tf_tcam_shared.c > create mode 100644 drivers/net/bnxt/tf_core/tf_tcam_shared.h > create mode 100644 drivers/net/bnxt/tf_ulp/bnxt_tf_pmd_shim.c > create mode 100644 drivers/net/bnxt/tf_ulp/bnxt_tf_pmd_shim.h > create mode 100644 drivers/net/bnxt/tf_ulp/generic_templates/meson.build > create mode 100644 drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_act.c > create mode 100644 drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_class.c > create mode 100644 drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h > create mode 100644 drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_field.h > create mode 100644 drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c > create mode 100644 drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.h > create mode 100644 drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_act.c > create mode 100644 drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c > create mode 100644 drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c > create mode 100644 drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_class.c > create mode 100644 drivers/net/bnxt/tf_ulp/meson.build > create mode 100644 drivers/net/bnxt/tf_ulp/ulp_gen_hash.c > create mode 100644 drivers/net/bnxt/tf_ulp/ulp_gen_hash.h > create mode 100644 drivers/net/bnxt/tf_ulp/ulp_gen_tbl.c > create mode 100644 drivers/net/bnxt/tf_ulp/ulp_gen_tbl.h > create mode 100644 drivers/net/bnxt/tf_ulp/ulp_ha_mgr.c > create mode 100644 drivers/net/bnxt/tf_ulp/ulp_ha_mgr.h > rename drivers/net/bnxt/tf_ulp/{ulp_template_db_tbl.c => ulp_rte_handler_tbl.c} (60%) > delete mode 100644 drivers/net/bnxt/tf_ulp/ulp_template_db.c > delete mode 100644 drivers/net/bnxt/tf_ulp/ulp_template_db.h > delete mode 100644 drivers/net/bnxt/tf_ulp/ulp_template_db_act.c > delete mode 100644 drivers/net/bnxt/tf_ulp/ulp_template_db_class.c > delete mode 100644 drivers/net/bnxt/tf_ulp/ulp_template_db_enum.h > delete mode 100644 drivers/net/bnxt/tf_ulp/ulp_template_db_field.h > delete mode 100644 drivers/net/bnxt/tf_ulp/ulp_template_db_stingray_act.c > delete mode 100644 drivers/net/bnxt/tf_ulp/ulp_template_db_stingray_class.c > delete mode 100644 drivers/net/bnxt/tf_ulp/ulp_template_db_tbl.h > delete mode 100644 drivers/net/bnxt/tf_ulp/ulp_template_db_wh_plus_act.c > delete mode 100644 drivers/net/bnxt/tf_ulp/ulp_template_db_wh_plus_class.c > delete mode 100644 drivers/net/bnxt/tf_ulp/ulp_template_field_db.h > > -- > 2.21.1 (Apple Git-122.3) >