ramips: improve ralink ethernet driver
authorJohn Crispin <blogic@openwrt.org>
Wed, 29 Oct 2014 19:43:59 +0000 (19:43 +0000)
committerJohn Crispin <blogic@openwrt.org>
Wed, 29 Oct 2014 19:43:59 +0000 (19:43 +0000)
commita5ef2aabf40763af102cee2c8a7b56ec42613ed9
treedfa7443a463a2c723593b3e1b6c1fc5482e3466c
parent8d61307dec507a02c5e5aa7b6633a933c6eceb37
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