sky2: fix checksum bit management on some chips
authorstephen hemminger <shemminger@vyatta.com>
Wed, 6 Jun 2012 10:01:30 +0000 (10:01 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 7 Jun 2012 20:06:42 +0000 (13:06 -0700)
commit5ff0feac88ced864f44adb145142269196fa79d9
tree444637fa1f505f02888cf89d93ef2226fb5f9f07
parent8bd74516b1bd9308c17f67583134d93f777203ca
sky2: fix checksum bit management on some chips

The newer flavors of Yukon II use a different method for receive
checksum offload. This is indicated in the driver by the SKY2_HW_NEW_LE
flag. On these newer chips, the BMU_ENA_RX_CHKSUM should not be set.

The driver would get incorrectly toggle the bit, enabling the old
checksum logic on these chips and cause a BUG_ON() assertion. If
receive checksum was toggled via ethtool.

Reported-by: Kirill Smelkov <kirr@mns.spb.ru>
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/marvell/sky2.c