Skip to content

bnxt_en: Driver update for RHEL-9.5

JIRA: https://issues.redhat.com/browse/RHEL-19811
JIRA: https://issues.redhat.com/browse/RHEL-23120
JIRA: https://issues.redhat.com/browse/RHEL-25505

Ken Cox (83):
  bnxt: don't handle XDP in netpoll
  bnxt_en: Increment rx_resets counter in bnxt_disable_napi()
  bnxt_en: Save ring error counters across reset
  bnxt_en: Display the ring error counters under ethtool -S
  bnxt_en: Add tx_resets ring counter
  bnxt: use the NAPI skb allocation cache
  bnxt_en: Flush XDP for bnxt_poll_nitroa0()'s NAPI
  bnxt_en: Update firmware interface to 1.10.2.171
  bnxt_en: Enhance hwmon temperature reporting
  bnxt_en: Move hwmon functions into a dedicated file
  bnxt_en: Modify the driver to use hwmon_device_register_with_info
  bnxt_en: Expose threshold temperatures through hwmon
  bnxt_en: Use non-standard attribute to expose shutdown temperature
  bnxt_en: Event handler for Thermal event
  bnxt_en: Support QOS and TPID settings for the SRIOV VLAN
  bnxt_en: Update VNIC resource calculation for VFs
  Revert "bnxt_en: Support QOS and TPID settings for the SRIOV VLAN"
  eth: bnxt: fix backward compatibility with older devices
  bnxt_en: Do not call sleeping hwmon_notify_event() from NAPI
  bnxt_en: Fix invoking hwmon_notify_event
  bnxt_en: add infrastructure to lookup ethtool link mode
  bnxt_en: support lane configuration via ethtool
  bnxt_en: refactor speed independent ethtool modes
  bnxt_en: Refactor NRZ/PAM4 link speed related logic
  bnxt_en: convert to linkmode_set_bit() API
  bnxt_en: extend media types to supported and autoneg modes
  bnxt_en: Fix 2 stray ethtool -S counters
  bnxt_en: Put the TX producer information in the TX BD opaque field
  bnxt_en: Add completion ring pointer in TX and RX ring structures
  bnxt_en: Restructure cp_ring_arr in struct bnxt_cp_ring_info
  bnxt_en: Add completion ring pointer in TX and RX ring structures
  bnxt_en: Remove BNXT_RX_HDL and BNXT_TX_HDL
  bnxt_en: Refactor bnxt_tx_int()
  bnxt_en: New encoding for the TX opaque field
  bnxt_en: Refactor bnxt_hwrm_set_coal()
  bnxt_en: Support up to 8 TX rings per MSIX
  bnxt_en: Add helper to get the number of CP rings required for TX rings
  bnxt_en: Add macros related to TC and TX rings
  bnxt_en: Use existing MSIX vectors for all mqprio TX rings
  bnxt_en: Optimize xmit_more TX path
  bnxt_en: The caller of bnxt_alloc_ctx_mem() should always free bp->ctx
  bnxt_en: Free bp->ctx inside bnxt_free_ctx_mem()
  bnxt_en: Restructure context memory data structures
  bnxt_en: Add page info to struct bnxt_ctx_mem_type
  bnxt_en: Use the pg_info field in bnxt_ctx_mem_type struct
  bnxt_en: Add bnxt_setup_ctxm_pg_tbls() helper function
  bnxt_en: Add support for new backing store query firmware API
  bnxt_en: Add support for HWRM_FUNC_BACKING_STORE_CFG_V2 firmware calls
  bnxt_en: Add db_ring_mask and related macro to bnxt_db_info struct.
  bnxt_en: Modify TX ring indexing logic.
  bnxt_en: Modify RX ring indexing logic.
  bnxt_en: Modify the NAPI logic for the new P7 chips
  bnxt_en: Rename some macros for the P5 chips
  bnxt_en: Fix backing store V2 logic
  bnxt_en: Update firmware interface to 1.10.3.15
  bnxt_en: Define basic P7 macros
  bnxt_en: Consolidate DB offset calculation
  bnxt_en: Implement the new toggle bit doorbell mechanism on P7 chips
  bnxt_en: Refactor RSS capability fields
  bnxt_en: Add new P7 hardware interface definitions
  bnxt_en: Refactor RX VLAN acceleration logic.
  bnxt_en: Refactor and refine bnxt_tpa_start() and bnxt_tpa_end().
  bnxt_en: Add support for new RX and TPA_START completion types for P7
  bnxt_en: Refactor ethtool speeds logic
  bnxt_en: Support new firmware link parameters
  bnxt_en: Support force speed using the new HWRM fields
  bnxt_en: Report the new ethtool link modes in the new firmware interface
  bnxt_en: Add 5760X (P7) PCI IDs
  net: bnxt: fix a potential use-after-free in bnxt_init_tc
  bnxt_en: Clear resource reservation during resume
  bnxt_en: Fix wrong return value check in bnxt_close_nic()
  bnxt_en: Fix HWTSTAMP_FILTER_ALL packet timestamp logic
  bnxt_en: Fix trimming of P5 RX and TX rings
  bnxt_en: Fix AGG ring check logic in bnxt_check_rings()
  bnxt_en: Fix TX ring indexing logic
  bnxt_en: Prevent TX timeout with a very small TX ring
  bnxt_en: Remove mis-applied code from bnxt_cfg_ntp_filters()
  bnxt_en: Fix memory leak in bnxt_hwrm_get_rings()
  bnxt_en: Fix error recovery for 5760X (P7) chips
  bnxt_en: Update firmware interface to 1.10.3.39
  bnxt_en: Update firmware interface to 1.10.3.44
  bnxt_en: Set TSO max segs on devices with limits
  bnxt_en: Restore PTP tx_avail count in case of skb_pad() error

 drivers/net/ethernet/broadcom/bnxt/Makefile   |    1 +
 drivers/net/ethernet/broadcom/bnxt/bnxt.c     | 2223 +++++++++++------
 drivers/net/ethernet/broadcom/bnxt/bnxt.h     |  452 +++-
 .../net/ethernet/broadcom/bnxt/bnxt_devlink.c |   23 +-
 .../net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 1000 ++++++--
 drivers/net/ethernet/broadcom/bnxt/bnxt_hsi.h | 1381 +++++++---
 .../net/ethernet/broadcom/bnxt/bnxt_hwmon.c   |  241 ++
 .../net/ethernet/broadcom/bnxt/bnxt_hwmon.h   |   30 +
 .../net/ethernet/broadcom/bnxt/bnxt_hwrm.c    |    2 +
 .../net/ethernet/broadcom/bnxt/bnxt_hwrm.h    |   14 +
 drivers/net/ethernet/broadcom/bnxt/bnxt_ptp.c |    9 +-
 .../net/ethernet/broadcom/bnxt/bnxt_sriov.c   |   34 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c  |    1 +
 drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c |   10 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.h |    4 +
 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c |   41 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.h |    2 +-
 17 files changed, 3887 insertions(+), 1581 deletions(-)
 create mode 100644 drivers/net/ethernet/broadcom/bnxt/bnxt_hwmon.c
 create mode 100644 drivers/net/ethernet/broadcom/bnxt/bnxt_hwmon.h

Signed-off-by: Ken Cox <jkc@redhat.com>

Merge request reports