summaryrefslogtreecommitdiffstats
path: root/sys/modules
diff options
context:
space:
mode:
authoralfred <alfred@FreeBSD.org>2013-09-29 00:35:03 +0000
committeralfred <alfred@FreeBSD.org>2013-09-29 00:35:03 +0000
commit91eb2b78a7e56a727c14039b1a0e05969398f2b5 (patch)
tree2c8631892ad121ada16a812ddbfd631e44299298 /sys/modules
parent7e9b42c4d312afe32b30e8c1e60ccd6a47158fe3 (diff)
downloadFreeBSD-src-91eb2b78a7e56a727c14039b1a0e05969398f2b5.zip
FreeBSD-src-91eb2b78a7e56a727c14039b1a0e05969398f2b5.tar.gz
Update OFED to Linux 3.7 and update Mellanox drivers.
Update the OFED Infiniband core to the version supplied in Linux version 3.7. The update to OFED is nearly all additional defines and functions with the exception of the addition of additional parameters to ib_register_device() and the reg_user_mr callback. In addition the ibcore (Infiniband core) and ipoib (IP over Infiniband) have both been made into completely loadable modules to facilitate testing of the OFED stack in FreeBSD. Finally the Mellanox Infiniband drivers are now updated to the latest version shipping with Linux 3.7. Submitted by: Mellanox FreeBSD driver team: Oded Shanoon (odeds mellanox.com), Meny Yossefi (menyy mellanox.com), Orit Moskovich (oritm mellanox.com) Approved by: re
Diffstat (limited to 'sys/modules')
-rw-r--r--sys/modules/Makefile14
-rw-r--r--sys/modules/ibcore/Makefile23
-rw-r--r--sys/modules/ipoib/Makefile31
-rw-r--r--sys/modules/mlx4/Makefile6
-rw-r--r--sys/modules/mlx4ib/Makefile9
5 files changed, 79 insertions, 4 deletions
diff --git a/sys/modules/Makefile b/sys/modules/Makefile
index 2161b8b..8e7c895 100644
--- a/sys/modules/Makefile
+++ b/sys/modules/Makefile
@@ -128,6 +128,7 @@ SUBDIR= \
hwpmc \
${_hyperv} \
${_i2c} \
+ ${_ibcore} \
${_ibcs2} \
${_ichwd} \
${_ida} \
@@ -149,6 +150,7 @@ SUBDIR= \
${_igb} \
${_iir} \
${_io} \
+ ${_ipoib} \
${_ipdivert} \
${_ipfilter} \
${_ipfw} \
@@ -499,11 +501,17 @@ _fe= fe
_glxiic= glxiic
_glxsb= glxsb
_i2c= i2c
+.if ${MK_OFED} != "no" || defined(ALL_MODULES)
+_ibcore= ibcore
+.endif
_ibcs2= ibcs2
_ie= ie
_if_ndis= if_ndis
_igb= igb
_io= io
+.if ${MK_OFED} != "no" || defined(ALL_MODULES)
+_ipoib= ipoib
+.endif
_lindev= lindev
_linprocfs= linprocfs
_linsysfs= linsysfs
@@ -675,6 +683,9 @@ _hptrr= hptrr
.endif
_hyperv= hyperv
_i2c= i2c
+.if ${MK_OFED} != "no" || defined(ALL_MODULES)
+_ibcore= ibcore
+.endif
_ichwd= ichwd
_ida= ida
_if_ndis= if_ndis
@@ -682,6 +693,9 @@ _igb= igb
_iir= iir
_io= io
_ipmi= ipmi
+.if ${MK_OFED} != "no" || defined(ALL_MODULES)
+_ipoib= ipoib
+.endif
_ips= ips
_ipw= ipw
.if ${MK_SOURCELESS_UCODE} != "no"
diff --git a/sys/modules/ibcore/Makefile b/sys/modules/ibcore/Makefile
new file mode 100644
index 0000000..427902c
--- /dev/null
+++ b/sys/modules/ibcore/Makefile
@@ -0,0 +1,23 @@
+# $FreeBSD$
+.PATH: ${.CURDIR}/../../ofed/drivers/infiniband/core
+.PATH: ${.CURDIR}/../../ofed/include/linux
+
+.include <bsd.own.mk>
+
+KMOD = ibcore
+SRCS = addr.c cm_msgs.h iwcm.c mad_rmpp.h sa_query.c ucma.c uverbs_cmd.c
+SRCS+= agent.c local_sa.c iwcm.h multicast.c smi.c ud_header.c uverbs_main.c
+SRCS+= agent.h core_priv.h mad.c notice.c smi.h umem.c uverbs_marshall.c
+SRCS+= cache.c device.c mad_priv.h packer.c sysfs.c user_mad.c verbs.c
+SRCS+= cm.c fmr_pool.c mad_rmpp.c sa.h ucm.c uverbs.h cma.c
+SRCS+= linux_compat.c linux_radix.c linux_idr.c
+SRCS+= vnode_if.h device_if.h bus_if.h pci_if.h opt_inet.h
+
+CFLAGS+= -I${.CURDIR}/../../ofed/drivers/infiniband/core
+CFLAGS+= -I${.CURDIR}/../mlx4ib
+CFLAGS+= -I${.CURDIR}/../../ofed/include/
+CFLAGS+= -DINET6 -DINET -DOFED
+
+.include <bsd.kmod.mk>
+
+CFLAGS+= -Wno-cast-qual -Wno-pointer-arith -fms-extensions
diff --git a/sys/modules/ipoib/Makefile b/sys/modules/ipoib/Makefile
new file mode 100644
index 0000000..11d5435
--- /dev/null
+++ b/sys/modules/ipoib/Makefile
@@ -0,0 +1,31 @@
+# $FreeBSD$
+.PATH: ${.CURDIR}/../../ofed/drivers/infiniband/ulp/ipoib
+.PATH: ${.CURDIR}/../../ofed/include/linux
+
+.include <bsd.own.mk>
+
+KMOD = ipoib
+SRCS = device_if.h bus_if.h opt_ofed.h vnode_if.h opt_inet.h opt_inet6.h
+SRCS += ipoib_cm.c ipoib_ib.c ipoib_main.c ipoib_multicast.c ipoib_verbs.c ipoib.h
+SRCS+= linux_compat.c linux_radix.c linux_idr.c
+
+CFLAGS+= -I${.CURDIR}/../../ofed/drivers/infiniband/ulp/ipoib
+CFLAGS+= -I${.CURDIR}/../ibcore
+CFLAGS+= -I${.CURDIR}/../../ofed/include/
+CFLAGS+= -DINET6 -DINET -DOFED
+
+.if !defined(KERNBUILDDIR)
+.if ${MK_INET_SUPPORT} != "no"
+opt_inet.h:
+ @echo "#define INET 1" > ${.TARGET}
+.endif
+
+.if ${MK_INET6_SUPPORT} != "no"
+opt_inet6.h:
+ @echo "#define INET6 1" > ${.TARGET}
+.endif
+.endif
+
+.include <bsd.kmod.mk>
+
+CFLAGS+= -Wno-cast-qual -Wno-pointer-arith -fms-extensions
diff --git a/sys/modules/mlx4/Makefile b/sys/modules/mlx4/Makefile
index ccaf3c3..ce1ac5c 100644
--- a/sys/modules/mlx4/Makefile
+++ b/sys/modules/mlx4/Makefile
@@ -3,11 +3,11 @@
.include <bsd.own.mk>
+.PATH: ${.CURDIR}/../../ofed/include/linux
KMOD = mlx4
SRCS = device_if.h bus_if.h pci_if.h vnode_if.h
-SRCS+= alloc.c catas.c cmd.c cq.c eq.c fw.c icm.c intf.c main.c mcg.c mr.c
-SRCS+= pd.c port.c profile.c qp.c reset.c sense.c srq.c xrcd.c
-SRCS+= opt_inet.h opt_inet6.h
+SRCS+= alloc.c catas.c cmd.c cq.c eq.c fw.c icm.c intf.c main.c mcg.c mr.c linux_compat.c linux_radix.c linux_idr.c
+SRCS+= pd.c port.c profile.c qp.c reset.c sense.c srq.c resource_tracker.c sys_tune.c
CFLAGS+= -I${.CURDIR}/../../ofed/drivers/net/mlx4
CFLAGS+= -I${.CURDIR}/../../ofed/include/
diff --git a/sys/modules/mlx4ib/Makefile b/sys/modules/mlx4ib/Makefile
index 3ab6d6f..abe1585 100644
--- a/sys/modules/mlx4ib/Makefile
+++ b/sys/modules/mlx4ib/Makefile
@@ -1,14 +1,21 @@
# $FreeBSD$
.PATH: ${.CURDIR}/../../ofed/drivers/infiniband/hw/mlx4
+.PATH: ${.CURDIR}/../../ofed/include/linux
.include <bsd.own.mk>
KMOD = mlx4ib
SRCS = device_if.h bus_if.h pci_if.h vnode_if.h
-SRCS+= ah.c cq.c doorbell.c mad.c main.c mr.c qp.c srq.c wc.c
+SRCS+= linux_compat.c linux_radix.c linux_idr.c
+SRCS+= alias_GUID.c mcg.c sysfs.c ah.c cq.c doorbell.c mad.c main.c mr.c qp.c srq.c wc.c cm.c
SRCS+= opt_inet.h opt_inet6.h
+#CFLAGS+= -I${.CURDIR}/../../ofed/include/
+#CFLAGS+= -I${.CURDIR}/../../../../include
+CFLAGS+= -I${.CURDIR}/../../ofed/drivers/infiniband/hw/mlx4
CFLAGS+= -I${.CURDIR}/../../ofed/include/
+CFLAGS+= -DCONFIG_INFINIBAND_USER_MEM
+CFLAGS+= -DINET6 -DINET -DOFED
.if !defined(KERNBUILDDIR)
.if ${MK_INET_SUPPORT} != "no"
OpenPOWER on IntegriCloud