git: 821c6c43a33d - main - librdmacm/libibverbs: Add bnxtre RDMA provider to OFED build infrastructure
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 09 Jan 2026 12:35:10 UTC
The branch main has been updated by ssaxena:
URL: https://cgit.FreeBSD.org/src/commit/?id=821c6c43a33d5b72290ee7f896d28438a3b789e1
commit 821c6c43a33d5b72290ee7f896d28438a3b789e1
Author: Sreekanth Reddy <sreekanth.reddy@broadcom.com>
AuthorDate: 2026-01-09 11:34:43 +0000
Commit: Sumit Saxena <ssaxena@FreeBSD.org>
CommitDate: 2026-01-09 12:34:02 +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
---
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 4369a30acc59..df5fdc544959 100644
--- a/share/mk/src.libnames.mk
+++ b/share/mk/src.libnames.mk
@@ -283,6 +283,7 @@ _LIBRARIES+= \
irdma \
mlx4 \
mlx5 \
+ bnxtre \
rdmacm \
osmcomp \
opensm \
@@ -358,7 +359,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
@@ -507,11 +508,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
@@ -804,6 +806,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