diff options
author | Sonic Zhang <sonic.zhang@analog.com> | 2010-05-10 01:39:10 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-05-17 20:20:59 -0400 |
commit | 812a9de71512e5da6f3177f7249a2448b6a4322e (patch) | |
tree | 79977876a33fe917f59561a2cd2cdf770e53fa9f /drivers/net/bfin_mac.c | |
parent | ad2864d88718714d8b347b6209b07abb2ecd3a49 (diff) |
netdev: bfin_mac: clear RXCKS if hardware generated checksum is not enabled
Otherwise we might be get a setting mismatch from a previous module or
bootloader and what the driver currently expects.
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bfin_mac.c')
-rw-r--r-- | drivers/net/bfin_mac.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/bfin_mac.c b/drivers/net/bfin_mac.c index 9e010d69f34a..5d962b86ee22 100644 --- a/drivers/net/bfin_mac.c +++ b/drivers/net/bfin_mac.c | |||
@@ -515,10 +515,11 @@ void setup_system_regs(struct net_device *dev) | |||
515 | * Configure checksum support and rcve frame word alignment | 515 | * Configure checksum support and rcve frame word alignment |
516 | */ | 516 | */ |
517 | sysctl = bfin_read_EMAC_SYSCTL(); | 517 | sysctl = bfin_read_EMAC_SYSCTL(); |
518 | sysctl |= RXDWA; | ||
518 | #if defined(BFIN_MAC_CSUM_OFFLOAD) | 519 | #if defined(BFIN_MAC_CSUM_OFFLOAD) |
519 | sysctl |= RXDWA | RXCKS; | 520 | sysctl |= RXCKS; |
520 | #else | 521 | #else |
521 | sysctl |= RXDWA; | 522 | sysctl &= ~RXCKS; |
522 | #endif | 523 | #endif |
523 | bfin_write_EMAC_SYSCTL(sysctl); | 524 | bfin_write_EMAC_SYSCTL(sysctl); |
524 | 525 | ||