• Harini Katakam's avatar
    net: macb: Limit maximum GEM TX length in TSO · 62e5f512
    Harini Katakam authored
    [ Upstream commit f822e9c4 ]
    
    GEM_MAX_TX_LEN currently resolves to 0x3FF8 for any IP version supporting
    TSO with full 14bits of length field in payload descriptor. But an IP
    errata causes false amba_error (bit 6 of ISR) when length in payload
    descriptors is specified above 16387. The error occurs because the DMA
    falsely concludes that there is not enough space in SRAM for incoming
    payload. These errors were observed continuously under stress of large
    packets using iperf on a version where SRAM was 16K for each queue. This
    errata will be documented shortly and affects all versions since TSO
    functionality was added. Hence limit the max length to 0x3FC0 (rounded).
    Signed-off-by: default avatarHarini Katakam <harini.katakam@xilinx.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    62e5f512
macb_main.c 109 KB