Re: git: f2f831b2c151 - main - bnxt_en: Add core SR-IOV infrastructure
- In reply to: Sumit Saxena : "git: f2f831b2c151 - main - bnxt_en: Add core SR-IOV infrastructure"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 28 Apr 2026 14:12:29 UTC
On 28 Apr 2026, at 07:44, Sumit Saxena <ssaxena@freebsd.org> wrote: > > The branch main has been updated by ssaxena: > > URL: https://cgit.FreeBSD.org/src/commit/?id=f2f831b2c151a9d989a94fc7c894118c802ef348 > > commit f2f831b2c151a9d989a94fc7c894118c802ef348 > Author: Chandrakanth Patil <chandrakanth.patil@broadcom.com> > AuthorDate: 2026-03-31 16:59:00 +0000 > Commit: Sumit Saxena <ssaxena@FreeBSD.org> > CommitDate: 2026-04-28 06:16:16 +0000 > > bnxt_en: Add core SR-IOV infrastructure > > Introduce the foundational building blocks for SR-IOV Virtual Function > support on Broadcom NetXtreme-C/E adapters. > > * Add bnxt_sriov.h: defines the extended bnxt_vf_info structure (per-VF > firmware FID, MAC addresses, VLAN, flags, DMA command buffers, resource > counts), the bnxt_resc_map helper, flag macros (BNXT_VF_TRUST, > BNXT_VF_SPOOFCHK, etc.), and prototypes for all SR-IOV functions. > > * Add bnxt_sriov.c: implements the SR-IOV attachment sequence > (bnxt_sriov_attach), the iflib IOV callbacks (bnxt_iov_init, > bnxt_iov_uninit, bnxt_iov_vf_add), VF resource allocation and > firmware configuration helpers (bnxt_alloc_vf_resources, > bnxt_cfg_hw_sriov, bnxt_hwrm_func_vf_resc_cfg, bnxt_hwrm_func_buf_rgtr, > bnxt_hwrm_func_vf_resource_free), and the per-VF parameter helper. > > * Extend bnxt.h: include bnxt_sriov.h; extend bnxt_pf_info with VF- > tracking fields (vf array, firmware FID/MAC, resource-reservation > strategy, DMA page management, sysctl context); replace the upstream > bnxt_vf_info stub with the full definition from bnxt_sriov.h; extend > bnxt_func_qcfg with allocation counters required by the VF resource > configuration path; add vf_resc_cfg_input and sriov_lock to bnxt_softc. > > * Update Makefile to build bnxt_sriov.c and include bnxt_sriov.h. > > * Wire up PCI-IOV device methods (pci_iov_init / pci_iov_uninit / > pci_iov_add_vf) and iflib IOV callbacks (ifdi_iov_init / ifdi_iov_uninit > / ifdi_iov_vf_add) in if_bnxt.c; call bnxt_sriov_attach() from > bnxt_attach_post() on P5+ Physical Functions. > > MFC after: 1 month > Reviewed by: ssaxena > Differential Revision: https://reviews.freebsd.org/D56197 There are a bunch of style violations in this (and not even self-consistent). tools/build/checkstyle9.pl is far from perfect but even it can find a load of issues here. % git show f2f831b2c151a9d989a94fc7c894118c802ef348 | tools/build/checkstyle9.pl - ... total: 25 errors, 22 warnings, 732 lines checked Jessica