66f3edfd8b
DW GMAC on ARC SDP boards doesn't enter promiscuous mode if Ethernet PHY haven't got established link. Good examples are auto-negotiation in progress or disconnected cable. We do see Linux kernel sets GMAC's MAC filter register properly but GMAC's hardware doesn't accept new settings. We believe it is a hardware issue, most probably problem of integration of DW GMAC and PHY on the board. As a work-around we completely disable frame filtering in GMAC hardware (once and for good) which forces GMAC to enter promiscuous mode with the first write to MAC filter register. That 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. Given that hack is quite dirty (in loaded wired networks this will effectively load CPU with junk packets even if user doesn't need promisc mode) and there's no indication any other boards with DW GMAC suffer from the same issue we're patching only kernel for ARC boards. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: John Crispin <john@phrozen.org>, Cc: Felix Fietkau <nbd@nbd.name> |
||
---|---|---|
config | ||
docs | ||
include | ||
package | ||
scripts | ||
target | ||
toolchain | ||
tools | ||
.gitattributes | ||
.gitignore | ||
BSDmakefile | ||
Config.in | ||
feeds.conf.default | ||
LICENSE | ||
Makefile | ||
README | ||
rules.mk |
This is the buildsystem for the LEDE Linux distribution. Please use "make menuconfig" to choose your preferred configuration for the toolchain and firmware. You need to have installed gcc, binutils, bzip2, flex, python, perl, make, find, grep, diff, unzip, gawk, getopt, subversion, libz-dev and libc headers. Run "./scripts/feeds update -a" to get all the latest package definitions defined in feeds.conf / feeds.conf.default respectively and "./scripts/feeds install -a" to install symlinks of all of them into package/feeds/. Use "make menuconfig" to configure your image. Simply running "make" will build your firmware. It will download all sources, build the cross-compile toolchain, the kernel and all choosen applications. To build your own firmware you need to have access to a Linux, BSD or MacOSX system (case-sensitive filesystem required). Cygwin will not be supported because of the lack of case sensitiveness in the file system. Sunshine! Your LEDE Community http://www.lede-project.org