• Frank Li's avatar
    net: fec: enable pause frame to improve rx prefomance for 1G network · baa70a5c
    Frank Li authored
    The limition of imx6 internal bus cause fec can't achieve 1G perfomance.
    There will be many packages lost because FIFO over run.
    
    This patch enable pause frame flow control.
    
    Before this patch
    iperf -s -i 1
    TCP window size: 85.3 KByte (default)
    ------------------------------------------------------------
    [  4] local 10.192.242.153 port 5001 connected with 10.192.242.94 port 49773
    [ ID] Interval       Transfer     Bandwidth
    [  4]  0.0- 1.0 sec  6.35 MBytes  53.3 Mbits/sec
    [  4]  1.0- 2.0 sec  3.39 MBytes  28.5 Mbits/sec
    [  4]  2.0- 3.0 sec  2.63 MBytes  22.1 Mbits/sec
    [  4]  3.0- 4.0 sec  1.10 MBytes  9.23 Mbits/sec
    
    ifconfig
       RX packets:46195 errors:1859 dropped:1 overruns:1859 frame:1859
    
    After this patch
    iperf -s -i 1
    
    [  4] local 10.192.242.153 port 5001 connected with 10.192.242.94 port 49757
    [ ID] Interval       Transfer     Bandwidth
    [  4]  0.0- 1.0 sec  49.8 MBytes   418 Mbits/sec
    [  4]  1.0- 2.0 sec  50.1 MBytes   420 Mbits/sec
    [  4]  2.0- 3.0 sec  47.5 MBytes   399 Mbits/sec
    [  4]  3.0- 4.0 sec  45.9 MBytes   385 Mbits/sec
    [  4]  4.0- 5.0 sec  44.8 MBytes   376 Mbits/sec
    
    ifconfig
       RX packets:2348454 errors:0 dropped:16 overruns:0 frame:0
    Signed-off-by: default avatarFrank Li <Frank.Li@freescale.com>
    Signed-off-by: default avatarFugang Duan <B38611@freescale.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    baa70a5c
fec.h 10.2 KB