[PATCH v4 00/57] bnxt patchset

Ajit Khaparde ajit.khaparde at broadcom.com
Fri Oct 24 05:32:04 CEST 2025


On Wed, Oct 22, 2025 at 9:15 AM Manish Kurup <manish.kurup at broadcom.com> wrote:
>
>
>
> On Tue, Oct 21, 2025 at 8:17 PM Manish Kurup <manish.kurup at broadcom.com> wrote:
>>
>> On Tue, Oct 21, 2025 at 1:50 PM Manish Kurup <manish.kurup at broadcom.com> wrote:
>>>
>>> Apart from bug fixes, this patchset adds the following
>>> functionality:
>>>
>>> 1. Add the data, defines and enums for applications targeting
>>>    Wh+, P5, P7 product families.
>>> 2. Update HSI files (HWRM API defintions, enums, version number)
>>> 3. Dynamic UPAR support for THOR2.
>>> 4. Add support to allow multiple instances of applications to
>>>    exist at the same time.
>>> 5. Add hot upgrade support for applications.
>>> 6. Add MPLS packet offload support.
>>> 7. Improve backing store debug capabilities.
>>> 8. Add truflow global table scope support.
>>> 9. ULP parser support to handle GRE key.
>>>
>>> v1->v2:
>>> 1. Fixed typos in commit messages
>>> 2. Removed incorrect tabs in meson.build
>>> 3. Fixed ENODATA return value for BSD
>>> 4. Removed unused function bnxt_mpc_bds_in_hw()
>>> 5. Fixed questionable pointer cast warning
>>> 6. Ignoring function argument mispelling warnings
>>>
>>> v2->v3:
>>> 1. Fixed all sprintf format string warnings.
>>> 2. Fixed additional pointer size warnings.
>>>
>>> v3->v4:
>>> 1. Fixed additional pointer size warnings.
>>> 2. Split bnxt platform specific app data into multiple commits.
>>>
>>> Please apply.

This patchset got split into two because of message rate limits on the server.
Here is the bundle which stitches them[1]
So we had to use the periodic testing on next-net-brcm branch to
check if the set build fine and pass the basic tests.[2]

Based on the results [2], the patch set looks good.
So I merged them to the next-net-brcm tree.
Please apply to the main repo.

[1] https://patchwork.dpdk.org/bundle/ajitkhaparde/BNXT%2025.11/
[2] https://lab.dpdk.org/results/dashboard/tarballs/35304/

Thanks
Ajit

>>>
>>
> Hi Stephen,
> Thanks for allowing patches 03/57 and 04/57 through!
>
> I noticed one more build failure that is the result of me breaking up patch e-mailing.
>
> Patch 31/57 (Support MPLS packets) is failing build because it depends on common options that were added as part of patch 48/57 (meson.build options).
>
> Ajit/Stephen, is there a way we could kick off a rebuild now that all patches are in?
>
> Thanks a lot!
>
>>
>> Hi Stephen,
>>
>> There were a couple of issues uploading this patchset:
>> 1. I broke up the really large commit into 4 smaller ones (1 for platform common defines and 3 platform/chip specific ones), #1 and #2 were acceptable sizes, but #3 and #4 were still too big, and they are being held awaiting moderator approval. Could you please let them through?
>> 2. I had to retry "git send-email" a few times to get all the patches through. I kept getting error messages saying that I was sending patches beyond what rate was acceptable.
>>
>> The patches have all been uploaded, but I dont see them in patchwork, just the 1st 31 that went through fine.
>>
>> Could you please help?
>>
>> Thanks, regards,
>>
>> -Manish
>>
>>
>>>
>>> Farah Smith (8):
>>>   net/bnxt/tf_core: thor2 TF table scope sizing adjustments
>>>   net/bnxt/tf_core: tcam manager logical id free
>>>   net/bnxt/tf_core: thor2 hot upgrade ungraceful quit crash
>>>   net/bnxt/tf_core: truflow global table scope
>>>   net/bnxt/tf_ulp: socket direct enable
>>>   net/bnxt: fix adding udp_tunnel_port
>>>   net/bnxt: thor2 truflow memory manager bug
>>>   net/bnxt/tf_core: fix truflow PF init failure on sriov disabled
>>>
>>> Jay Ding (4):
>>>   net/bnxt: fix a NULL pointer dereference in bnxt_rep funcs
>>>   net/bnxt/tf_ulp: add meter stats support for Thor2
>>>   net/bnxt/tf_core: fix the miscalculation of the lkup table pool
>>>   next/bnxt/tf_ulp: truflow fixes for meter and mac_addr cache
>>>
>>> Kishore Padmanabha (18):
>>>   net/bnxt: enable vector mode processing
>>>   net/bnxt/tf_ulp: add support for global identifiers
>>>   net/bnxt/tf_core: add support for multi instance
>>>   net/bnxt/tf_core: fix table scope free
>>>   net/bnxt/tf_core: fix vfr clean up and stats lockup
>>>   net/bnxt/tf_ulp: increase shared pool size to 32
>>>   net/bnxt/tf_ulp: add support for tcam priority update
>>>   net/bnxt/tf_ulp: hot upgrade support
>>>   net/bnxt/tf_ulp: fix stats counter memory initialization
>>>   net/bnxt: fix max VFs count for thor2
>>>   net/bnxt/tf_ulp: enable support for global index table
>>>   net/bnxt/tf_ulp: optimize template enums
>>>   net/bnxt/tf_ulp: add non vfr mode capability
>>>   net/bnxt: fix stats collection when rx queue is not set
>>>   net/bnxt: fix rss configuration when set to none
>>>   net/bnxt: packet drop after port stop and start
>>>   net/bnxt/tf_ulp: add support for unicast only feature
>>>   net/bnxt: add support for truflow promiscuous mode
>>>
>>> Manish Kurup (9):
>>>   net/bnxt/tf_ulp: add bnxt platform data for 25.11
>>>   net/bnxt/tf_ulp: add bnxt app data for 25.11 for Wh+
>>>   net/bnxt/tf_ulp: add bnxt app data for 25.11 - Thor
>>>   net/bnxt/tf_ulp: add bnxt app data for 25.11 - Thor2
>>>   net/bnxt/tf_core: dynamic UPAR support for THOR2
>>>   net/bnxt: add meson build options for TruFlow
>>>   net/bnxt: truflow HSI struct fixes
>>>   net/bnxt/tf_ulp: fixes to enable TF functionality
>>>   net/bnxt/tf_ulp: remove Truflow DEBUG code
>>>
>>> Peter Spreadborough (6):
>>>   net/bnxt/tf_ulp: ovs-dpdk packet drop observed with thor2
>>>   net/bnxt/tf_core: add backing store debug to dpdk
>>>   net/bnxt/tf_core: handle out of order MPC completions
>>>   net/bnxt: avoid potential segfault in VFR handling
>>>   net/bnxt/tf_core: fix truflow crash on memory allocation failure
>>>   net/bnxt/tf_core: remove excessive debug logging
>>>
>>> Sangtani Parag Satishbhai (3):
>>>   net/bnxt/tf_ulp: fix seg fault when devargs argument missing
>>>   net/bnxt: truflow remove redundant code for mpc init
>>>   net/bnxt: truflow remove RTE devarg processing for mpc=1
>>>
>>> Shahaji Bhosle (4):
>>>   net/bnxt/tf_ulp: ulp parser support to handle gre key
>>>   net/bnxt/tf_ulp: change rte_mem_virt2iova to rte_mem_virt2phys
>>>   net/bnxt/tf_ulp: truflow add pf action handler
>>>   net/bnxt/tf_ulp: add feature bit rx miss handling
>>>
>>> Shuanglin Wang (2):
>>>   net/bnxt/tf_core: fix build failure with flow scale option
>>>   net/bnxt/tf_ulp: support MPLS packets
>>>
>>> Smitha Pisupati (1):
>>>   net/bnxt/tf_ulp: add support for special vxlan
>>>
>>> Sriharsha Basavapatna (2):
>>>   net/bnxt: fix default rss config
>>>   net/bnxt: avoid iova range check when external memory is used
>>>
>>>  drivers/net/bnxt/bnxt.h                       |     7 +
>>>  drivers/net/bnxt/bnxt_ethdev.c                |   256 +-
>>>  drivers/net/bnxt/bnxt_hwrm.c                  |    25 +-
>>>  drivers/net/bnxt/bnxt_mpc.c                   |    26 +-
>>>  drivers/net/bnxt/bnxt_mpc.h                   |     7 +-
>>>  drivers/net/bnxt/bnxt_reps.c                  |    37 +-
>>>  drivers/net/bnxt/bnxt_stats.c                 |     5 +
>>>  drivers/net/bnxt/bnxt_txr.c                   |     5 +-
>>>  drivers/net/bnxt/bnxt_vnic.c                  |    21 +-
>>>  .../bnxt/hcapi/cfa_v3/include/cfa_resources.h |    33 +-
>>>  .../net/bnxt/hcapi/cfa_v3/include/cfa_types.h |    10 +
>>>  drivers/net/bnxt/hcapi/cfa_v3/mm/cfa_mm.c     |    83 +-
>>>  .../net/bnxt/hcapi/cfa_v3/mm/cfa_mm_priv.h    |     2 +-
>>>  drivers/net/bnxt/hsi_struct_def_dpdk.h        |  1123 +-
>>>  drivers/net/bnxt/tf_core/cfa_tcam_mgr.c       |    35 +-
>>>  .../net/bnxt/tf_core/cfa_tcam_mgr_device.h    |     6 +-
>>>  drivers/net/bnxt/tf_core/cfa_tcam_mgr_p4.c    |     2 +-
>>>  drivers/net/bnxt/tf_core/cfa_tcam_mgr_p58.c   |     2 +-
>>>  drivers/net/bnxt/tf_core/tf_resources.c       |     2 +-
>>>  drivers/net/bnxt/tf_core/tf_util.c            |     2 +
>>>  drivers/net/bnxt/tf_core/v3/meson.build       |     4 +-
>>>  drivers/net/bnxt/tf_core/v3/tfc.h             |   238 +-
>>>  drivers/net/bnxt/tf_core/v3/tfc_act.c         |    47 +-
>>>  drivers/net/bnxt/tf_core/v3/tfc_cpm.c         |    13 +
>>>  drivers/net/bnxt/tf_core/v3/tfc_debug.h       |    12 +-
>>>  drivers/net/bnxt/tf_core/v3/tfc_em.c          |   143 +-
>>>  drivers/net/bnxt/tf_core/v3/tfc_em.h          |   105 +-
>>>  drivers/net/bnxt/tf_core/v3/tfc_global_id.c   |    45 +-
>>>  drivers/net/bnxt/tf_core/v3/tfc_hot_upgrade.c |   142 +
>>>  drivers/net/bnxt/tf_core/v3/tfc_idx_tbl.c     |    51 +-
>>>  drivers/net/bnxt/tf_core/v3/tfc_mpc_debug.c   |  1411 +
>>>  drivers/net/bnxt/tf_core/v3/tfc_mpc_table.c   |   565 -
>>>  drivers/net/bnxt/tf_core/v3/tfc_msg.c         |   363 +-
>>>  drivers/net/bnxt/tf_core/v3/tfc_msg.h         |    41 +-
>>>  drivers/net/bnxt/tf_core/v3/tfc_resources.c   |    12 +-
>>>  drivers/net/bnxt/tf_core/v3/tfc_tbl_scope.c   |   246 +-
>>>  drivers/net/bnxt/tf_core/v3/tfc_tcam.c        |    55 +
>>>  drivers/net/bnxt/tf_core/v3/tfc_tcam_debug.c  |  1875 +
>>>  drivers/net/bnxt/tf_core/v3/tfc_util.c        |    23 +
>>>  drivers/net/bnxt/tf_core/v3/tfc_util.h        |    14 +
>>>  drivers/net/bnxt/tf_core/v3/tfc_vf2pf_msg.c   |     3 +-
>>>  drivers/net/bnxt/tf_core/v3/tfc_vf2pf_msg.h   |     4 +-
>>>  drivers/net/bnxt/tf_core/v3/tfo.c             |   211 +-
>>>  drivers/net/bnxt/tf_core/v3/tfo.h             |    53 +-
>>>  drivers/net/bnxt/tf_ulp/bnxt_tf_common.h      |     5 -
>>>  drivers/net/bnxt/tf_ulp/bnxt_tf_pmd_shim.c    |     6 -
>>>  drivers/net/bnxt/tf_ulp/bnxt_ulp.h            |     6 +
>>>  drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c       |    10 +
>>>  drivers/net/bnxt/tf_ulp/bnxt_ulp_meter.c      |    55 +-
>>>  drivers/net/bnxt/tf_ulp/bnxt_ulp_tf.c         |    27 +-
>>>  drivers/net/bnxt/tf_ulp/bnxt_ulp_tfc.c        |   147 +-
>>>  drivers/net/bnxt/tf_ulp/bnxt_ulp_tfc.h        |     5 +
>>>  drivers/net/bnxt/tf_ulp/bnxt_ulp_utils.h      |    82 +-
>>>  .../generic_templates/ulp_template_db_act.c   |     6 +-
>>>  .../generic_templates/ulp_template_db_class.c |  8808 ++--
>>>  .../generic_templates/ulp_template_db_defs.h  |    88 +
>>>  .../generic_templates/ulp_template_db_field.h |     5 +-
>>>  .../generic_templates/ulp_template_db_tbl.c   |   267 +-
>>>  .../ulp_template_db_thor2_act.c               |  4637 +-
>>>  .../ulp_template_db_thor2_class.c             | 42439 +++++++++-------
>>>  .../ulp_template_db_thor_act.c                |    14 +-
>>>  .../ulp_template_db_thor_class.c              | 13247 ++---
>>>  .../ulp_template_db_wh_plus_act.c             |     2 +-
>>>  .../ulp_template_db_wh_plus_class.c           |    26 +-
>>>  drivers/net/bnxt/tf_ulp/meson.build           |    56 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_alloc_tbl.c       |     4 -
>>>  drivers/net/bnxt/tf_ulp/ulp_def_rules.c       |    38 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c          |    50 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_fc_mgr.h          |    11 +
>>>  drivers/net/bnxt/tf_ulp/ulp_fc_mgr_tf.c       |     3 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_fc_mgr_tfc.c      |    64 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_flow_db.c         |    10 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_flow_db.h         |     6 +
>>>  drivers/net/bnxt/tf_ulp/ulp_gen_hash.c        |     2 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_gen_tbl.c         |    24 +
>>>  drivers/net/bnxt/tf_ulp/ulp_gen_tbl.h         |    12 +
>>>  drivers/net/bnxt/tf_ulp/ulp_mapper.c          |   326 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_mapper.h          |    56 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_mapper_tf.c       |    81 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_mapper_tfc.c      |   347 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_matcher.c         |     9 -
>>>  drivers/net/bnxt/tf_ulp/ulp_rte_handler_tbl.c |     8 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_rte_parser.c      |   141 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_rte_parser.h      |    10 +
>>>  drivers/net/bnxt/tf_ulp/ulp_sc_mgr.c          |   137 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_sc_mgr.h          |     4 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_sc_mgr_tfc.c      |     1 -
>>>  .../ulp_template_db_enum.h                    |   333 +-
>>>  drivers/net/bnxt/tf_ulp/ulp_template_struct.h |     5 +
>>>  drivers/net/bnxt/tf_ulp/ulp_tfc_ha_mgr.c      |   264 +
>>>  drivers/net/bnxt/tf_ulp/ulp_tfc_ha_mgr.h      |    40 +
>>>  meson_options.txt                             |     4 +
>>>  92 files changed, 48710 insertions(+), 30583 deletions(-)
>>>  create mode 100644 drivers/net/bnxt/tf_core/v3/tfc_hot_upgrade.c
>>>  create mode 100644 drivers/net/bnxt/tf_core/v3/tfc_mpc_debug.c
>>>  delete mode 100644 drivers/net/bnxt/tf_core/v3/tfc_mpc_table.c
>>>  create mode 100644 drivers/net/bnxt/tf_core/v3/tfc_tcam_debug.c
>>>  create mode 100644 drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_defs.h
>>>  rename drivers/net/bnxt/tf_ulp/{generic_templates => }/ulp_template_db_enum.h (88%)
>>>  create mode 100644 drivers/net/bnxt/tf_ulp/ulp_tfc_ha_mgr.c
>>>  create mode 100644 drivers/net/bnxt/tf_ulp/ulp_tfc_ha_mgr.h
>>>
>>> --
>>> 2.39.5 (Apple Git-154)
>>>
>>
>>
>> --
>> ;) Manish (x1380)
>
>
>
> --
> ;) Manish (x1380)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5479 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://mails.dpdk.org/archives/dev/attachments/20251023/c62d2256/attachment-0001.bin>


More information about the dev mailing list