Hello,
On 3 Mar 2022, at 08:47, Peter Müller peter.mueller@ipfire.org wrote:
Hello Arne,
thank you for submitting this.
Well, Realtek continues to be a mess when it comes to drivers, but I guess there is little sense in telling our users to complain to their hardware vendor for not getting drivers upstream. :-/
Yes, there is. Or we can just tell them to stop buying crap.
I don’t disagree with the patch from a technical point, but it creates a lot of extra work because we cannot at all rely on the quality of this driver, or that it is compatible with our kernel.
Those things might make us stop from upgrading to a newer kernel because the driver is incompatible and we would then have the decision to make whether we want to remain on an older kernel, or whether we want to break systems for users with this hardware. I would certainly know what I would vote for, because patches like this is just “best effort”.
I see the responsibility with the manufacturer that they make sure that there is decent driver support.
There have been many very successful attempts and we for example have very good drivers for Atheros wireless chipsets. So it can be done, and it cannot cost a fortune either. It is just that Linux users do not play a role when it comes to sales for wireless chipsets. This is a totally different situation for Ethernet chipsets for example.
So in short: Be all good boys. Don’t buy crap.
-Michael
Anyway, looks good to me.
Reviewed-by: Peter Müller peter.mueller@ipfire.org
Thanks, and best regards, Peter Müller
this chip is the successor of the rtl8189es look some boards has silently switched to the new chip.
Signed-off-by: Arne Fitzenreiter arne_f@ipfire.org
lfs/rtl8189fs | 95 +++++++++++++++++++++++ make.sh | 1 + src/patches/rtl8189fs/disable_debug.patch | 11 +++ 3 files changed, 107 insertions(+) create mode 100644 lfs/rtl8189fs create mode 100644 src/patches/rtl8189fs/disable_debug.patch
diff --git a/lfs/rtl8189fs b/lfs/rtl8189fs new file mode 100644 index 000000000..7a2b3dca0 --- /dev/null +++ b/lfs/rtl8189fs @@ -0,0 +1,95 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007-2022 IPFire Team info@ipfire.org # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see http://www.gnu.org/licenses/. # +# # +###############################################################################
+############################################################################### +# Definitions +###############################################################################
+include Config
+VERSUFIX = ipfire$(KCFG) +MODPATH = /lib/modules/$(KVER)-$(VERSUFIX)/extra/wlan
+VER = 3129a665f835ce0342f9a85a0ce14a556e656b8c
+THISAPP = rtl8189FS_linux-$(VER) +DL_FILE = $(THISAPP).tar.xz +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP)-kmod-$(KVER)-$(VERSUFIX)
+############################################################################### +# Top-level Rules +###############################################################################
+objects = $(DL_FILE)
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+$(DL_FILE)_MD5 = f7c817e89403b8a84a664f326f47c7d7
+install : $(TARGET)
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+md5 : $(subst %,%_MD5,$(objects))
+dist:
- $(PAK)
+############################################################################### +# Downloading, checking, md5sum +###############################################################################
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
- @$(CHECK)
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
- @$(LOAD)
+$(subst %,%_MD5,$(objects)) :
- @$(MD5)
+############################################################################### +# Installation Details +###############################################################################
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
- @$(PREBUILD)
- @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/rtl8189fs/disable_debug.patch
- cd $(DIR_APP) && CONFIG_RTL8189FS=m make $(MAKETUNING) \
-C /lib/modules/$(KVER)-$(VERSUFIX)/build/ M=$(DIR_APP)/ modules
- # Install the built kernel modules.
- mkdir -p $(MODPATH)
- cd $(DIR_APP) && for f in $$(ls *.ko); do \
/lib/modules/$$(uname -r)$(KCFG)/build/scripts/sign-file sha512 \
/lib/modules/$$(uname -r)$(KCFG)/build/certs/signing_key.pem \
/lib/modules/$$(uname -r)$(KCFG)/build/certs/signing_key.x509 \
$$f; \
xz $$f; \
install -m 644 $$f.xz $(MODPATH); \
- done
- @rm -rf $(DIR_APP)
- @$(POSTBUILD)
diff --git a/make.sh b/make.sh index 79798834a..6e84d8d1b 100755 --- a/make.sh +++ b/make.sh @@ -1181,6 +1181,7 @@ buildipfire() { # multi kernel builds so KCFG is empty lfsmake2 linux KCFG="" lfsmake2 rtl8189es KCFG=""
- lfsmake2 rtl8189fs KCFG="" lfsmake2 rtl8812au KCFG="" lfsmake2 rtl8822bu KCFG="" lfsmake2 xradio KCFG=""
diff --git a/src/patches/rtl8189fs/disable_debug.patch b/src/patches/rtl8189fs/disable_debug.patch new file mode 100644 index 000000000..d29c55e6c --- /dev/null +++ b/src/patches/rtl8189fs/disable_debug.patch @@ -0,0 +1,11 @@ +diff -Naur rtl8189FS_linux-3129a665f835ce0342f9a85a0ce14a556e656b8c.org/include/autoconf.h rtl8189FS_linux-3129a665f835ce0342f9a85a0ce14a556e656b8c/include/autoconf.h +--- rtl8189FS_linux-3129a665f835ce0342f9a85a0ce14a556e656b8c.org/include/autoconf.h 2021-10-01 14:51:56.000000000 +0000 ++++ rtl8189FS_linux-3129a665f835ce0342f9a85a0ce14a556e656b8c/include/autoconf.h 2022-02-26 12:00:09.188965578 +0000 +@@ -224,7 +224,6 @@
- /*
- Debug Related Config
- */
+-#define CONFIG_DEBUG /* DBG_871X, etc... */
- #ifdef CONFIG_DEBUG
- #define DBG 1 // for ODM & BTCOEX debug