• Jay Cliburn's avatar
    atl1: fix broken TSO · 9d90fb1a
    Jay Cliburn authored
    The L1 tx packet descriptor expects TCP Header Length to be expressed as a
    number of 32-bit dwords.  The atl1 driver uses tcp_hdrlen() to populate the
    field, but tcp_hdrlen() returns the header length in bytes, not in dwords.
    Add a shift to convert tcp_hdrlen() to dwords when we write it to the tpd.
    
    Also, some of our bit assignments are made to the wrong tpd words.  Change
    those to the correct words.
    
    Finally, since all this fixes TSO, enable TSO by default.
    Signed-off-by: default avatarJay Cliburn <jacliburn@bellsouth.net>
    Acked-by: default avatarChris Snook <csnook@redhat.com>
    Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
    9d90fb1a
atl1.c 92.5 KB