summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKoichiro Iwao <meta@FreeBSD.org>2024-03-13 17:52:50 +0900
committerKoichiro Iwao <meta@FreeBSD.org>2024-03-14 11:04:19 +0900
commitf967592923a21e7b44c11a45f7a241439a97f163 (patch)
tree1d208c4a902a9a2ff87fe53f121b3b9b7b993bde
parent345282be246e789990b0c7779e3701d4fe1f06f2 (diff)
downloadfreebsd-ports-f967592923a21e7b44c11a45f7a241439a97f163.zip
net/realrek-re-kmod198: add port for 198 version
as a workaround for bug 275882. This port can be retired when the bug is resolved completely. Many people need the 198 version because of the hang-up issue. Another set of people need 199 because of another issue. This port is needed to satisfy both sets of people until complete until a complete solution for 275882 is found. PR: 275882 Sponsored by: Cybertrust Japan (cherry picked from commit b770c919121526ebbf61b81fd6b832619319df60)
-rw-r--r--net/Makefile1
-rw-r--r--net/realtek-re-kmod198/Makefile23
-rw-r--r--net/realtek-re-kmod198/distinfo3
-rw-r--r--net/realtek-re-kmod198/pkg-descr25
-rw-r--r--net/realtek-re-kmod198/pkg-message22
5 files changed, 74 insertions, 0 deletions
diff --git a/net/Makefile b/net/Makefile
index 409dae9883a5..efc5fdb15241 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -1205,6 +1205,7 @@
SUBDIR += rdist6
SUBDIR += read_bbrlog
SUBDIR += realtek-re-kmod
+ SUBDIR += realtek-re-kmod198
SUBDIR += reaver
SUBDIR += recvnet
SUBDIR += redir
diff --git a/net/realtek-re-kmod198/Makefile b/net/realtek-re-kmod198/Makefile
new file mode 100644
index 000000000000..32fcf4d7a800
--- /dev/null
+++ b/net/realtek-re-kmod198/Makefile
@@ -0,0 +1,23 @@
+PORTNAME= re
+PORTVERSION= 198.00
+DISTVERSIONPREFIX= v
+CATEGORIES= net
+PKGNAMEPREFIX= realtek-
+PKGNAMESUFFIX= -kmod198
+
+MAINTAINER= meta@FreeBSD.org
+COMMENT= Kernel driver for Realtek PCIe Ethernet Controllers
+WWW= https://github.com/alexdupre/rtl_bsd_drv
+
+LICENSE= BSD4CLAUSE
+
+USES= kmod tar:tgz uidfix
+
+USE_GITHUB= yes
+GH_ACCOUNT= alexdupre
+GH_PROJECT= rtl_bsd_drv
+GH_TAGNAME= d3a7a3d
+
+PLIST_FILES= ${KMODDIR}/if_re.ko
+
+.include <bsd.port.mk>
diff --git a/net/realtek-re-kmod198/distinfo b/net/realtek-re-kmod198/distinfo
new file mode 100644
index 000000000000..fffba63c3ca5
--- /dev/null
+++ b/net/realtek-re-kmod198/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1689608993
+SHA256 (alexdupre-rtl_bsd_drv-v198.00-d3a7a3d_GH0.tar.gz) = 43ff94e41a4c674143f9a37299c40b92fd7f94a25fa33cf253114eda0f9f49fa
+SIZE (alexdupre-rtl_bsd_drv-v198.00-d3a7a3d_GH0.tar.gz) = 132723
diff --git a/net/realtek-re-kmod198/pkg-descr b/net/realtek-re-kmod198/pkg-descr
new file mode 100644
index 000000000000..8f2ccbde49e5
--- /dev/null
+++ b/net/realtek-re-kmod198/pkg-descr
@@ -0,0 +1,25 @@
+Realtek PCIe FE / GBE / 2.5G / Gaming Ethernet Family Controller
+kernel driver.
+
+This is the official driver from Realtek with a few patches to
+improve stability and performance. It can be loaded instead of
+the FreeBSD driver built into the GENERIC kernel if you experience
+issues with it (eg. watchdog timeouts), or your card is not supported.
+
+Supported devices:
+
+* 2.5G Gigabit Ethernet
+ - RTL8125 / RTL8125B(S)(G)
+
+* 10/100/1000M Gigabit Ethernet
+ - RTL8111B / RTL8111C / RTL8111D / RTL8111E / RTL8111F / RTL8111G(S)
+ RTL8111H(S) / RTL8118(A)(S) / RTL8119i / RTL8111L / RTL8111K
+ - RTL8168B / RTL8168E / RTL8168H
+ - RTL8111DP / RTL8111EP / RTL8111FP
+ - RTL8411 / RTL8411B
+
+* 10/100M Fast Ethernet
+ - RTL8101E / RTL8102E / RTL8103E / RTL8105E / RTL8106E / RTL8107E
+ - RTL8401 / RTL8402
+
+See also: https://www.realtek.com/en/component/zoo/category/network-interface-controllers-10-100-1000m-gigabit-ethernet-pci-express-software
diff --git a/net/realtek-re-kmod198/pkg-message b/net/realtek-re-kmod198/pkg-message
new file mode 100644
index 000000000000..223da6049f14
--- /dev/null
+++ b/net/realtek-re-kmod198/pkg-message
@@ -0,0 +1,22 @@
+[
+{ type: install
+ message: <<EOM
+Add the following lines to your /boot/loader.conf
+to override the built-in FreeBSD re(4) driver.
+
+if_re_load="YES"
+if_re_name="/boot/modules/if_re.ko"
+
+By default, the size of allocated mbufs is enough
+to receive the largest Ethernet frame supported
+by the card. If your memory is highly fragmented,
+trying to allocate contiguous pages (more than
+4096 bytes) may result in driver hangs.
+For this reason the value is tunable at boot time,
+e.g. if you don't need Jumbo frames you can lower
+the memory requirements and avoid this issue with:
+
+hw.re.max_rx_mbuf_sz="2048"
+EOM
+}
+]