• Horatiu Vultur's avatar
    net: lan966x: Add FDMA functionality · c8349639
    Horatiu Vultur authored
    Ethernet frames can be extracted or injected to or from the device's
    DDR memory. There is one channel for injection and one channel for
    extraction. Each of these channels contain a linked list of DCBs which
    contains DB. The DCB contains only 1 DB for both the injection and
    extraction. Each DB contains a frame. Every time when a frame is received
    or transmitted an interrupt is generated.
    
    It is not possible to use both the FDMA and the manual
    injection/extraction of the frames. Therefore the FDMA has priority over
    the manual because of better performance values.
    
    FDMA:
    iperf -c 192.168.1.1
    [  5]   0.00-10.02  sec   420 MBytes   352 Mbits/sec    0 sender
    [  5]   0.00-10.03  sec   420 MBytes   351 Mbits/sec      receiver
    
    iperf -c 192.168.1.1 -R
    [  5]   0.00-10.01  sec   528 MBytes   442 Mbits/sec    0 sender
    [  5]   0.00-10.00  sec   524 MBytes   440 Mbits/sec      receiver
    
    Manual:
    iperf -c 192.168.1.1
    [  5]   0.00-10.02  sec  93.8 MBytes  78.5 Mbits/sec    0 sender
    [  5]   0.00-10.03  sec  93.8 MBytes  78.4 Mbits/sec      receiver
    
    ipers -c 192.168.1.1 -R
    [  5]   0.00-10.03  sec   121 MBytes   101 Mbits/sec    0 sender
    [  5]   0.00-10.01  sec   118 MBytes  99.0 Mbits/sec      receiver
    Signed-off-by: default avatarHoratiu Vultur <horatiu.vultur@microchip.com>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    c8349639
lan966x_main.c 29.4 KB