ar71xx: fix ethernet on wnr2000-v4
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 8 May 2015 12:23:45 +0000 (12:23 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 8 May 2015 12:23:45 +0000 (12:23 +0000)
commit714c8151cf75e401f65197c255e27eb3d34dc300
treeee382a0ca992947a0c0848938f8c34020684cefd
parent473849e268788296c2ee29c0b9f957a75c4b262f
ar71xx: fix ethernet on wnr2000-v4

Most people report broken ethernet with upstream. Last year, user "franz.flasch"
authored a working mach-file. His patch is outdated so I modernized it. Original
patch and user commentary on page 1:
https://forum.openwrt.org/viewtopic.php?pid=260861#p260861

I have figured out what the critical differences are between the two that caused
upstream ethernet to break.
  1) Both ath79_init_mac() functions calls must be invocated before any GMAC init
  2) must init GMAC0 before GMAC1

That was enough to get upstream to function, but I wanted to enjoy my confidence
having tested franz's patch for a week sucessfully, so I put his whole
function in, which only features more differences in order of function calls.

An expert should consider these changes, which could pose potential bugs/issues:
1) No longer using the flag AR934X_ETH_CFG_SW_PHY_SWAP in the
ath79_setup_ar934x_eth_cfg() call.

2) Possible consequence of no longer explicitly setting ethernet duplex/speed.

Review: With this patch, my ethernet and wireless works.

Signed-off-by: Michael J. Bazzinotti <mbazzinotti@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45633 3c298f89-4303-0410-b956-a3cf2f4a3e73
target/linux/ar71xx/files/arch/mips/ath79/mach-wnr2000-v4.c