This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "IPFire 2.x development tree".
The branch, master has been updated
via da6424d983c51391774541c2717278421a1cc659 (commit)
via ebaf391b480a4b3da36933f93b2720f34cd92d57 (commit)
via 8815d10bc1e9c68fd50983211477f1ce95feda83 (commit)
from 0e37b55202738c4eb0e4be042b64ed8e2a161953 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit da6424d983c51391774541c2717278421a1cc659
Author: Arne Fitzenreiter <arne_f(a)ipfire.org>
Date: Fri Jun 13 21:02:45 2014 +0200
kernel: add mcs7830 link detection patch.
fixes #10551
commit ebaf391b480a4b3da36933f93b2720f34cd92d57
Author: Arne Fitzenreiter <arne_f(a)ipfire.org>
Date: Fri Jun 13 21:01:56 2014 +0200
kernel-header: rootfile update.
commit 8815d10bc1e9c68fd50983211477f1ce95feda83
Author: Arne Fitzenreiter <arne_f(a)ipfire.org>
Date: Fri Jun 13 21:00:36 2014 +0200
libpcap: rootfile update.
-----------------------------------------------------------------------
Summary of changes:
config/rootfiles/common/armv5tel/linux-headers | 1 +
config/rootfiles/common/i586/linux-headers | 1 +
config/rootfiles/common/libpcap | 1 -
lfs/linux | 5 +-
...-3.10.y-usbnet_mcs7830_rework_link_detect.patch | 71 ++++++++++++++++++++++
5 files changed, 77 insertions(+), 2 deletions(-)
create mode 100644 src/patches/linux-3.10.y-usbnet_mcs7830_rework_link_detect.patch
Difference in files:
diff --git a/config/rootfiles/common/armv5tel/linux-headers b/config/rootfiles/common/armv5tel/linux-headers
index a4da621..7fa9a24 100644
--- a/config/rootfiles/common/armv5tel/linux-headers
+++ b/config/rootfiles/common/armv5tel/linux-headers
@@ -625,6 +625,7 @@
#usr/include/linux/unix_diag.h
#usr/include/linux/usb
#usr/include/linux/usb/audio.h
+#usr/include/linux/usb/cdc-wdm.h
#usr/include/linux/usb/cdc.h
#usr/include/linux/usb/ch11.h
#usr/include/linux/usb/ch9.h
diff --git a/config/rootfiles/common/i586/linux-headers b/config/rootfiles/common/i586/linux-headers
index 8f8123c..deaa97f 100644
--- a/config/rootfiles/common/i586/linux-headers
+++ b/config/rootfiles/common/i586/linux-headers
@@ -654,6 +654,7 @@
#usr/include/linux/unix_diag.h
#usr/include/linux/usb
#usr/include/linux/usb/audio.h
+#usr/include/linux/usb/cdc-wdm.h
#usr/include/linux/usb/cdc.h
#usr/include/linux/usb/ch11.h
#usr/include/linux/usb/ch9.h
diff --git a/config/rootfiles/common/libpcap b/config/rootfiles/common/libpcap
index e300c9b..52169a7 100644
--- a/config/rootfiles/common/libpcap
+++ b/config/rootfiles/common/libpcap
@@ -15,7 +15,6 @@
#usr/lib/libpcap.a
usr/lib/libpcap.so
usr/lib/libpcap.so.1
-usr/lib/libpcap.so.1.0
usr/lib/libpcap.so.1.4.0
#usr/share/man/man1/pcap-config.1
#usr/share/man/man3/pcap.3pcap
diff --git a/lfs/linux b/lfs/linux
index 0214beb..45e9ce6 100644
--- a/lfs/linux
+++ b/lfs/linux
@@ -36,7 +36,7 @@ DIR_APP = $(DIR_SRC)/$(THISAPP)
CFLAGS =
CXXFLAGS =
-PAK_VER = 48
+PAK_VER = 49
DEPS = ""
VERSUFIX=ipfire$(KCFG)
@@ -160,6 +160,9 @@ endif
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.2.33_ipg-fix-driver-name.patch
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32.27_mcs7830-fix-driver-name.patch
+ # Moschip 7830 link detection
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.10.y-usbnet_mcs7830_rework_link_detect.patch
+
ifeq "$(KCFG)" "-kirkwood"
# Add dreamplug,guruplug and icy 62x0 support on ARM-kirkwood
diff --git a/src/patches/linux-3.10.y-usbnet_mcs7830_rework_link_detect.patch b/src/patches/linux-3.10.y-usbnet_mcs7830_rework_link_detect.patch
new file mode 100644
index 0000000..2114ae8
--- /dev/null
+++ b/src/patches/linux-3.10.y-usbnet_mcs7830_rework_link_detect.patch
@@ -0,0 +1,71 @@
+From 4e9792dc8ab29175295c79c35f9f6fbd2d453b35 Mon Sep 17 00:00:00 2001
+From: Octavian Purdila <octavian.purdila(a)intel.com>
+Date: Mon, 23 Dec 2013 19:06:31 +0200
+Subject: [PATCH] usbnet: mcs7830: rework link state detection
+
+Even with the quirks in commit dabdaf0c (mcs7830: Fix link state
+detection) there are still spurious link-down events for some chips
+where the false link-down events count go over a few hundreds.
+
+This patch takes a more conservative approach and only looks at
+link-down events where the link-down state is not combined with other
+states (e.g. half/full speed, pending frames in SRAM or TX status
+information valid). In all other cases we assume the link is up.
+
+Tested on MCS7830CV-DA (USB ID 9710:7830).
+
+Cc: Ondrej Zary <linux(a)rainbow-software.org>
+Cc: Michael Leun <lkml20120218(a)newton.leun.net>
+Cc: Ming Lei <ming.lei(a)canonical.com>
+Signed-off-by: Octavian Purdila <octavian.purdila(a)intel.com>
+Signed-off-by: David S. Miller <davem(a)davemloft.net>
+---
+ drivers/net/usb/mcs7830.c | 19 ++++---------------
+ 1 file changed, 4 insertions(+), 15 deletions(-)
+
+diff --git a/drivers/net/usb/mcs7830.c b/drivers/net/usb/mcs7830.c
+index 9237c45..8dd48b5 100644
+--- a/drivers/net/usb/mcs7830.c
++++ b/drivers/net/usb/mcs7830.c
+@@ -117,7 +117,6 @@ enum {
+ struct mcs7830_data {
+ u8 multi_filter[8];
+ u8 config;
+- u8 link_counter;
+ };
+
+ static const char driver_name[] = "MOSCHIP usb-ethernet driver";
+@@ -562,26 +561,16 @@ static void mcs7830_status(struct usbnet *dev, struct urb *urb)
+ {
+ u8 *buf = urb->transfer_buffer;
+ bool link, link_changed;
+- struct mcs7830_data *data = mcs7830_get_data(dev);
+
+ if (urb->actual_length < 16)
+ return;
+
+- link = !(buf[1] & 0x20);
++ link = !(buf[1] == 0x20);
+ link_changed = netif_carrier_ok(dev->net) != link;
+ if (link_changed) {
+- data->link_counter++;
+- /*
+- track link state 20 times to guard against erroneous
+- link state changes reported sometimes by the chip
+- */
+- if (data->link_counter > 20) {
+- data->link_counter = 0;
+- usbnet_link_change(dev, link, 0);
+- netdev_dbg(dev->net, "Link Status is: %d\n", link);
+- }
+- } else
+- data->link_counter = 0;
++ usbnet_link_change(dev, link, 0);
++ netdev_dbg(dev->net, "Link Status is: %d\n", link);
++ }
+ }
+
+ static const struct driver_info moschip_info = {
+--
+2.0.0
+
hooks/post-receive
--
IPFire 2.x development tree