git: 6032b83fa4ea - stable/15 - librdmacm/libibverbs: Add bnxtre RDMA provider to OFED build infrastructure
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 27 Feb 2026 12:05:45 UTC
The branch stable/15 has been updated by ssaxena:
URL: https://cgit.FreeBSD.org/src/commit/?id=6032b83fa4ea1cb48fe78adf5498ee24a19a4f45
commit 6032b83fa4ea1cb48fe78adf5498ee24a19a4f45
Author: Sreekanth Reddy <sreekanth.reddy@broadcom.com>
AuthorDate: 2026-01-09 11:34:43 +0000
Commit: Sumit Saxena <ssaxena@FreeBSD.org>
CommitDate: 2026-02-27 12:04:39 +0000
librdmacm/libibverbs: Add bnxtre RDMA provider to OFED build infrastructure
Extend the FreeBSD OFED build framework to include the Broadcom bnxtre RDMA
provider library.
This change:
-Registers libbnxtre in src.libnames.mk so it is built and installed as part
of the OFED libraries.
-Adds bnxtre to the OFED pcap dependency set when MK_OFED is enabled.
-Declares proper dependency mappings for bnxtre (ibverbs, pthread).
-Introduces LIBBNXTREDIR for consistent object directory handling.
-Updates libibverbs and librdmacm build rules to link against libbnxtre,
enabling Broadcom RoCE device support at runtime.
-libbnxtre library uses below constructor to register with the libibverbs,
static attribute((constructor)) void bnxt_re_register_driver(void)
These updates ensure that applications using libibverbs and librdmacm can
discover and use Broadcom bnxt RDMA devices on FreeBSD.
Reviewed by: markj, ssaxena
Differential Revision: https://reviews.freebsd.org/D54368
MFC after: 3 days
(cherry picked from commit 821c6c43a33d5b72290ee7f896d28438a3b789e1)
---
share/mk/src.libnames.mk | 7 +++++--
usr.bin/ofed/libibverbs/Makefile.inc | 2 +-
usr.bin/ofed/librdmacm/Makefile.inc | 2 +-
3 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk
index f066e7bbdd94..00dd8b9e5d4d 100644
--- a/share/mk/src.libnames.mk
+++ b/share/mk/src.libnames.mk
@@ -286,6 +286,7 @@ _LIBRARIES+= \
irdma \
mlx4 \
mlx5 \
+ bnxtre \
rdmacm \
osmcomp \
opensm \
@@ -361,7 +362,7 @@ _DP_cap_sysctl= nv
_DP_cap_syslog= nv
_DP_crypt= md
.if ${MK_OFED} != "no"
-_DP_pcap= ibverbs mlx5
+_DP_pcap= ibverbs mlx5 bnxtre
.endif
_DP_pjdlog= util
_DP_usb= pthread
@@ -511,11 +512,12 @@ _DP_cxgb4= ibverbs pthread
_DP_ibcm= ibverbs
_DP_ibmad= ibumad
_DP_ibnetdisc= osmcomp ibmad ibumad
-_DP_ibumad=
+_DP_ibumad=
_DP_ibverbs=
_DP_irdma= ibverbs pthread
_DP_mlx4= ibverbs pthread
_DP_mlx5= ibverbs pthread
+_DP_bnxtre= ibverbs pthread
_DP_rdmacm= ibverbs
_DP_osmcomp= pthread
_DP_opensm= pthread
@@ -810,6 +812,7 @@ LIBIBVERBSDIR= ${_LIB_OBJTOP}/lib/ofed/libibverbs
LIBIRDMADIR= ${_LIB_OBJTOP}/lib/ofed/libirdma
LIBMLX4DIR= ${_LIB_OBJTOP}/lib/ofed/libmlx4
LIBMLX5DIR= ${_LIB_OBJTOP}/lib/ofed/libmlx5
+LIBBNXTREDIR= ${_LIB_OBJTOP}/lib/ofed/libbnxtre
LIBRDMACMDIR= ${_LIB_OBJTOP}/lib/ofed/librdmacm
LIBOSMCOMPDIR= ${_LIB_OBJTOP}/lib/ofed/complib
LIBOPENSMDIR= ${_LIB_OBJTOP}/lib/ofed/libopensm
diff --git a/usr.bin/ofed/libibverbs/Makefile.inc b/usr.bin/ofed/libibverbs/Makefile.inc
index 616c9bd54707..f8301c3d1073 100644
--- a/usr.bin/ofed/libibverbs/Makefile.inc
+++ b/usr.bin/ofed/libibverbs/Makefile.inc
@@ -3,6 +3,6 @@ _spath=${SRCTOP}/contrib/ofed/libibverbs
BINDIR?= /usr/bin
CFLAGS+= -I${_spath}
-LIBADD+= ibverbs mlx4 mlx5 cxgb4 irdma pthread
+LIBADD+= ibverbs mlx4 mlx5 bnxtre cxgb4 irdma pthread
WARNS?= 2
diff --git a/usr.bin/ofed/librdmacm/Makefile.inc b/usr.bin/ofed/librdmacm/Makefile.inc
index 74f32fe08b42..66fcf2ac267b 100644
--- a/usr.bin/ofed/librdmacm/Makefile.inc
+++ b/usr.bin/ofed/librdmacm/Makefile.inc
@@ -3,6 +3,6 @@ _spath=${SRCTOP}/contrib/ofed/librdmacm
BINDIR?= /usr/bin
CFLAGS+= -I${SRCTOP}/contrib/ofed
-LIBADD+= ibverbs rdmacm irdma mlx4 mlx5 cxgb4 pthread
+LIBADD+= ibverbs rdmacm irdma mlx4 mlx5 bnxtre cxgb4 pthread
WARNS?= 0