The underlying operating system for DifuseHQ's embedded routing devices
Find a file
Felix Fietkau 60b81acd60 ath79: dev-eth: Don't advertise 1gbit in link code word on ar9331
While the AR9331 has a gigabit MAC towards the internal switch, the
integrated PHYs however are only 100-base-tx capable.  The existing code
however advertieses gigabit capability in the link status word.  If you
attach such a PHY to a gigabit capable switch on the remote end, with
some probability it attempts to negotiate gigabit and fails, falling
baco to the AR9331 assuming a 10mbit half-duplex link.  This has been
observed quite frequently with the Carambola2 and gigabit capable
switches.

In ath79_register_eth(), "pdata->has_gbit = 1;" is set unconditionally
for both AR9331 ethernet ports. This is most likely wrong. Despite the
two MAC IP cores being gigabit MACs, the MAC for eth1 is connected to a
100base-T PHY via MII. The has_gbit attribute is used in the ethernet
driver to determine the supported link modes.

So either pdata->has_gbit is not set to 1 anymore, or the ethernet
driver needs to be modified to determine the advertised link code word
on another criteria than pdata->has_gbit.  This patch implements the
former solution.

Signed-off-by: Harald Welte <laforge@gnumonks.org>

SVN-Revision: 42432
2014-09-07 09:45:32 +00:00
config PKG_CHECK_FORMAT_SECURITY: add a menuconfig option, disable by default 2014-08-25 06:36:06 +00:00
docs docs: update remaining references to functions.sh 2012-12-20 15:29:33 +00:00
include include: add Cortex-A5 CPU_TYPE 2014-09-03 03:09:03 +00:00
package mac80211: enable DFS support for ath9k/10k by default 2014-09-07 09:38:13 +00:00
scripts build: introduce per feed repository support 2014-08-05 11:24:24 +00:00
target ath79: dev-eth: Don't advertise 1gbit in link code word on ar9331 2014-09-07 09:45:32 +00:00
toolchain toolchain/binutils: do not install host libiberty.a into target lib dir 2014-09-07 09:38:10 +00:00
tools tools/libtool: add missing dependency on m4 2014-08-29 11:37:28 +00:00
.gitattributes add .gitattributes to prevent the git autocrlf option from messing with CRLF/LF in files 2012-05-08 13:30:49 +00:00
.gitignore add git-src to .gitignore 2014-01-12 12:06:39 +00:00
BSDmakefile add missing copyright header 2007-02-26 01:05:09 +00:00
Config.in move menuconfig options into separate files 2013-11-22 14:30:40 +00:00
feeds.conf.default feeds: disable oldpackages by default 2014-07-29 10:24:12 +00:00
LICENSE finally move buildroot-ng to trunk 2016-03-20 17:29:15 +01:00
Makefile build: remove duplicate variable definitions 2014-03-21 15:54:11 +00:00
README Add 'subversion' build dependency to README 2014-08-31 12:06:32 +00:00
rules.mk build: override hardcoded paths to bison and m4 to make the SDK more relocatable 2014-08-26 12:15:50 +00:00

This is the buildsystem for the OpenWrt Linux distribution.

Please use "make menuconfig" to configure your appreciated
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.

You can use "scripts/flashing/flash.sh" for remotely updating your embedded
system via tftp.

The OpenWrt system is documented in docs/. You will need a LaTeX distribution
and the tex4ht package to build the documentation. Type "make -C docs/" to build it.

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 OpenWrt Project
	http://openwrt.org