ramips: improve ralink ethernet driver
authorblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Wed, 29 Oct 2014 19:43:59 +0000 (19:43 +0000)
committerblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Wed, 29 Oct 2014 19:43:59 +0000 (19:43 +0000)
commitc3c38a20552caab64bd3afa8c1ed3ee04106d9cb
treedfa7443a463a2c723593b3e1b6c1fc5482e3466c
parent9a54ffdcb1fa01aaf03cd992fcd1be18ed2d98f4
ramips: improve ralink ethernet driver

Change list:
* add tx scatter gather function.
* add software rx vlan offload to let GRO work.
* add jumbo frame support. because use build_skb so max MTU is 3812.
* enable hardware tx vlan.
* enable GRO and remove LRO. because it can improve performance and can work on forwarding.
* enable/fix tx padding function.
* let napi handle tx clean up.
* support ethtool operation. now support message level, hardware status and coalesce.
* ethtool support use mdio to get phy status only on mt7620. need modify dts file and add phy info to support it.

Notes:
* build and test on rt2880, rt3052, rt3352, rt3662, rt5350 and mt7620a.
* TCP NAT performance improve. test with netperf.
  - rt2880(gigabit) from 5x to 12x Mbps.
  - rt3x5x from 6x to 94 Mbps.
  - rt5250 from 5x to 8x Mbps.
  - rt3662(gigabit) from 6x to 42x Mbps with GRO. 23x Mbps without GRO. 66x Mbps with jumbo frame.
  - mt7620 still 94Mbps.
* TSO function not tested. because i don't have mt7620 with eco >= 5. and the hardware don't support to set MSS. it will have problem.

Signed-off-by: michael lee <igvtee@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43108 3c298f89-4303-0410-b956-a3cf2f4a3e73
target/linux/ramips/patches-3.14/0035-NET-MIPS-add-ralink-SoC-ethernet-driver.patch