linux/arc*: disable MAC frame filter in DW GMAC
[openwrt/staging/yousong.git] / target / linux / archs38 / patches-4.4 / 700-stmmac-Disable-frame-filtering-completely.patch
diff --git a/target/linux/archs38/patches-4.4/700-stmmac-Disable-frame-filtering-completely.patch b/target/linux/archs38/patches-4.4/700-stmmac-Disable-frame-filtering-completely.patch
new file mode 100644 (file)
index 0000000..1c79ed2
--- /dev/null
@@ -0,0 +1,36 @@
+From 0031b9011cb2b2b1de4dbb4f9620303aec760db4 Mon Sep 17 00:00:00 2001
+From: Alexey Brodkin <abrodkin@synopsys.com>
+Date: Wed, 27 Jul 2016 11:33:14 +0300
+Subject: [PATCH] stmmac: Disable frame filtering completely
+
+For some [still unknown] reason in ARC SDP boards
+DW GMAC doesn't enter promiscuous mode if eth0 gets
+added to the br-lan interface before Ethernet PHY finishes
+autonegotiation (PHY gets reset on DW GMAC start).
+
+As a work-around we completely disable frame filtering
+in GMAC hardware which gives us working bridge that consists
+of eth0 and wlan0 (USB Wi-Fi dongle). I.e. we finally have
+working "Dumb AP" setup made of ARC AXS10x boards.
+
+Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
+---
+ drivers/net/ethernet/stmicro/stmmac/common.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/ethernet/stmicro/stmmac/common.h b/drivers/net/ethernet/stmicro/stmmac/common.h
+index 623c6ed..6396b81 100644
+--- a/drivers/net/ethernet/stmicro/stmmac/common.h
++++ b/drivers/net/ethernet/stmicro/stmmac/common.h
+@@ -42,7 +42,7 @@
+ #define       DWMAC_CORE_3_50 0x35
+ #undef FRAME_FILTER_DEBUG
+-/* #define FRAME_FILTER_DEBUG */
++#define FRAME_FILTER_DEBUG
+ /* Extra statistic and debug information exposed by ethtool */
+ struct stmmac_extra_stats {
+-- 
+2.7.4
+