[dpdk-dev] [PATCH v2 00/58] enhancements to host based flow table management
Ajit Khaparde
ajit.khaparde at broadcom.com
Tue Jun 15 21:33:09 CEST 2021
On Sat, Jun 12, 2021 at 5:06 PM Ajit Khaparde
<ajit.khaparde at broadcom.com> 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)
>
More information about the dev
mailing list