diff --git a/drivers/net/mv643xx_eth.c b/drivers/net/mv643xx_eth.c
index e2aa468d40f13170909b3f4b039ad770660c43a5..8c6979a26d619dba66c90dd49ab0d7923aa9092b 100644
--- a/drivers/net/mv643xx_eth.c
+++ b/drivers/net/mv643xx_eth.c
@@ -1596,7 +1596,7 @@ oom:
 			entry = addr_crc(a);
 		}
 
-		table[entry >> 2] |= 1 << (entry & 3);
+		table[entry >> 2] |= 1 << (8 * (entry & 3));
 	}
 
 	for (i = 0; i < 0x100; i += 4) {