atl1e: fix broken multicast by removing unnecessary crc inversion

Inverting the crc after calling ether_crc_le() is unnecessary and breaks
multicast. Remove it.

Tested-by: David Madore <david.madore@ens.fr>
Signed-off-by: Jay Cliburn <jcliburn@gmail.com>
Cc: stable@kernel.org
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

authored by J. K. Cliburn and committed by Jeff Garzik 7ee0fddf 81183059

-4
-4
drivers/net/atl1e/atl1e_hw.c
··· 163 * atl1e_hash_mc_addr 164 * purpose 165 * set hash value for a multicast address 166 - * hash calcu processing : 167 - * 1. calcu 32bit CRC for multicast address 168 - * 2. reverse crc with MSB to LSB 169 */ 170 u32 atl1e_hash_mc_addr(struct atl1e_hw *hw, u8 *mc_addr) 171 { ··· 171 int i; 172 173 crc32 = ether_crc_le(6, mc_addr); 174 - crc32 = ~crc32; 175 for (i = 0; i < 32; i++) 176 value |= (((crc32 >> i) & 1) << (31 - i)); 177
··· 163 * atl1e_hash_mc_addr 164 * purpose 165 * set hash value for a multicast address 166 */ 167 u32 atl1e_hash_mc_addr(struct atl1e_hw *hw, u8 *mc_addr) 168 { ··· 174 int i; 175 176 crc32 = ether_crc_le(6, mc_addr); 177 for (i = 0; i < 32; i++) 178 value |= (((crc32 >> i) & 1) << (31 - i)); 179