• Marcin Wojtas's avatar
    net: mvneta: fix operation for 64K PAGE_SIZE · e735fd55
    Marcin Wojtas authored
    Recent changes in the mvneta driver reworked allocation
    and handling of the ingress buffers to use entire pages.
    Apart from that in SW BM scenario the HW must be informed
    via PRXDQS about the biggest possible incoming buffer
    that can be propagated by RX descriptors.
    
    The BufferSize field was filled according to the MTU-dependent
    pkt_size value. Later change to PAGE_SIZE broke RX operation
    when usin 64K pages, as the field is simply too small.
    
    This patch conditionally limits the value passed to the BufferSize
    of the PRXDQS register, depending on the PAGE_SIZE used.
    On the occasion remove now unused frag_size field of the mvneta_port
    structure.
    
    Fixes: 562e2f46 ("net: mvneta: Improve the buffer allocation method for SWBM")
    Signed-off-by: default avatarMarcin Wojtas <mw@semihalf.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    e735fd55
mvneta.c 132 KB