From 6b9e53c9e67155cc95d996590231cdafc843b866 Mon Sep 17 00:00:00 2001
From: Koichiro Iwao
Date: Wed, 13 Mar 2024 17:52:50 +0900
Subject: [PATCH] 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
---
net/Makefile | 1 +
net/realtek-re-kmod198/Makefile | 24 ++++++++++++++++++++++++
net/realtek-re-kmod198/distinfo | 3 +++
net/realtek-re-kmod198/pkg-descr | 25 +++++++++++++++++++++++++
net/realtek-re-kmod198/pkg-message | 22 ++++++++++++++++++++++
5 files changed, 75 insertions(+)
create mode 100644 net/realtek-re-kmod198/Makefile
create mode 100644 net/realtek-re-kmod198/distinfo
create mode 100644 net/realtek-re-kmod198/pkg-descr
create mode 100644 net/realtek-re-kmod198/pkg-message
diff --git a/net/Makefile b/net/Makefile
index 7b9bb6037156..917319218cd1 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -1210,6 +1210,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..fbcd7eba2217
--- /dev/null
+++ b/net/realtek-re-kmod198/Makefile
@@ -0,0 +1,24 @@
+PORTNAME= re
+PORTVERSION= 198.00
+DISTVERSIONPREFIX= v
+PORTREVISION= 3
+CATEGORIES= net
+PKGNAMEPREFIX= realtek-
+PKGNAMESUFFIX= -kmod198
+
+MAINTAINER= ale@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
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: <