From: Arne Fitzenreiter Date: Sun, 16 Jun 2013 13:13:47 +0000 (+0200) Subject: r81xx: switch realtek lan module from vendor to kernel. X-Git-Url: http://git.ipfire.org/?p=people%2Fteissler%2Fipfire-2.x.git;a=commitdiff_plain;h=22358c067272bf5cb1b951fa19fe3b2d0c9edf45 r81xx: switch realtek lan module from vendor to kernel. some users has reported problems with the realtek vendor modules. -problems at link detection with r8101. -problems with igmpproxy with r8169. so we switch to the original kernel modul. (vendor drivers are used for xen because r8169 crash here) --- diff --git a/config/rootfiles/core/70/update.sh b/config/rootfiles/core/70/update.sh index 39b13714b..9c926d9e1 100644 --- a/config/rootfiles/core/70/update.sh +++ b/config/rootfiles/core/70/update.sh @@ -54,6 +54,28 @@ if [ `grep "ENABLED=on" /var/ipfire/vpn/settings` ]; then /etc/init.d/ipsec start fi +#Switch realtek lan from vendor to kernel original... + mv /lib/modules/*-ipfire*/kernel/drivers/net/ethernet/realtek/r81??.ko \ + /lib/modules/*-ipfire*/kernel/drivers/net/ethernet/realtek/r81??.ko.vendor + cp /lib/modules/*-ipfire*/kernel/drivers/net/ethernet/realtek/r8169.ko.org \ + /lib/modules/*-ipfire*/kernel/drivers/net/ethernet/realtek/r8169.ko + rm /lib/modules/*-ipfire*/kernel/drivers/net/ethernet/realtek/r8101.ko + rm /lib/modules/*-ipfire*/kernel/drivers/net/ethernet/realtek/r8168.ko + rm /var/cache/pakfire/linux-pae-*.ipfire + +#rebuild module dep's +arch=`uname -m` + +if [ ${arch::3} == "arm" ]; then + depmod -a 3.2.46-ipfire-kirkwood >/dev/null 2>&1 + depmod -a 3.2.46-ipfire-omap >/dev/null 2>&1 + depmod -a 3.2.46-ipfire-rpi >/dev/null 2>&1 +else + depmod -a 3.2.46-ipfire >/dev/null 2>&1 + depmod -a 3.2.46-ipfire-pae >/dev/null 2>&1 + depmod -a 2.6.32.60-ipfire-xen >/dev/null 2>&1 +fi + # #Update Language cache perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang" @@ -72,4 +94,3 @@ touch /var/run/need_reboot sendprofile #Don't report the exitcode last command exit 0 - diff --git a/lfs/r8101 b/lfs/r8101 index 85d39007b..39a6a2894 100644 --- a/lfs/r8101 +++ b/lfs/r8101 @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2012 IPFire Team # +# Copyright (C) 2007-2013 IPFire Team # # # # 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 # @@ -28,8 +28,10 @@ VERSUFIX = ipfire$(KCFG) ifeq "$(KCFG)" "-xen" KVER = 2.6.32.60 MODPATH = /lib/modules/$(KVER)-$(VERSUFIX)/kernel/drivers/net + MODNAME = r8101.ko else MODPATH = /lib/modules/$(KVER)-$(VERSUFIX)/kernel/drivers/net/ethernet/realtek + MODNAME = r8101.ko.vendor endif VER = 1.023.00 @@ -83,6 +85,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/r8101_add_missing_pciids.patch cd $(DIR_APP) && make -C /lib/modules/$(KVER)-$(VERSUFIX)/build/ SUBDIRS=$(DIR_APP)/src modules - cd $(DIR_APP)/src && install -m 644 r8101.ko $(MODPATH) + cd $(DIR_APP)/src && install -m 644 r8101.ko $(MODPATH)/$(MODNAME) @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/r8168 b/lfs/r8168 index c4aa6a960..8dd3ec4ea 100644 --- a/lfs/r8168 +++ b/lfs/r8168 @@ -28,8 +28,10 @@ VERSUFIX = ipfire$(KCFG) ifeq "$(KCFG)" "-xen" KVER = 2.6.32.60 MODPATH = /lib/modules/$(KVER)-$(VERSUFIX)/kernel/drivers/net + MODNAME = r8168.ko else MODPATH = /lib/modules/$(KVER)-$(VERSUFIX)/kernel/drivers/net/ethernet/realtek + MODNAME = r8168.ko.vendor endif VER = 8.035.00 @@ -82,6 +84,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && make -C /lib/modules/$(KVER)-$(VERSUFIX)/build/ SUBDIRS=$(DIR_APP)/src modules - cd $(DIR_APP)/src && install -m 644 r8168.ko $(MODPATH) + cd $(DIR_APP)/src && install -m 644 r8168.ko $(MODPATH)/$(MODNAME) @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/r8169 b/lfs/r8169 index 65c34e610..5e2f4c76a 100644 --- a/lfs/r8169 +++ b/lfs/r8169 @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2012 IPFire Team # +# Copyright (C) 2007-2013 IPFire Team # # # # 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 # @@ -28,8 +28,10 @@ VERSUFIX = ipfire$(KCFG) ifeq "$(KCFG)" "-xen" KVER = 2.6.32.60 MODPATH = /lib/modules/$(KVER)-$(VERSUFIX)/kernel/drivers/net + MODNAME = r8169.ko else MODPATH = /lib/modules/$(KVER)-$(VERSUFIX)/kernel/drivers/net/ethernet/realtek + MODNAME = r8169.ko.vendor endif VER = 6.017.00 @@ -81,11 +83,13 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) #Save original r8169 module +ifeq "$(KCFG)" "-xen" -mv $(MODPATH)/r8169.ko \ $(MODPATH)/r8169.ko.org +endif @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/r8169_add_missing_pciids.patch cd $(DIR_APP) && make -C /lib/modules/$(KVER)-$(VERSUFIX)/build/ SUBDIRS=$(DIR_APP)/src modules - cd $(DIR_APP)/src && install -m 644 r8169.ko $(MODPATH) + cd $(DIR_APP)/src && install -m 644 r8169.ko $(MODPATH)/$(MODNAME) @rm -rf $(DIR_APP) @$(POSTBUILD)