projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
8118305
)
atl1e: fix broken multicast by removing unnecessary crc inversion
author
J. K. Cliburn
<
[email protected]
>
Tue, 11 Nov 2008 22:21:48 +0000
(16:21 -0600)
committer
Jeff Garzik
<
[email protected]
>
Fri, 14 Nov 2008 23:18:55 +0000
(18:18 -0500)
Inverting the crc after calling ether_crc_le() is unnecessary and breaks
multicast. Remove it.
Tested-by: David Madore <
[email protected]
>
Signed-off-by: Jay Cliburn <
[email protected]
>
Cc:
[email protected]
Signed-off-by: Jeff Garzik <
[email protected]
>
drivers/net/atl1e/atl1e_hw.c
patch
|
blob
|
history
diff --git
a/drivers/net/atl1e/atl1e_hw.c
b/drivers/net/atl1e/atl1e_hw.c
index 8cbc1b59bd6287303c6fe179eb5af6084cad5de7..4a7700620119686c741b6ac454b4cfa1b346133e 100644
(file)
--- a/
drivers/net/atl1e/atl1e_hw.c
+++ b/
drivers/net/atl1e/atl1e_hw.c
@@
-163,9
+163,6
@@
int atl1e_read_mac_addr(struct atl1e_hw *hw)
* atl1e_hash_mc_addr
* purpose
* set hash value for a multicast address
- * hash calcu processing :
- * 1. calcu 32bit CRC for multicast address
- * 2. reverse crc with MSB to LSB
*/
u32 atl1e_hash_mc_addr(struct atl1e_hw *hw, u8 *mc_addr)
{
@@
-174,7
+171,6
@@
u32 atl1e_hash_mc_addr(struct atl1e_hw *hw, u8 *mc_addr)
int i;
crc32 = ether_crc_le(6, mc_addr);
- crc32 = ~crc32;
for (i = 0; i < 32; i++)
value |= (((crc32 >> i) & 1) << (31 - i));